[PATCH] PowerPC: dynamic tick support

Sergei Shtylyov sshtylyov at ru.mvista.com
Thu Nov 9 07:37:28 EST 2006


Add dynamic tick support for PowerPC.

Signed-off-by: Sergei Shtylyov <sshtylyov at ru.mvista.com>

---
This patch is reworked against 2.6.18-hrt-dyntick2 patchset.

Known issues:
1) with 2.6.18-hrt-dyntick2, dynamic tick mode causes bootup slowdown after the
    HRT mode is entered (it seems to return to normal shortly);
2) with 2.6.18-rt7 (plus an extra patch to make it actually working :-) in the
   kernel preemption mode other than RT, that slowdown seems permanent (this
   was not happening with 2.6.18-rt6).

I don't have time to investigate now, so anybody interested is welcome to...
or I may even return to this if/when the time permits. :-)

 arch/powerpc/kernel/idle.c |    4 ++++
 1 files changed, 4 insertions(+)

Index: linux-2.6/arch/powerpc/kernel/idle.c
===================================================================
--- linux-2.6.orig/arch/powerpc/kernel/idle.c
+++ linux-2.6/arch/powerpc/kernel/idle.c
@@ -49,6 +49,8 @@ void cpu_idle(void)
 
 	set_thread_flag(TIF_POLLING_NRFLAG);
 	while (1) {
+		hrtimer_stop_sched_tick();
+
 		while (!need_resched() && !cpu_should_die()) {
 			ppc64_runlatch_off();
 
@@ -82,6 +84,8 @@ void cpu_idle(void)
 		ppc64_runlatch_on();
 		if (cpu_should_die())
 			cpu_die();
+
+		hrtimer_restart_sched_tick();
 		preempt_enable_no_resched();
 		schedule();
 		preempt_disable();




More information about the Linuxppc-dev mailing list