diff options
author | Heiko Carstens <heiko.carstens@de.ibm.com> | 2010-10-29 10:50:37 -0400 |
---|---|---|
committer | Martin Schwidefsky <sky@mschwide.boeblingen.de.ibm.com> | 2010-10-29 10:50:49 -0400 |
commit | 8d11e0218321fccc6912c4dcfbaf2095bad5d33a (patch) | |
tree | 6c26fd32b731c22027ed325d353fdd49ef34eaff /arch/s390 | |
parent | db81a23d8003d1ca4452c6d728502780f0234368 (diff) |
[S390] topology: add SCHED_MC config option
This allows us to easily check for performance differences seen with
!CONFIG_SCHED_MC and topology=off.
Actually there shouldn't be any (besides a small overhead because of
additional code).
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'arch/s390')
-rw-r--r-- | arch/s390/Kconfig | 11 | ||||
-rw-r--r-- | arch/s390/kernel/sysinfo.c | 2 |
2 files changed, 12 insertions, 1 deletions
diff --git a/arch/s390/Kconfig b/arch/s390/Kconfig index 97146ab157e6..45a9bed4a3fb 100644 --- a/arch/s390/Kconfig +++ b/arch/s390/Kconfig | |||
@@ -196,9 +196,18 @@ config HOTPLUG_CPU | |||
196 | can be controlled through /sys/devices/system/cpu/cpu#. | 196 | can be controlled through /sys/devices/system/cpu/cpu#. |
197 | Say N if you want to disable CPU hotplug. | 197 | Say N if you want to disable CPU hotplug. |
198 | 198 | ||
199 | config SCHED_MC | ||
200 | def_bool y | ||
201 | prompt "Multi-core scheduler support" | ||
202 | depends on SMP | ||
203 | help | ||
204 | Multi-core scheduler support improves the CPU scheduler's decision | ||
205 | making when dealing with multi-core CPU chips at a cost of slightly | ||
206 | increased overhead in some places. | ||
207 | |||
199 | config SCHED_BOOK | 208 | config SCHED_BOOK |
200 | bool "Book scheduler support" | 209 | bool "Book scheduler support" |
201 | depends on SMP | 210 | depends on SMP && SCHED_MC |
202 | help | 211 | help |
203 | Book scheduler support improves the CPU scheduler's decision making | 212 | Book scheduler support improves the CPU scheduler's decision making |
204 | when dealing with machines that have several books. | 213 | when dealing with machines that have several books. |
diff --git a/arch/s390/kernel/sysinfo.c b/arch/s390/kernel/sysinfo.c index f04d93aa48ec..5c9e439bf3f6 100644 --- a/arch/s390/kernel/sysinfo.c +++ b/arch/s390/kernel/sysinfo.c | |||
@@ -106,11 +106,13 @@ static int stsi_15_1_x(struct sysinfo_15_1_x *info, char *page, int len) | |||
106 | for (i = 0; i < TOPOLOGY_NR_MAG; i++) | 106 | for (i = 0; i < TOPOLOGY_NR_MAG; i++) |
107 | len += sprintf(page + len, " %d", info->mag[i]); | 107 | len += sprintf(page + len, " %d", info->mag[i]); |
108 | len += sprintf(page + len, "\n"); | 108 | len += sprintf(page + len, "\n"); |
109 | #ifdef CONFIG_SCHED_MC | ||
109 | store_topology(info); | 110 | store_topology(info); |
110 | len += sprintf(page + len, "CPU Topology SW: "); | 111 | len += sprintf(page + len, "CPU Topology SW: "); |
111 | for (i = 0; i < TOPOLOGY_NR_MAG; i++) | 112 | for (i = 0; i < TOPOLOGY_NR_MAG; i++) |
112 | len += sprintf(page + len, " %d", info->mag[i]); | 113 | len += sprintf(page + len, " %d", info->mag[i]); |
113 | len += sprintf(page + len, "\n"); | 114 | len += sprintf(page + len, "\n"); |
115 | #endif | ||
114 | return len; | 116 | return len; |
115 | } | 117 | } |
116 | 118 | ||