See http://marc.info/?l=linux-kernel&m=124211522525625&w=2.That is about some real bug in the official kernel. I am almost 100%
thanks.
2009/5/23 Ben Greear <greearb@xxxxxxxxxxxxxxx>:
Hello!
I'm trying to debug an apparent deadlock in some code I'm
writing.
When I do a sysrq 'd', I get a nice dump of locks (I have lockdep enabled).
However, the output appears to show multiple processes holding the
same locks (rtnl_mutex, for example):
Showing all locks held in the system:
3 locks held by events/11/63:
#0: (events){--..}, at: [<ffffffff8104f71e>] run_workqueue+0xb1/0x216
#1: ((linkwatch_work).work){--..}, at: [<ffffffff8104f71e>]
run_workqueue+0xb1/0x216
#2: (rtnl_mutex){--..}, at: [<ffffffff8125def1>] rtnl_lock+0x12/0x14
1 lock held by irqbalance/3360:
#0: (rtnl_mutex){--..}, at: [<ffffffff8125def1>] rtnl_lock+0x12/0x14
1 lock held by hald/3605:
#0: (rtnl_mutex){--..}, at: [<ffffffff8125def1>] rtnl_lock+0x12/0x14
...
Is this merely showing processes that are blocked on trying to acquire these
locks?
If so, is there any way to tell which processes have fully acquired locks
v/s
just waiting to acquire them?
Thanks,
Ben