usbip: possible recursive locking detected

Németh Márton nm127 at freemail.hu
Tue Jan 26 21:51:22 UTC 2010


Hi,

I was playing with the usbip found in Linux kernel 2.6.33-rc4. I did the following
steps:

1. modprobe usbip
2. connected a Labtec Webcam 2200 (093a:2626) to the computer
3. usbip_bind_driver --usbip 2-1

Then I get the INFO message in dmesg:

[11776.407429] usbip_common_mod: module is from the staging directory, the quality is unknown, you have been warned.
[11776.460240] usbip_common_mod: usbip common driver1.0
[11776.569525] usbip: module is from the staging directory, the quality is unknown, you have been warned.
[11776.603464] usbcore: registered new interface driver usbip
[11776.603478] usbip:Stub Driver for USB/IP:1.0
[11789.457460] usb 2-1: new full speed USB device using uhci_hcd and address 3
[11789.786099] usbip 2-1:1.0: this device 2-1 is not in match_busid table. skip!
[11789.855728] usbip 2-1:1.1: this device 2-1 is not in match_busid table. skip!
[11789.866540] usbip 2-1:1.2: this device 2-1 is not in match_busid table. skip!
[11791.179186] usbcore: registered new interface driver snd-usb-audio
[11812.306370]
[11812.306380] =============================================
[11812.306396] [ INFO: possible recursive locking detected ]
[11812.306408] 2.6.33-rc4 #1
[11812.306415] ---------------------------------------------
[11812.306424] usbip_bind_driv/4495 is trying to acquire lock:
[11812.306434]  (s_active){++++.+}, at: [<c0330cca>] sysfs_hash_and_remove+0x8a/0xe0
[11812.306468]
[11812.306471] but task is already holding lock:
[11812.306479]  (s_active){++++.+}, at: [<c03352b2>] sysfs_get_active_two+0x32/0xd0
[11812.306502]
[11812.306505] other info that might help us debug this:
[11812.306515] 3 locks held by usbip_bind_driv/4495:
[11812.306523]  #0:  (&buffer->mutex){+.+.+.}, at: [<c0331f31>] sysfs_write_file+0x31/0x220
[11812.306549]  #1:  (s_active){++++.+}, at: [<c03352b2>] sysfs_get_active_two+0x32/0xd0
[11812.306575]  #2:  (s_active){++++.+}, at: [<c03352d9>] sysfs_get_active_two+0x59/0xd0
[11812.306600]
[11812.306602] stack backtrace:
[11812.306614] Pid: 4495, comm: usbip_bind_driv Tainted: G         C 2.6.33-rc4 #1
[11812.306623] Call Trace:
[11812.306640]  [<c0647cd8>] ? printk+0x34/0x54
[11812.306657]  [<c01bde77>] validate_chain+0x1dc7/0x1e40
[11812.306673]  [<c01be224>] ? __lock_acquire+0x334/0x15a0
[11812.306690]  [<c016af94>] ? __do_softirq+0x204/0x470
[11812.306704]  [<c01b98bb>] ? mark_held_locks+0x9b/0xe0
[11812.306718]  [<c01be224>] __lock_acquire+0x334/0x15a0
[11812.306732]  [<c01ba0f7>] ? trace_hardirqs_on+0x27/0x40
[11812.306746]  [<c01bf55a>] lock_acquire+0xca/0x220
[11812.306762]  [<c0330cca>] ? sysfs_hash_and_remove+0x8a/0xe0
[11812.306778]  [<c0334c8f>] sysfs_addrm_finish+0x15f/0x270
[11812.306793]  [<c0330cca>] ? sysfs_hash_and_remove+0x8a/0xe0
[11812.306811]  [<c0330cca>] sysfs_hash_and_remove+0x8a/0xe0
[11812.306828]  [<c033574d>] sysfs_remove_link+0x1d/0x50
[11812.306844]  [<c0507687>] __device_release_driver+0x47/0x1a0
[11812.306860]  [<c050798c>] device_release_driver+0x3c/0x70
[11812.306882]  [<c05068b2>] driver_unbind+0x102/0x150
[11812.306896]  [<c05067b0>] ? driver_unbind+0x0/0x150
[11812.306910]  [<c0505047>] drv_attr_store+0x47/0x70
[11812.306926]  [<c0332019>] sysfs_write_file+0x119/0x220
[11812.306942]  [<c0331f00>] ? sysfs_write_file+0x0/0x220
[11812.306959]  [<c02a239b>] vfs_write+0xbb/0x260
[11812.306974]  [<c02a26a7>] sys_write+0x67/0xd0
[11812.306989]  [<c010484c>] sysenter_do_call+0x12/0x32
[11812.460193] usbip 2-1:1.0: USB/IP Stub: register a new interface (bus 2 dev 3 ifn 0)
[11812.483207] usbip 2-1:1.1: USB/IP Stub: register a new interface (bus 2 dev 3 ifn 1)
[11812.507105] usbip 2-1:1.2: USB/IP Stub: register a new interface (bus 2 dev 3 ifn 2)

Regards,

	Márton Németh



More information about the devel mailing list