[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CAMbhsRTnMKMVXBav+FwJxw3+Ochk-wfs8WU3oWAExzYMfm4RRw@mail.gmail.com>
Date: Thu, 29 Aug 2013 14:23:10 -0700
From: Colin Cross <ccross@...roid.com>
To: "Rafael J. Wysocki" <rjw@...k.pl>
Cc: Linux PM list <linux-pm@...r.kernel.org>,
lkml <linux-kernel@...r.kernel.org>,
Neil Zhang <zhangwm@...vell.com>,
Joseph Lo <josephl@...dia.com>,
linux-tegra <linux-tegra@...r.kernel.org>,
Santosh Shilimkar <santosh.shilimkar@...com>,
Jon Medhurst <tixy@...aro.org>,
Sivaram Nair <sivaramn@...dia.com>
Subject: Re: [PATCH v2] cpuidle: coupled: abort idle if pokes are pending
On Thu, Aug 29, 2013 at 1:28 PM, Rafael J. Wysocki <rjw@...k.pl> wrote:
> On Wednesday, August 28, 2013 06:41:47 PM Colin Cross wrote:
>> Joseph Lo <josephl@...dia.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@...dia.com>
>> Tested-by: Stephen Warren <swarren@...dia.com>
>> Tested-by: Joseph Lo <josephl@...dia.com>
>> Signed-off-by: Colin Cross <ccross@...roid.com>
>
> Still stable material I suppose?
Yes please
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists