There's more to analyize, but on first inspection that babble looks bad.

We submitted a single URB with a 128 byte buffer.  We received 64 bytes.  I
don't think a babble is actually possible here....

So something has gone bad at a lower level....

Matt

On Sun, Sep 21, 2003 at 06:41:43PM -0700, Linus Torvalds wrote:
> 
> I have a nice USB-2-capable compact flash reader that works perfectly on 
> my EHCI system, and that I've also verified some time ago on an UHCI setup 
> (but hey, the UHCI part could have rotted over time).
> 
> However, on a HP laptop I have with an ALI southbridge, the USB subsystem 
> dies badly whenever I insert the card reader.
> 
> It looks like usb-storage, scsi_eh_0 and khubd are all dead. khubd is 
> waiting for the completion of the SCSI "check_disk_change()" call, which 
> never completes.
> 
> The following is the output of the USB initialization, USB storage (with 
> debug on - the only event is the insertion of the device), and the 
> backtrace of the hung processes.
> 
> Ideas? Anything that stands out except for the "babble" thing?
> 
>               Linus
> 
> ----
> ohci-hcd: 2003 Feb 24 USB 1.1 'Open' Host Controller (OHCI) Driver (PCI)
> ohci-hcd: block sizes: ed 64 td 64
> ohci-hcd 0000:00:02.0: OHCI Host Controller
> ohci-hcd 0000:00:02.0: irq 10, pci mem e183d000
> ohci-hcd 0000:00:02.0: new USB bus registered, assigned bus number 1
> 
> hub 1-0:0: USB hub found
> hub 1-0:0: 3 ports detected
> ohci-hcd 0000:00:0f.0: OHCI Host Controller
> ohci-hcd 0000:00:0f.0: irq 10, pci mem e183f000
> ohci-hcd 0000:00:0f.0: new USB bus registered, assigned bus number 2
> hub 2-0:0: USB hub found
> hub 2-0:0: 3 ports detected
> drivers/usb/core/usb.c: registered new driver usblp
> drivers/usb/class/usblp.c: v0.13: USB Printer Device Class driver
> Initializing USB Mass Storage driver...
> drivers/usb/core/usb.c: registered new driver usb-storage
> USB Mass Storage support registered.
> drivers/usb/core/usb.c: registered new driver hid
> drivers/usb/input/hid-core.c: v2.0:USB HID core driver
> 
> hub 2-0:0: new USB device on port 1, assigned address 2
> usb-storage: USB Mass Storage device detected
> usb-storage: act_altsetting is 0, id_index is 76
> usb-storage: -- associate_dev
> usb-storage: Transport: Bulk
> usb-storage: Protocol: Transparent SCSI
> usb-storage: Endpoints: In: 0xdd6baf40 Out: 0xdd6baf54 Int: 0x00000000 (Period 0)
> usb-storage: usb_stor_control_msg: rq=fe rqtype=a1 value=0000 index=00 len=1
> usb-storage: GetMaxLUN command result is -32, data is 0
> usb-storage: *** thread sleeping.
> 
> scsi0 : SCSI emulation for USB Mass Storage devices
> 
> usb-storage: queuecommand called
> usb-storage: *** thread awakened.
> usb-storage: Command INQUIRY (6 bytes)
> usb-storage:  12 00 00 00 24 00
> usb-storage: Bulk Command S 0x43425355 T 0x1 L 36 F 128 Trg 0 LUN 0 CL 6
> usb-storage: usb_stor_bulk_transfer_buf: xfer 31 bytes
> usb-storage: Status code 0; transferred 31/31
> usb-storage: -- transfer complete
> usb-storage: Bulk command transfer result=0
> usb-storage: usb_stor_bulk_transfer_buf: xfer 36 bytes
> usb-storage: Status code 0; transferred 36/36
> usb-storage: -- transfer complete
> usb-storage: Bulk data transfer result 0x0
> usb-storage: Attempting to get CSW...
> usb-storage: usb_stor_bulk_transfer_buf: xfer 13 bytes
> usb-storage: Status code 0; transferred 13/13
> usb-storage: -- transfer complete
> usb-storage: Bulk status result = 0
> usb-storage: Bulk Status S 0x53425355 T 0x1 R 0 Stat 0x0
> usb-storage: Fixing INQUIRY data to show SCSI rev 2 - was 0
> usb-storage: scsi cmd done, result=0x0
> usb-storage: *** thread sleeping.
> usb-storage: queuecommand called
> usb-storage: *** thread awakened.
> usb-storage: Command INQUIRY (6 bytes)
> usb-storage:  12 00 00 00 25 00
> usb-storage: Bulk Command S 0x43425355 T 0x2 L 37 F 128 Trg 0 LUN 0 CL 6
> usb-storage: usb_stor_bulk_transfer_buf: xfer 31 bytes
> usb-storage: Status code 0; transferred 31/31
> usb-storage: -- transfer complete
> usb-storage: Bulk command transfer result=0
> usb-storage: usb_stor_bulk_transfer_buf: xfer 37 bytes
> usb-storage: Status code 0; transferred 36/37
> usb-storage: -- short transfer
> usb-storage: Bulk data transfer result 0x1
> usb-storage: Attempting to get CSW...
> usb-storage: usb_stor_bulk_transfer_buf: xfer 13 bytes
> usb-storage: Status code 0; transferred 13/13
> usb-storage: -- transfer complete
> usb-storage: Bulk status result = 0
> usb-storage: Bulk Status S 0x53425355 T 0x2 R 0 Stat 0x0
> usb-storage: Fixing INQUIRY data to show SCSI rev 2 - was 0
> usb-storage: scsi cmd done, result=0x0
> usb-storage: *** thread sleeping.
> 
>   Vendor: TOSHIBA   Model: THNCF1G02MA       Rev: 0811
>   Type:   Direct-Access                      ANSI SCSI revision: 02
> 
> usb-storage: queuecommand called
> usb-storage: *** thread awakened.
> usb-storage: Command TEST_UNIT_READY (6 bytes)
> usb-storage:  00 00 00 00 00 00
> usb-storage: Bulk Command S 0x43425355 T 0x3 L 0 F 0 Trg 0 LUN 0 CL 6
> usb-storage: usb_stor_bulk_transfer_buf: xfer 31 bytes
> usb-storage: Status code 0; transferred 31/31
> usb-storage: -- transfer complete
> usb-storage: Bulk command transfer result=0
> usb-storage: Attempting to get CSW...
> usb-storage: usb_stor_bulk_transfer_buf: xfer 13 bytes
> usb-storage: Status code 0; transferred 13/13
> usb-storage: -- transfer complete
> usb-storage: Bulk status result = 0
> usb-storage: Bulk Status S 0x53425355 T 0x3 R 0 Stat 0x0
> usb-storage: scsi cmd done, result=0x0
> usb-storage: *** thread sleeping.
> usb-storage: queuecommand called
> usb-storage: *** thread awakened.
> usb-storage: Command READ_CAPACITY (10 bytes)
> usb-storage:  25 00 00 00 00 00 00 00 00 00
> usb-storage: Bulk Command S 0x43425355 T 0x4 L 8 F 128 Trg 0 LUN 0 CL 10
> usb-storage: usb_stor_bulk_transfer_buf: xfer 31 bytes
> usb-storage: Status code 0; transferred 31/31
> usb-storage: -- transfer complete
> usb-storage: Bulk command transfer result=0
> usb-storage: usb_stor_bulk_transfer_buf: xfer 8 bytes
> usb-storage: Status code 0; transferred 8/8
> usb-storage: -- transfer complete
> usb-storage: Bulk data transfer result 0x0
> usb-storage: Attempting to get CSW...
> usb-storage: usb_stor_bulk_transfer_buf: xfer 13 bytes
> usb-storage: Status code 0; transferred 13/13
> usb-storage: -- transfer complete
> usb-storage: Bulk status result = 0
> usb-storage: Bulk Status S 0x53425355 T 0x4 R 0 Stat 0x0
> usb-storage: scsi cmd done, result=0x0
> usb-storage: *** thread sleeping.
> 
> SCSI device sda: 2000880 512-byte hdwr sectors (1024 MB)
> 
> usb-storage: queuecommand called
> usb-storage: *** thread awakened.
> usb-storage: Command MODE_SENSE_10 (10 bytes)
> usb-storage:  5a 00 3f 00 00 00 00 00 08 00
> usb-storage: Bulk Command S 0x43425355 T 0x5 L 8 F 128 Trg 0 LUN 0 CL 10
> usb-storage: usb_stor_bulk_transfer_buf: xfer 31 bytes
> usb-storage: Status code 0; transferred 31/31
> usb-storage: -- transfer complete
> usb-storage: Bulk command transfer result=0
> usb-storage: usb_stor_bulk_transfer_buf: xfer 8 bytes
> usb-storage: Status code 0; transferred 8/8
> usb-storage: -- transfer complete
> usb-storage: Bulk data transfer result 0x0
> usb-storage: Attempting to get CSW...
> usb-storage: usb_stor_bulk_transfer_buf: xfer 13 bytes
> usb-storage: Status code 0; transferred 13/13
> usb-storage: -- transfer complete
> usb-storage: Bulk status result = 0
> usb-storage: Bulk Status S 0x53425355 T 0x5 R 0 Stat 0x0
> usb-storage: scsi cmd done, result=0x0
> usb-storage: *** thread sleeping.
> 
> sda: Write Protect is off
> sda: Mode Sense: 06 00 00 00
> 
> usb-storage: queuecommand called
> usb-storage: *** thread awakened.
> usb-storage: Command MODE_SENSE_10 (10 bytes)
> usb-storage:  5a 00 08 00 00 00 00 00 08 00
> usb-storage: Bulk Command S 0x43425355 T 0x6 L 8 F 128 Trg 0 LUN 0 CL 10
> usb-storage: usb_stor_bulk_transfer_buf: xfer 31 bytes
> usb-storage: Status code 0; transferred 31/31
> usb-storage: -- transfer complete
> usb-storage: Bulk command transfer result=0
> usb-storage: usb_stor_bulk_transfer_buf: xfer 8 bytes
> usb-storage: Status code 0; transferred 8/8
> usb-storage: -- transfer complete
> usb-storage: Bulk data transfer result 0x0
> usb-storage: Attempting to get CSW...
> usb-storage: usb_stor_bulk_transfer_buf: xfer 13 bytes
> usb-storage: Status code 0; transferred 13/13
> usb-storage: -- transfer complete
> usb-storage: Bulk status result = 0
> usb-storage: Bulk Status S 0x53425355 T 0x6 R 0 Stat 0x0
> usb-storage: scsi cmd done, result=0x0
> usb-storage: *** thread sleeping.
> usb-storage: queuecommand called
> usb-storage: *** thread awakened.
> usb-storage: Command MODE_SENSE_10 (10 bytes)
> usb-storage:  5a 00 08 00 00 00 00 00 80 00
> usb-storage: Bulk Command S 0x43425355 T 0x7 L 128 F 128 Trg 0 LUN 0 CL 10
> usb-storage: usb_stor_bulk_transfer_buf: xfer 31 bytes
> usb-storage: Status code 0; transferred 31/31
> usb-storage: -- transfer complete
> usb-storage: Bulk command transfer result=0
> usb-storage: usb_stor_bulk_transfer_buf: xfer 128 bytes
> usb-storage: Status code -75; transferred 64/128
> usb-storage: -- babble
> usb-storage: Bulk data transfer result 0x3
> usb-storage: Attempting to get CSW...
> usb-storage: usb_stor_bulk_transfer_buf: xfer 13 bytes
> usb-storage: Status code 0; transferred 0/13
> usb-storage: -- short transfer
> usb-storage: Bulk status result = 1
> usb-storage: -- transport indicates error, resetting
> usb-storage: usb_stor_Bulk_reset called
> usb-storage: usb_stor_control_msg: rq=ff rqtype=21 value=0000 index=00 len=0
> usb-storage: Soft reset: clearing bulk-in endpoint halt
> usb-storage: usb_stor_control_msg: rq=01 rqtype=02 value=0000 index=81 len=0
> usb-storage: usb_stor_clear_halt: result = 0
> usb-storage: Soft reset: clearing bulk-out endpoint halt
> usb-storage: usb_stor_control_msg: rq=01 rqtype=02 value=0000 index=02 len=0
> usb-storage: usb_stor_clear_halt: result = 0
> usb-storage: Soft reset done
> usb-storage: scsi cmd done, result=0x70000
> usb-storage: *** thread sleeping.
> usb-storage: queuecommand called
> usb-storage: *** thread awakened.
> usb-storage: Command MODE_SENSE_10 (10 bytes)
> usb-storage:  5a 00 08 00 00 00 00 00 80 00
> usb-storage: Bulk Command S 0x43425355 T 0x8 L 128 F 128 Trg 0 LUN 0 CL 10
> usb-storage: usb_stor_bulk_transfer_buf: xfer 31 bytes
> usb-storage: Status code 0; transferred 31/31
> usb-storage: -- transfer complete
> usb-storage: Bulk command transfer result=0
> usb-storage: usb_stor_bulk_transfer_buf: xfer 128 bytes
> usb-storage: Status code -75; transferred 64/128
> usb-storage: -- babble
> usb-storage: Bulk data transfer result 0x3
> usb-storage: Attempting to get CSW...
> usb-storage: usb_stor_bulk_transfer_buf: xfer 13 bytes
> usb-storage: Status code 0; transferred 13/13
> usb-storage: -- transfer complete
> usb-storage: Bulk status result = 0
> usb-storage: Bulk Status S 0x53425355 T 0x8 R 0 Stat 0x0
> usb-storage: scsi cmd done, result=0x2
> usb-storage: *** thread sleeping.
> 
> sda: cache data unavailable
> sda: assuming drive cache: write through
> 
> usb-storage: queuecommand called
> usb-storage: *** thread awakened.
> usb-storage: Command TEST_UNIT_READY (6 bytes)
> usb-storage:  00 00 00 00 00 00
> usb-storage: Bulk Command S 0x43425355 T 0x9 L 0 F 0 Trg 0 LUN 0 CL 6
> usb-storage: usb_stor_bulk_transfer_buf: xfer 31 bytes
> usb-storage: Status code 0; transferred 31/31
> usb-storage: -- transfer complete
> usb-storage: Bulk command transfer result=0
> usb-storage: Attempting to get CSW...
> usb-storage: usb_stor_bulk_transfer_buf: xfer 13 bytes
> usb-storage: command_abort called
> usb-storage: usb_stor_stop_transport called
> usb-storage: -- cancelling URB
> usb-storage: Status code -104; transferred 0/13
> usb-storage: -- transfer cancelled
> usb-storage: Bulk status result = 4
> usb-storage: -- command was aborted
> usb-storage: usb_stor_Bulk_reset called
> usb-storage: usb_stor_control_msg: rq=ff rqtype=21 value=0000 index=00 len=0
> usb-storage: Timeout -- cancelling URB
> usb-storage: Soft reset failed: -104
> usb-storage: scsi command aborted
> usb-storage: *** thread sleeping.
> usb-storage: queuecommand called
> usb-storage: *** thread awakened.
> usb-storage: Command TEST_UNIT_READY (6 bytes)
> usb-storage:  00 00 00 00 00 00
> usb-storage: Bulk Command S 0x43425355 T 0x9 L 0 F 0 Trg 0 LUN 0 CL 6
> usb-storage: usb_stor_bulk_transfer_buf: xfer 31 bytes
> usb-storage: Status code 0; transferred 31/31
> usb-storage: -- transfer complete
> usb-storage: Bulk command transfer result=0
> usb-storage: Attempting to get CSW...
> usb-storage: usb_stor_bulk_transfer_buf: xfer 13 bytes
> usb-storage: command_abort called
> usb-storage: usb_stor_stop_transport called
> usb-storage: -- cancelling URB
> usb-storage: Status code -104; transferred 0/13
> usb-storage: -- transfer cancelled
> usb-storage: Bulk status result = 4
> usb-storage: -- command was aborted
> usb-storage: usb_stor_Bulk_reset called
> usb-storage: usb_stor_control_msg: rq=ff rqtype=21 value=0000 index=00 len=0
> usb-storage: Timeout -- cancelling URB
> usb-storage: Soft reset failed: -104
> usb-storage: scsi command aborted
> usb-storage: *** thread sleeping.
> usb-storage: device_reset called
> usb-storage: usb_stor_Bulk_reset called
> usb-storage: usb_stor_control_msg: rq=ff rqtype=21 value=0000 index=00 len=0
> usb-storage: Timeout -- cancelling URB
> usb-storage: Soft reset failed: -104
> usb-storage: bus_reset called
> 
> SysRq : Show State
> 
>                          free                        sibling
>   task             PC    stack   pid father child younger older
> 
> khubd         D 43C9EF35 4293246608     5      1             6     4 (L-TLB)
> dfceb7e0 00000046 d4c55760 43c9ef35 00000037 dd4dc400 d326ecd4 d326ec80 
>        00000000 d4a4fc00 43c9ef35 00000037 d4c55760 00016802 43c9f822 00000037 
>        dfe8db00 dfcea000 dfceb898 dfcea000 dfceb854 c011f5f7 c044c46d 000006b8 
> Call Trace:
>  [<c011f5f7>] wait_for_completion+0x150/0x339
>  [<c011ee20>] default_wake_function+0x0/0x2e
>  [<c011ee20>] default_wake_function+0x0/0x2e
>  [<c02f0bf3>] scsi_insert_special_req+0x3b/0x41
>  [<c02f0fcb>] scsi_wait_req+0xca/0xe3
>  [<c02f0d2a>] scsi_wait_done+0x0/0x1d7
>  [<c02eb0d8>] scsi_allocate_request+0x28/0x6b
>  [<c02ed5a1>] ioctl_internal_command+0x5a/0x17f
>  [<c02edd08>] scsi_ioctl+0x13d/0x2c1
>  [<c02b0000>] parport_pc_interrupt+0x6a/0x80
>  [<c02f6f7a>] sd_media_changed+0x90/0x94
>  [<c017df1a>] check_disk_change+0x30/0x81
>  [<c02f6b3c>] sd_open+0x72/0x101
>  [<c02bacc8>] get_gendisk+0x22/0x32
>  [<c017e265>] do_open+0x25c/0x702
>  [<c017e778>] blkdev_get+0x6d/0x77
>  [<c01bdc28>] register_disk+0xc1/0x170
>  [<c02babbe>] blk_register_region+0x3e/0x42
>  [<c02bac62>] add_disk+0x4f/0x5d
>  [<c02babe8>] exact_match+0x0/0xb
>  [<c02babf3>] exact_lock+0x0/0x20
>  [<c02f8251>] sd_probe+0x26a/0x457
>  [<c023e6e9>] sprintf+0x1f/0x23
>  [<c02b2958>] bus_match+0x3d/0x65
>  [<c02b29d2>] device_attach+0x52/0xae
>  [<c02b2bd4>] bus_add_device+0x75/0xb8
>  [<c02b19c6>] device_add+0xec/0x104
>  [<c02f52be>] scsi_device_register+0xee/0x224
>  [<c02f3e82>] scsi_add_lun+0x3ba/0x5cf
>  [<c02f41c0>] scsi_probe_and_add_lun+0x129/0x1b0
>  [<c02f4852>] scsi_scan_target+0x94/0x110
>  [<c01b9e1d>] proc_register+0x18/0xa4
>  [<c02f492c>] scsi_scan_channel+0x5e/0x95
>  [<c02f4a41>] scsi_scan_host_selected+0xde/0xe8
>  [<c02f4a7c>] scsi_scan_host+0x31/0x35
>  [<c03478ff>] storage_probe+0x264/0x2a2
>  [<c032c9d5>] usb_probe_interface+0x8f/0xb5
>  [<c02b2958>] bus_match+0x3d/0x65
>  [<c02b29d2>] device_attach+0x52/0xae
>  [<c02b2bd4>] bus_add_device+0x75/0xb8
>  [<c02b19c6>] device_add+0xec/0x104
>  [<c032dddf>] usb_new_device+0x355/0x490
>  [<c033071e>] hub_port_connect_change+0x1e8/0x347
>  [<c0330c6d>] hub_events+0x3f0/0x570
>  [<c0127242>] allow_signal+0xcc/0x200
>  [<c0330e1d>] hub_thread+0x30/0xe4
>  [<c011ee20>] default_wake_function+0x0/0x2e
>  [<c0330ded>] hub_thread+0x0/0xe4
>  [<c01082a5>] kernel_thread_helper+0x5/0xb
> 
> usb-storage   S DDE96FE0 4276830768  1479      1          1480  1476 (L-TLB)
> d3b0bf04 00000046 c011ee4a dde96fe0 00000001 00000000 00000000 d3b0bef4 
>        c011ee86 ddb8df38 00000001 00000000 d3247580 00003bc0 3c68a572 00000045 
>        d4c55760 d5ad054c d3b0a000 00000286 d3b0bf68 c0109536 d3b0bf24 d3b0a000 
> Call Trace:
>  [<c011ee4a>] default_wake_function+0x2a/0x2e
>  [<c011ee86>] __wake_up_common+0x38/0x57
>  [<c0109536>] __down_interruptible+0x15a/0x37f
>  [<c011ee20>] default_wake_function+0x0/0x2e
>  [<c01098f6>] __down_failed_interruptible+0xa/0x10
>  [<c0347995>] .text.lock.usb+0x5/0x50
>  [<c012910c>] do_group_exit+0x1df/0x21d
>  [<c010b04e>] ret_from_fork+0x6/0x14
>  [<c03465d3>] usb_stor_control_thread+0x0/0x750
>  [<c03465d3>] usb_stor_control_thread+0x0/0x750
>  [<c01082a5>] kernel_thread_helper+0x5/0xb
> 
> scsi_eh_0     D E493D4A7 9167888  1480      1          1484  1479 (L-TLB)
> d3b07e0c 00000046 dde96fe0 e493d4a7 00000049 d3b07df4 c011ee86 ddb8df38 
>        00000001 00000000 e493d4a7 00000049 dde96fe0 00004940 e493f093 00000049 
>        d3247580 c04eab6c fffeffff dd4dc0e4 d3b07e54 c023d36d ffffffb7 00000086 
> Call Trace:
>  [<c011ee86>] __wake_up_common+0x38/0x57
>  [<c023d36d>] rwsem_down_read_failed+0x129/0x24c
>  [<c0125e82>] printk+0x27b/0x3f8
>  [<c033145a>] .text.lock.hub+0x75/0x93
>  [<c03446c6>] bus_reset+0x233/0x2ac
>  [<c02efa92>] scsi_try_bus_reset+0xd1/0x21e
>  [<c02efe82>] scsi_eh_bus_reset+0x85/0x130
>  [<c02ef59e>] scsi_eh_tur+0x9e/0xcb
>  [<c02f0417>] scsi_eh_ready_devs+0x49/0x74
>  [<c02f060a>] scsi_unjam_host+0x158/0x1e5
>  [<c011ee20>] default_wake_function+0x0/0x2e
>  [<c02f091d>] scsi_error_handler+0x286/0x2c2
>  [<c02f0697>] scsi_error_handler+0x0/0x2c2
>  [<c01082a5>] kernel_thread_helper+0x5/0xb

-- 
Matthew Dharm                              Home: [EMAIL PROTECTED] 
Maintainer, Linux USB Mass Storage Driver

What the hell are you?
                                        -- Pitr to Dust Puppy 
User Friendly, 12/3/1997

Attachment: pgp00000.pgp
Description: PGP signature

Reply via email to