Thread (5 messages) 5 messages, 3 authors, 2013-08-19

Re: 3.11-rc6 genetlink locking fix offends lockdep

From: Johannes Berg <johannes@sipsolutions.net>
Date: 2013-08-19 11:23:06
Also in: lkml, stable

On Mon, 2013-08-19 at 19:00 +0800, Ding Tianhong wrote:
On 2013/8/19 16:00, Johannes Berg wrote:
quoted
quoted
3.11-rc6's commit 58ad436fcf49 ("genetlink: fix family dump race")
gives me the lockdep trace below at startup.
Hmm. Yes, I see now how this happens, not sure why I didn't run into it.

The problem is that genl_family_rcv_msg() is called with the genl_lock
held, and then calls netlink_dump_start() with it held, creating a
genl_lock->cb_mutex dependency, but obviously the dump continuation is
the other way around.

We could use the semaphore instead, I believe, but I don't really
understand the mutex vs. semaphore well enough to be sure that's
correct.

johannes
it is useless, the logic need to modify or otherwise it will still call lockdep trace.
I don't believe so, the semaphore and cb_mutex don't have a dependency
yet, afaict.
maybe i could send a patch for it, if you wish.
What do you mean?

johannes
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help