Thread (9 messages) flat view 9 messages, 4 authors, 2011-01-13

BUG: spinlock recursion (sys_chdir, user_path_at, do_path_lookup ...)

From: Thomas Gleixner <hidden>
Date: 2011-01-13 11:21:30

On Thu, 13 Jan 2011, Peter Zijlstra wrote:
quoted
On Wed, 2011-01-12 at 23:52 +0100, Thomas Gleixner wrote:
quoted
quoted
@peterz: Why does lockdep ignore the lock recursion in that
         spin_lock_nested() call?
So after some hints on IRC on where to look:

<tglx>         spin_lock(&parent->d_lock);
<tglx>         spin_lock_nested(&dentry->d_lock, DENTRY_D_LOCK_NESTED);
<tglx> if parent == dentry

That won't yell because you explicitly tell lockdep its ok, I know what
I'm doing.

Several lockdep annotations (including this one) allow you to annotate
real bugs away, hence you really need to be sure about things when you
make them.
Yeah, I suspected that, but checking whether the pointers are same
would be nice as it would tell us right away where we fcked up :)
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help