On Sun, May 30, Vojtech Pavlik wrote:

> On Sun, May 30, 2004 at 02:52:27PM -0400, Alan Stern wrote:
> > On Sun, 30 May 2004, Vojtech Pavlik wrote:
> > 
> > > Okay, so can we all agree on this one?
> > 
> > I don't know if it's really needed, but for consistency you might want to 
> > make a similar change around the call to usb_stor_Bulk_transport() near 
> > the start of isd200_invoke_transport() in isd200.c.
> > 
> > Apart from that minor point, this looks okay to me.
> 
> Ok, so here goes the final version. Greg, please apply.
> 
> -- 
> Vojtech Pavlik
> SuSE Labs, SuSE CR

> [EMAIL PROTECTED], 2004-05-30 22:43:21+02:00, [EMAIL PROTECTED]
>   usb: Based on a 2.4 patch from [EMAIL PROTECTED], this patch
>        serializes usb storage and usbfs operation, so that usbfs
>        cannot disturb storage by seemingly harmless control reads.
>   
>   Signed-off-by: Vojtech Pavlik <[EMAIL PROTECTED]>
>   
> 
>  transport.c |   11 +++++++++++
>  isd200.c    |    4 ++++
>  2 files changed, 15 insertions(+)

This patch causes deadlocks if you unplug and replug an usb-storage
device.
Can someone please have a look at this?



khubd         D 00000000     0    19      1            32     3 (L-TLB)
Call trace:
 [<c000a748>] __switch_to+0x48/0x70
 [<c02bbb10>] schedule+0x19c/0x5bc
 [<c02bc1b0>] wait_for_completion+0x7c/0xec
 [<d226cda0>] scsi_wait_req+0x70/0xb8 [scsi_mod]
 [<d226d838>] scsi_probe_and_add_lun+0x138/0xa68 [scsi_mod]
 [<d226e354>] scsi_scan_target+0x74/0x468 [scsi_mod]
 [<d226e7c4>] scsi_scan_channel+0x7c/0x9c [scsi_mod]
 [<d226e8bc>] scsi_scan_host_selected+0xd8/0x17c [scsi_mod]
 [<d223e950>] storage_probe+0x5b4/0x940 [usb_storage]
 [<c0205f40>] usb_probe_interface+0x70/0x90
 [<c0190a24>] bus_match+0x50/0x94
 [<c0190ac0>] device_attach+0x58/0xd0
 [<c0190c18>] bus_add_device+0x78/0xd8
 [<c018f670>] device_add+0xb0/0x19c
 [<c020cae8>] usb_set_configuration+0x2a0/0x3b0

usb-storage   D 00000000     0 11359      1         11360 10647 (L-TLB)
Call trace:
 [<c000a748>] __switch_to+0x48/0x70
 [<c02bbb10>] schedule+0x19c/0x5bc
 [<c02bb5f4>] __down+0xc0/0x120
 [<d223d08c>] usb_stor_invoke_transport+0x324/0x338 [usb_storage]
 [<d223cae8>] usb_stor_transparent_scsi_command+0x1c/0xbc [usb_storage]
 [<d223eff8>] usb_stor_control_thread+0x1dc/0x258 [usb_storage]
 [<c0009c90>] kernel_thread+0x44/0x60

scsi_eh_1     D 00000000     0 11360      1               11359 (L-TLB)
Call trace:
 [<c000a748>] __switch_to+0x48/0x70
 [<c02bbb10>] schedule+0x19c/0x5bc
 [<c02bc1b0>] wait_for_completion+0x7c/0xec
 [<d223c66c>] command_abort+0x7c/0xf4 [usb_storage]
 [<d226ac78>] scsi_error_handler+0x600/0xe6c [scsi_mod]
 [<c0009c90>] kernel_thread+0x44/0x60

-- 
USB is for mice, FireWire is for men!

sUse lINUX ag, nÃRNBERG

Attachment: usb-dell-patch-4-ul.deadlock.txt.gz
Description: application/gunzip

Reply via email to