lkml.org 
[lkml]   [2013]   [Aug]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: [PATCH v2] cpuidle: coupled: abort idle if pokes are pending
Date
On Wednesday, August 28, 2013 06:41:47 PM Colin Cross wrote:
> Joseph Lo <josephl@nvidia.com> reported a lockup on Tegra20 caused
> by a race condition in coupled cpuidle. When two or more cpus
> enter idle at the same time, the first cpus to arrive may go to the
> ready loop without processing pending pokes from the last cpu to
> arrive.
>
> This patch adds a check for pending pokes once all cpus have been
> synchronized in the ready loop and resets the coupled state and
> retries if any cpus failed to handle their pending poke.
>
> Retrying on all cpus may trigger the same issue again, so this patch
> also adds a check to ensure that each cpu has received at least one
> poke between when it enters the waiting loop and when it moves on to
> the ready loop.
>
> Reported-by: Joseph Lo <josephl@nvidia.com>
> Tested-by: Stephen Warren <swarren@nvidia.com>
> Tested-by: Joseph Lo <josephl@nvidia.com>
> Signed-off-by: Colin Cross <ccross@android.com>

Still stable material I suppose?

Queued up for 3.12, thanks!

--
I speak only for myself.
Rafael J. Wysocki, Intel Open Source Technology Center.


\
 
 \ /
  Last update: 2013-08-29 23:01    [W:0.042 / U:0.124 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site