Subject: Re: [PATCH] PowerPC: dynamic tick support

From: Sergei Shtylyov <[email-masked]>
Date: Sat, 17 Mar 2007 01:09:31 +0300

Hello, I wrote:

> Add dynamic tick support for PowerPC.

[...]

> 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...

    ... but I should have done it. :-/

> or I may even return to this if/when the time permits. :-)

    Looks like that was caused by that missing !need_resched_delayed() below. 
So, should be fixed with the latest 2.6.21-rc3-rt0 patch...

>  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();
>