Re: processes hung after sys_renameat, and 'missing' processes

From: Linus Torvalds
Date: Thu Jun 07 2012 - 11:30:27 EST


On Thu, Jun 7, 2012 at 3:26 AM, Peter Zijlstra <peterz@xxxxxxxxxxxxx> 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
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/