On 2013/3/6 14:22, Tejun Heo wrote: > Hello, Li. > > On Wed, Mar 06, 2013 at 11:28:01AM +0800, Li Zefan wrote: >> cgroup_event_wake() is called with hardirq-safe wqh->lock held, so >> the nested cgrp->event_list_lock should also be hardirq-safe. >> >> Fortunately I don't think the deadlock can happen in real life. >> >> Lockdep never complained, maybe because it never found wqh->lock was >> held in irq context? > > Why should wqh->lock be hard-irq-safe? Is it actually grabbed from > irq context? becase cgroup_event_wake() is a callback to a wait queue, and it's wake_up() that acquires wqh->lock with irq disabled. > Locks which are grabbed with irq disabled aren't > necessarily irq context locks as that doesn't lead to deadlocks. They > need to be actually grabbed from irq context. > > Thanks. > -- To unsubscribe from this list: send the line "unsubscribe cgroups" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html