Distribution: Gentoo Hardware Environment: IBM Thinkpad T42 Software Environment: gnome or console Problem Description: My USB memory stick is not recognized when I boot in a 2.6.10 kernel. The same stick works fine in 2.6.8 and 2.6.9. I tried the Gentoo kernel first, then vanilla. I had the same error so I'm reporting it here. It's the same with devfs or udev. The usb generally seems to come up normally, and a simple usb mouse works fine. This may or may not be related to bug #4140. I recorded the lines in /var/log/messages: in 2.6.10: Feb 1 10:11:56 localhost usb 1-4: new high speed USB device using ehci_hcd and address 3 Feb 1 10:11:56 localhost usb 3-2: new full speed USB device using uhci_hcd and address 3 Feb 1 10:11:56 localhost usb 3-2: device descriptor read/64, error -71 Feb 1 10:11:57 localhost usb 3-2: device descriptor read/64, error -71 Feb 1 10:11:57 localhost usb 3-2: new full speed USB device using uhci_hcd and address 4 Feb 1 10:11:57 localhost usb 3-2: device descriptor read/64, error -71 Feb 1 10:11:57 localhost usb 3-2: device descriptor read/64, error -71 **************************************************************************************** in 2.6.8 or 2.6.9: Feb 2 07:57:28 localhost usb 1-4: new high speed USB device using address 2 Feb 2 07:57:28 localhost scsi0 : SCSI emulation for USB Mass Storage devices Feb 2 07:57:28 localhost Vendor: Generic Model: USB Flash Disk Rev: 2.00 Feb 2 07:57:28 localhost Type: Direct-Access ANSI SCSI revision: 02 Feb 2 07:57:29 localhost SCSI device sda: 511488 512-byte hdwr sectors (262 MB)Feb 2 07:57:29 localhost sda: assuming Write Enabled Feb 2 07:57:29 localhost sda: assuming drive cache: write through Feb 2 07:57:29 localhost /dev/scsi/host0/bus0/target0/lun0: unknown partition table Feb 2 07:57:29 localhost Attached scsi removable disk sda at scsi0, channel 0, id 0, lun 0 Feb 2 07:57:29 localhost Attached scsi generic sg0 at scsi0, channel 0, id 0, lun 0, type 0 Feb 2 07:57:29 localhost USB Mass Storage device found at 2 Feb 2 07:57:29 localhost scsi.agent[11193]: disk at /devices/pci0000:00/0000:00:1d.7/usb1/1-4/1-4:1.0/host0/0:0:0:0 Steps to reproduce: plug and pray
Created attachment 4506 [details] hub.c from 2.6.10 source
Created attachment 4507 [details] .config file
Looks like the HCD is failing to enumerate the device, based on the errors shown.
Is there something I can do about it? I tried 2.6.11_rc2 (from gentoo's vanilla sources, using devfs) and it has the same problem. I hope it won't propagate forever and leave me behind with 2.6.9... USB seems to come up normally in dmesg, but when I try to mount I get the "/dev/sda is not a valid block device" error. The same key works in 2.6.8 and 2.6.9, both devfs and udev. Here are all the possibly relevant lines from /var/log/messages: Feb 19 01:04:11 localhost Linux version 2.6.11-rc2 (root@localhost) (gcc version 3.3.4 20040623 (Gentoo Linux 3.3.4-r1, ssp-3.3.2-2, pie-8.7.6)) #1 Mon Feb 14 22:52:59 IST 2005 Feb 19 01:04:11 localhost usbcore: registered new driver usbfs Feb 19 01:04:11 localhost usbcore: registered new driver hub Feb 19 01:04:11 localhost PCI: Using ACPI for IRQ routing Feb 19 01:04:11 localhost ** PCI interrupts are no longer routed automatically. If this Feb 19 01:04:11 localhost ** causes a device to stop working, it is probably because the Feb 19 01:04:11 localhost ** driver failed to call pci_enable_device(). As a temporary Feb 19 01:04:11 localhost ** workaround, the "pci=routeirq" argument restores the old Feb 19 01:04:11 localhost ** behavior. If this argument makes the device work again, Feb 19 01:04:11 localhost ** please email the output of "lspci" to bjorn.helgaas@hp.com Feb 19 01:04:11 localhost ** so I can fix the driver. Feb 19 01:04:11 localhost ehci_hcd 0000:00:1d.7: Intel Corp. 82801DB/DBM (ICH4/ICH4-M) USB 2.0 EHCI Controller Feb 19 01:04:11 localhost ehci_hcd 0000:00:1d.7: irq 11, pci mem 0xc0000000 Feb 19 01:04:11 localhost ehci_hcd 0000:00:1d.7: new USB bus registered, assigned bus number 1 Feb 19 01:04:11 localhost PCI: cache line size of 32 is not supported by device 0000:00:1d.7 Feb 19 01:04:11 localhost ehci_hcd 0000:00:1d.7: USB 2.0 initialized, EHCI 1.00, driver 10 Dec 2004 Feb 19 01:04:11 localhost hub 1-0:1.0: USB hub found Feb 19 01:04:11 localhost hub 1-0:1.0: 6 ports detected Feb 19 01:04:11 localhost USB Universal Host Controller Interface driver v2.2 Feb 19 01:04:11 localhost ACPI: PCI interrupt 0000:00:1d.0[A] -> GSI 11 (level, low) -> IRQ 11 Feb 19 01:04:11 localhost uhci_hcd 0000:00:1d.0: Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #1 Feb 19 01:04:11 localhost PCI: Setting latency timer of device 0000:00:1d.0 to 64 Feb 19 01:04:11 localhost uhci_hcd 0000:00:1d.0: irq 11, io base 0x1800 Feb 19 01:04:11 localhost uhci_hcd 0000:00:1d.0: new USB bus registered, assigned bus number 2 Feb 19 01:04:11 localhost hub 2-0:1.0: USB hub found Feb 19 01:04:11 localhost hub 2-0:1.0: 2 ports detected Feb 19 01:04:11 localhost uhci_hcd 0000:00:1d.1: Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #2 Feb 19 01:04:11 localhost PCI: Setting latency timer of device 0000:00:1d.1 to 64 Feb 19 01:04:11 localhost uhci_hcd 0000:00:1d.1: irq 11, io base 0x1820 Feb 19 01:04:11 localhost uhci_hcd 0000:00:1d.1: new USB bus registered, assigned bus number 3 Feb 19 01:04:11 localhost hub 3-0:1.0: USB hub found Feb 19 01:04:11 localhost hub 3-0:1.0: 2 ports detected Feb 19 01:04:11 localhost ACPI: PCI interrupt 0000:00:1d.2[C] -> GSI 11 (level, low) -> IRQ 11 Feb 19 01:04:11 localhost uhci_hcd 0000:00:1d.2: Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #3 Feb 19 01:04:11 localhost PCI: Setting latency timer of device 0000:00:1d.2 to 64 Feb 19 01:04:11 localhost uhci_hcd 0000:00:1d.2: irq 11, io base 0x1840 Feb 19 01:04:11 localhost uhci_hcd 0000:00:1d.2: new USB bus registered, assigned bus number 4 Feb 19 01:04:11 localhost hub 4-0:1.0: USB hub found Feb 19 01:04:11 localhost hub 4-0:1.0: 2 ports detected Feb 19 01:04:11 localhost usb 3-1: new low speed USB device using uhci_hcd and address 2 Feb 19 01:04:11 localhost usbcore: registered new driver usblp Feb 19 01:04:11 localhost drivers/usb/class/usblp.c: v0.13: USB Printer Device Clas: Feb 19 01:04:11 localhost Initializing USB Mass Storage driver... Feb 19 01:04:11 localhost usbcore: registered new driver usb-storage Feb 19 01:04:11 localhost USB Mass Storage support registered. Feb 19 01:04:11 localhost input: USB HID v1.00 Mouse [Logitech USB-PS/2 Trackball] on usb-0000:00:1d.1-1 Feb 19 01:04:11 localhost usbcore: registered new driver usbhid Feb 19 01:04:11 localhost drivers/usb/input/hid-core.c: v2.0:USB HID core driver (Could the ACPI IRQ routing have anything to do with it???) after plugging in the key: Feb 19 01:04:39 localhost usb 1-4: new high speed USB device using ehci_hcd and address 3 Feb 19 01:04:40 localhost usb 3-2: new full speed USB device using uhci_hcd and address 3 Feb 19 01:04:40 localhost usb 3-2: device descriptor read/64, error -71 Feb 19 01:04:40 localhost usb 3-2: device descriptor read/64, error -71 Feb 19 01:04:40 localhost usb 3-2: new full speed USB device using uhci_hcd and address 4 Feb 19 01:04:40 localhost usb 3-2: device descriptor read/64, error -71 Feb 19 01:04:40 localhost usb 3-2: device descriptor read/64, error -71
Alan, any ideas?
There are two things you can try. One is to use 2.6.11 because some important changes have been added since -rc2. The second thing is to try specifying the "old_scheme_first=y" module parameter for usbcore.ko. This doesn't appear to be connected with interrupt routing.
I'll give it a try again and get back to you.
*** Bug 4329 has been marked as a duplicate of this bug. ***
also try the tweak I suggested in bug #4329 ...
Good news. It works now in 2.6.11.5 It doesn't work (yet) in the Gentoo version 2.6.11_rc2. The sequence in /var/log/messages starts with a 5 sec delay "waiting for device to settle before scanning", and then proceeds to assign a SCSI node as it should. thanks!
The submitter reported it's fixed in 2.6.11.5.