Re: stable? - sched, idle: Fix the idle polling state logic

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Nov 19, 2013 at 08:13:35AM +0100, Mike Galbraith wrote:
> Hi Peter,
> 
> 3.12 escaped without this regression being fixed, nor does the fix have
> a stable tag.  Suspecting it may have just fallen through a crack...

Indeed, looks like a stable candidate, thanks for keeping track.

> core2 boxen still have post mwait_idle() removal regressions (rainy day
> job, started digging, rain went missing), but more modern westmere box
> likes this fix quite a lot.

What idle function does the core2 use? Something like:

  perf record -a sleep 1; perf report

Should show you the idle function on top if ran on a mostly idle system.
I would be expecting mwait_idle_with_hints() for core2. And I think I've
covered all paths to it with the right magic, but how knows, these acpi
people never reacted to any of these patches.

> From: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
> Date: Wed, 11 Sep 2013 12:43:13 +0200
> Subject: sched, idle: Fix the idle polling state logic
> 
> Commit ea8117478918a4734586d35ff530721b682425be upstream
> 
> Mike reported that commit 7d1a9417 ("x86: Use generic idle loop")
> regressed several workloads and caused excessive reschedule
> interrupts.
> 
> The patch in question failed to notice that the x86 code had an
> inverted sense of the polling state versus the new generic code (x86:
> default polling, generic: default !polling).
> 
> Fix the two prominent x86 mwait based idle drivers and introduce a few
> new generic polling helpers (fixing the wrong smp_mb__after_clear_bit
> usage).
> 
> (Mike: dropped need_resched() -> tif_need_resched() for @stable)
> 
> Reported-by: Mike Galbraith <bitbucket@xxxxxxxxx>
> Signed-off-by: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
> Cc: lenb@xxxxxxxxxx
> Cc: tglx@xxxxxxxxxxxxx
> Cc: stable@xxxxxxxxxxxxxxx # 3.10+
> Link: http://lkml.kernel.org/n/tip-nc03imb0etuefmzybzj7sprf@xxxxxxxxxxxxxx
> Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>
--
To unsubscribe from this list: send the line "unsubscribe stable" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]