Messages in this thread | | | From | Linus Torvalds <> | Date | Thu, 7 Jun 2012 08:30:10 -0700 | Subject | Re: processes hung after sys_renameat, and 'missing' processes |
| |
On Thu, Jun 7, 2012 at 3:26 AM, Peter Zijlstra <peterz@infradead.org> wrote: > On Wed, 2012-06-06 at 16:31 -0700, Linus Torvalds wrote: >> PeterZ - the fact that we use mutex_lock_nested with >> I_MUTEX_PARENT/I_MUTEX_CHILD/nothing hopefully doesn't screw us up in >> case we get it wrong, right? > > Sadly, if you get that annotation wrong you can annotate an actual > deadlock away. This the reason you have to be very careful when > annotating stuff.
Is that true even if you can see an actual deadlock on the lock *instances*?
The point of the locking classes (to me) was always that you could see the deadlock even if it didn't *actually* happen, just *potentially* happened. If the lock classes then mean that that hides an actual deadlock information, that's a big downside.
And yeah, that really means that we absolutely *have* to get the instance data in the lock debug printout, since we can't see deadlocks any other way. Can you check the compile error that Dave reported for your patch, because right now Dave is running without it, afaik, due to your lock-instance patch not really working in practice.
Linus
| |