diff options
author | Anton Blanchard <anton@samba.org> | 2006-09-22 06:30:14 -0400 |
---|---|---|
committer | Paul Mackerras <paulus@samba.org> | 2006-09-26 01:24:34 -0400 |
commit | 0ddd3e7d07d6adc4e905ee869a85db5184a02c17 (patch) | |
tree | 9dbab98d6aa3093cd24e8ed331559444e230c32a /arch/powerpc/kernel | |
parent | e12514650b167f48e952d50315fd492d01d42988 (diff) |
[POWERPC] Always call cede in pseries dedicated idle loop
The smt_snooze_delay logic changed a bit when the idle loops were
consolidated. A value of 0 used to mean we always polled, now it means
we always sleep. Instead of restoring the old behaviour, lets put a
reasonable default in smt_snooze_delay. This means we spin for a bit
(in case an external interrupt comes in) and then sleep.
Also the pseries dedicated idle loop currently does not cede both
threads in an SMT pair. The hypervisor wants us to call in so it can
power manage, so lets do that.
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'arch/powerpc/kernel')
-rw-r--r-- | arch/powerpc/kernel/sysfs.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/powerpc/kernel/sysfs.c b/arch/powerpc/kernel/sysfs.c index 406f308ddead..d45a168bdaca 100644 --- a/arch/powerpc/kernel/sysfs.c +++ b/arch/powerpc/kernel/sysfs.c | |||
@@ -25,8 +25,8 @@ static DEFINE_PER_CPU(struct cpu, cpu_devices); | |||
25 | /* SMT stuff */ | 25 | /* SMT stuff */ |
26 | 26 | ||
27 | #ifdef CONFIG_PPC_MULTIPLATFORM | 27 | #ifdef CONFIG_PPC_MULTIPLATFORM |
28 | /* default to snooze disabled */ | 28 | /* Time in microseconds we delay before sleeping in the idle loop */ |
29 | DEFINE_PER_CPU(unsigned long, smt_snooze_delay); | 29 | DEFINE_PER_CPU(unsigned long, smt_snooze_delay) = { 100 }; |
30 | 30 | ||
31 | static ssize_t store_smt_snooze_delay(struct sys_device *dev, const char *buf, | 31 | static ssize_t store_smt_snooze_delay(struct sys_device *dev, const char *buf, |
32 | size_t count) | 32 | size_t count) |