Re: 2.6.18-rc5-mm1 + all hotfixes -- INFO: possible recursivelocking detected

From: Arjan van de Ven
Date: Wed Sep 06 2006 - 02:37:12 EST


On Tue, 2006-09-05 at 10:37 -0700, Miles Lane wrote:
> ieee1394: Node changed: 0-01:1023 -> 0-00:1023
> ieee1394: Node changed: 0-02:1023 -> 0-01:1023
> ieee1394: Node suspended: ID:BUS[0-00:1023] GUID[0080880002103eae]
>
> =============================================
> [ INFO: possible recursive locking detected ]
> 2.6.18-rc5-mm1 #2
> ---------------------------------------------
> knodemgrd_0/2321 is trying to acquire lock:
> (&s->rwsem){----}, at: [<f8958897>] nodemgr_probe_ne+0x311/0x38d [ieee1394]
>
> but task is already holding lock:
> (&s->rwsem){----}, at: [<f8959078>] nodemgr_host_thread+0x717/0x883 [ieee1394]


looks like a real bug to me:

nodemgr_node_probe() takes down_read(&class->subsys.rwsem) and then
calls nodemgr_probe_ne() which calls nodemgr_update_pdrv() which does
down_read(&class->subsys.rwsem).

Such recursive taking of rwsems is not allowed (rwsems are fair, if a
write comes in in between then there is a deadlock).


-
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/