diff options
author | Heiko Carstens <heiko.carstens@de.ibm.com> | 2010-10-29 16:50:38 +0200 |
---|---|---|
committer | Martin Schwidefsky <sky@mschwide.boeblingen.de.ibm.com> | 2010-10-29 16:50:50 +0200 |
commit | 0b52783d4feb14d6ff990a63512a66d6131d41f9 (patch) | |
tree | 5b10a1f7d105299b49612f0c5076bda3640611b8 | |
parent | 8d11e0218321fccc6912c4dcfbaf2095bad5d33a (diff) | |
download | linux-0b52783d4feb14d6ff990a63512a66d6131d41f9.tar.gz linux-0b52783d4feb14d6ff990a63512a66d6131d41f9.tar.bz2 linux-0b52783d4feb14d6ff990a63512a66d6131d41f9.zip |
[S390] topology: fix cpu masks for topology=off case
Fix cpu masks for 'topology=off' case. Folding of the scheduling domains
happen in such a way that everything belongs to the MC domain instead
of the CPU doimain.
This should fix a performance regression introduced with
eafd2b6d "[S390] topology: use default MC domain initializer" and also
makes sure we have the same behavious as if CONFIG_SCHED_MC was not
selected at all.
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
-rw-r--r-- | arch/s390/kernel/topology.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/arch/s390/kernel/topology.c b/arch/s390/kernel/topology.c index a9dee9048ee5..94b06c31fc8a 100644 --- a/arch/s390/kernel/topology.c +++ b/arch/s390/kernel/topology.c @@ -53,8 +53,10 @@ static cpumask_t cpu_group_map(struct mask_info *info, unsigned int cpu) cpumask_t mask; cpus_clear(mask); - if (!topology_enabled || !MACHINE_HAS_TOPOLOGY) - return cpu_possible_map; + if (!topology_enabled || !MACHINE_HAS_TOPOLOGY) { + cpumask_copy(&mask, cpumask_of(cpu)); + return mask; + } while (info) { if (cpu_isset(cpu, info->mask)) { mask = info->mask; |