[patch 39/46] i386 prepare for dyntick

Thomas Gleixner
2007-01-23T22:05:00Z

[-- Attachment #1: dynticks-i386-support-idle-handler-callbacks.patch --]
[-- Type: text/plain, Size: 1213 bytes --]

From: Ingo Molnar <mingo@elte.hu>

Prepare i386 for dyntick: idle handler callbacks.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: john stultz <johnstul@us.ibm.com>
Cc: Roman Zippel <zippel@linux-m68k.org>
Cc: Andi Kleen <ak@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
---

arch/i386/kernel/process.c | 3 +++
1 file changed, 3 insertions(+)

Index: linux-2.6.20-rc4-mm1-bo/arch/i386/kernel/process.c
===================================================================
--- linux-2.6.20-rc4-mm1-bo.orig/arch/i386/kernel/process.c
+++ linux-2.6.20-rc4-mm1-bo/arch/i386/kernel/process.c
@@ -38,6 +38,7 @@
#include <linux/ptrace.h>
#include <linux/random.h>
#include <linux/personality.h>
+#include <linux/tick.h>

#include <asm/uaccess.h>
#include <asm/pgtable.h>
@@ -211,6 +212,7 @@ void cpu_idle(void)

/* endless idle loop with no priority at all */
while (1) {
+ tick_nohz_stop_sched_tick();
while (!need_resched()) {
void (*idle)(void);

@@ -238,6 +240,7 @@ void cpu_idle(void)
idle();
__exit_idle();
}
+ tick_nohz_restart_sched_tick();
preempt_enable_no_resched();
schedule();
preempt_disable();

--