diff options
author | Vaidyanathan Srinivasan <svaidy@linux.vnet.ibm.com> | 2010-02-08 15:35:55 +0530 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2010-02-16 15:13:59 +0100 |
commit | 28f5318167adf23b16c844b9c2253f355cb21796 (patch) | |
tree | 54ee6c5cb9ec383caba0cd00e8413682634b886f /include/linux/sched.h | |
parent | 50200df462023b187d80a99a52f5f2cfe3c86c26 (diff) |
sched: Fix sched_mv_power_savings for !SMT
Fix for sched_mc_powersavigs for pre-Nehalem platforms.
Child sched domain should clear SD_PREFER_SIBLING if parent will have
SD_POWERSAVINGS_BALANCE because they are contradicting.
Sets the flags correctly based on sched_mc_power_savings.
Signed-off-by: Vaidyanathan Srinivasan <svaidy@linux.vnet.ibm.com>
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
LKML-Reference: <20100208100555.GD2931@dirshya.in.ibm.com>
Cc: stable@kernel.org [2.6.32.x]
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'include/linux/sched.h')
-rw-r--r-- | include/linux/sched.h | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/include/linux/sched.h b/include/linux/sched.h index 78efe7c485a..1f5fa53b46b 100644 --- a/include/linux/sched.h +++ b/include/linux/sched.h @@ -878,7 +878,10 @@ static inline int sd_balance_for_mc_power(void) if (sched_smt_power_savings) return SD_POWERSAVINGS_BALANCE; - return SD_PREFER_SIBLING; + if (!sched_mc_power_savings) + return SD_PREFER_SIBLING; + + return 0; } static inline int sd_balance_for_package_power(void) |