Thread (13 messages) 13 messages, 6 authors, 2009-08-08

Re: [RT] Lockdep warning on boot with 2.6.31-rc5-rt1.1

From: Alan Stern <stern@rowland.harvard.edu>
Date: 2009-08-07 21:30:46
Also in: lkml

On Fri, 7 Aug 2009, Peter Zijlstra wrote:
On Fri, 2009-08-07 at 12:45 -0400, Alan Stern wrote:
quoted
On Fri, 7 Aug 2009, Peter Zijlstra wrote:
quoted
quoted
The other proposal was creating a fixed list of classes and register
each device at a class corresponding to its depth in the tree. I can't
remember what was wrong with that, but I seem to have been persuaded
that that was hard too.
It probably would work for the most part.  However a possible scenario
involves first locking a parent and then locking all its children.  (I
don't know if this ever happens anywhere, but it might.)  This can't
cause a deadlock but it would run into trouble with depth-based
classes.
If you know which parent is locked, we can solve that with
mutex_lock_nest_lock() [ doesn't currently exist, but is analogous to
spin_lock_nest_lock() ] and together with
http://lkml.org/lkml/2009/7/23/222 that would allow you to lock up to
2048 children.
Not only do I know not which parent is locked, I don't even know if 
this ever happens anywhere at all!  My point was purely theoretical.
Would something like that work?
Perhaps -- I don't understand what spin_lock_nest_lock() is supposed to
do.

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