lkml.org 
[lkml]   [2009]   [Aug]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 1/2] pm_qos: remove BKL
On Fri, Aug 07, 2009 at 09:08:18AM -0600, Jonathan Corbet wrote:
> On Fri, 7 Aug 2009 07:54:13 +0200
> Frederic Weisbecker <fweisbec@gmail.com> wrote:
>
> > May be the last doubt could be the blocking_notifier_call_chain() call from
> > update_target(). Not sure if these notifier handlers can expect to be called
> > concurrently?
>
> I will confess that I hadn't audited the notifiers. One could easily
> argue that concurrent calls to update_target() are entirely possible
> with the current code (only one of the callers had BKL protection),
> but, then, I'm supposed to be trying to make things better.
>
> The notifier call chain is already protected against concurrent
> modification, but, since an rwsem is used, concurrent calls to the
> notifiers themselves are possible. A quick grep shows that, in 2.6.31-rc5,
> there is exactly one notifier registered. It's in
> drivers/cpuidle/cpuidle.c; here's the whole thing:
>
> static void smp_callback(void *v)
> {
> /* we already woke the CPU up, nothing more to do */
> }
>
> After deep meditation on possible race condition scenarios, I am force to
> conclude that this particular notifier already has all of the protection it
> needs, and that any extra locking is likely to be superfluous.


Hehe :-)

So it would be nice to apply these patches.
Ingo?


> Thanks for looking at the patch,
>
> jon



\
 
 \ /
  Last update: 2009-08-08 02:33    [W:0.056 / U:0.228 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site