lkml.org 
[lkml]   [2009]   [Sep]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: [PATCH 1/1] introduce __cancel_delayed_work()
Date

> cancel_delayed_work() has to use del_timer_sync() to guarantee the
> timer function is not running after return. But most users doesn't
> actually need this, and del_timer_sync() has problems: it is not
> useable from interrupt, and it depends on every lock which could
> be taken from irq.
>
> Introduce __cancel_delayed_work() which calls del_timer() instead.
>
> The immediate reason for this patch is
> http://bugzilla.kernel.org/show_bug.cgi?id=13757
> but hopefully this helper makes sense anyway.

Thanks, Oleg!

Andrew -- how do you want to handle this? This seems to be useful for
the bug with IB that Oleg linked to, as well as by Dmitry in input, so
I'm not sure what the best way to merge all this into 2.6.32 is.

I could take Oleg's patch and the corresponding fix to
drivers/infiniband through my tree, and merge as early I as I see Linus
open 2.6.32. That leaves Dmitry to wait on it (and possibly causes
problems in -next with tree ordering) though. But I don't see any way
to get the number of cross-tree dependencies below 1... (unless maybe
Dmitry can take the identical workqueue patch into his tree and trust
git to sort it out?)

- R.


\
 
 \ /
  Last update: 2009-09-01 18:11    [W:0.099 / U:0.028 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site