[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1206795055.22530.140.camel@johannes.berg>
Date: Sat, 29 Mar 2008 13:50:55 +0100
From: Johannes Berg <johannes@...solutions.net>
To: Jarek Poplawski <jarkao2@...il.com>
Cc: David Miller <davem@...emloft.net>, davej@...emonkey.org.uk,
netdev@...r.kernel.org
Subject: Re: 2.6.25rc7 lockdep trace
> > When you call cancel_work_sync(), the work struct will be grabbed by the
> > code (really __cancel_work_timer) and removed from the queue. That just
> > operates on bits and a spinlock, not locks held across the struct work
> > function execution, and ensures it is race-free without needing any such
> > locks
>
> ...
>
> > However, as I just tried to explain, cancel_work_sync() _is_ safe to run
> > while holding the RTNL because it doesn't need any runqueue lock.
>
> These issues are so seldom now that I forget these details each time
>
> "after use", so maybe I miss something again, but shouldn't this rather
> read something like this?:
>
> cancel_work_sync() _is_ safe to run while holding the RTNL against
> works which don't take RTNL.
Yes, indeed, I should have said that.
johannes
Download attachment "signature.asc" of type "application/pgp-signature" (829 bytes)
Powered by blists - more mailing lists