Re: [BUG] 2.6.37-rc3 massive interactivity regression on ARM

From: Russell King - ARM Linux
Date: Fri Dec 10 2010 - 11:51:21 EST


On Fri, Dec 10, 2010 at 02:47:46PM +0100, Peter Zijlstra wrote:
>
> Full patch..
>
> ---
> Subject: sched: Fix the irqtime code to deal with u64 wraps
> From: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx>
> Date: Thu Dec 09 14:15:34 CET 2010
>
> ARM systems have a 32bit sched_clock() [ which needs to be fixed ],
> but this exposed a bug in the irq_time code as well, it doesn't deal
> with wraps at all.
>
> Fix the irq_time code to deal with u64 wraps by re-writing the code to
> only use delta increments, which avoids the whole issue.
>
> Furthermore, solve the problem of 32bit arches reading partial updates
> of the u64 time values.
>
> Cc: Venkatesh Pallipadi <venki@xxxxxxxxxx>
> Reported-by: Russell King - ARM Linux <linux@xxxxxxxxxxxxxxxx>

I think credit should go to Mikael Pettersson, who identified the
interactivity regression and problematical commit. I only pointed
out the dubious nature of the code.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/