[1.] One line summary of the problem: usb-storage driver is crashing on E220 HSDPA Modem / E270 HSDPA/HSUPA Modem [2.] Full description of the problem/report: The microSD drive used to work in 2.6.26 kernels and earlier, but now it makes the usb-storage driver crash in 2.6.28.* and 2.6.29.* Here is my dmesg output for 2.6.29.4: [ 192.812065] usb 1-3: new high speed USB device using ehci_hcd and address 3 [ 192.958902] usb 1-3: configuration #1 chosen from 1 choice [ 193.058632] Initializing USB Mass Storage driver... [ 193.059445] usb-storage: probe of 1-3:1.0 failed with error -1 [ 193.059495] usbcore: registered new interface driver usb-storage [ 193.059504] USB Mass Storage support registered. [ 193.083489] usb 1-3: USB disconnect, address 3 [ 200.408057] usb 1-3: new high speed USB device using ehci_hcd and address 4 [ 200.554921] usb 1-3: configuration #1 chosen from 1 choice [ 200.598111] usb-storage: probe of 1-3:1.0 failed with error -5 [ 200.598613] usb-storage: probe of 1-3:1.1 failed with error -5 [ 200.603076] usb-storage: probe of 1-3:1.2 failed with error -1 [ 200.606444] usb-storage: probe of 1-3:1.3 failed with error -1 [ 200.677584] usbcore: registered new interface driver usbserial [ 200.677602] USB Serial support registered for generic [ 200.677643] usbcore: registered new interface driver usbserial_generic [ 200.677646] usbserial: USB Serial Driver core [ 200.691436] USB Serial support registered for GSM modem (1-port) [ 200.691476] option 1-3:1.0: GSM modem (1-port) converter detected [ 200.691604] usb 1-3: GSM modem (1-port) converter now attached to ttyUSB0 [ 200.691615] option 1-3:1.1: GSM modem (1-port) converter detected [ 200.691665] usb 1-3: GSM modem (1-port) converter now attached to ttyUSB1 [ 200.691685] usbcore: registered new interface driver option [ 200.691687] option: v0.7.2:USB Driver for GSM modems [ 204.467771] BUG: scheduling while atomic: swapper/0/0x10010000 [ 204.467781] Modules linked in: option usbserial usb_storage xt_conntrack binfmt_misc radeon drm ipt_MASQUERADE iptable_nat nf_nat nf_conntrack_ipv4 nf_defrag_ipv4 xt_state nf_conntrack ipt_REJECT xt_tcpudp iptable_filter ip_tables x_tables bridge stp lp pcmcia joydev snd_intel8x0 snd_ac97_codec ac97_bus snd_pcm_oss snd_mixer_oss snd_pcm snd_seq_dummy snd_seq_oss snd_seq_midi snd_rawmidi snd_seq_midi_event snd_seq snd_timer snd_seq_device thinkpad_acpi iTCO_wdt iTCO_vendor_support nsc_ircc ipw2100 libipw led_class yenta_socket rsrc_nonstatic pcmcia_core lib80211 intel_agp snd soundcore ppdev psmouse serio_raw nvram irda pcspkr video agpgart snd_page_alloc shpchp parport_pc parport crc_ccitt output reiserfs sha256_generic aes_i586 aes_generic cbc usbhid e1000 dm_crypt [ 204.467941] [ 204.467949] Pid: 0, comm: swapper Not tainted (2.6.29-02062904-generic #02062904) 23736YU [ 204.467958] EIP: 0060:[<c0315dec>] EFLAGS: 00000202 CPU: 0 [ 204.467973] EIP is at acpi_idle_enter_simple+0xfd/0x138 [ 204.467981] EAX: c07c2cd8 EBX: 00000d2f ECX: 0000002f EDX: 01183000 [ 204.467988] ESI: 00000000 EDI: f6ec6450 EBP: c0739f7c ESP: c0739f64 [ 204.467996] DS: 007b ES: 007b FS: 00d8 GS: 0000 SS: 0068 [ 204.468003] CR0: 8005003b CR2: b7f34000 CR3: 34fc0000 CR4: 00000690 [ 204.468011] DR0: 00000000 DR1: 00000000 DR2: 00000000 DR3: 00000000 [ 204.468018] DR6: ffff0ff0 DR7: 00000400 [ 204.468023] Call Trace: [ 204.468036] [<c0315e8a>] acpi_idle_enter_bm+0x63/0x1fd [ 204.468049] [<c04068cf>] cpuidle_idle_call+0x6f/0xc0 [ 204.468059] [<c0101eb0>] cpu_idle+0x60/0xa0 [ 204.468071] [<c04e5785>] rest_init+0x55/0x60 [3.] Keywords (i.e., modules, networking, kernel): usb-storage usb-storage: probe of 1-3:1.0 failed with error -5 usb-storage: probe of 1-3:1.2 failed with error -1 [4.] Kernel version (from /proc/version): Linux version 2.6.29-02062904-generic (root@zinc) (gcc version 4.2.3 (Ubuntu 4.2.3-2ubuntu7)) #02062904 SMP Sun May 24 00:14:52 UTC 2009 [5.] Output of Oops.. no oops message to report [6.] A small shell script or example program which triggers the problem (if possible) Just plug in the device. no script needed [7.] Environment [7.1.] Software (add the output of the ver_linux script here) Linux rgarcia-desktop 2.6.29-02062904-generic #02062904 SMP Sun May 24 00:14:52 UTC 2009 i686 GNU/Linux Gnu C 4.3.3 Gnu make 3.81 binutils 2.19.1 util-linux 2.14.2 mount support module-init-tools 3.7-pre9 e2fsprogs 1.41.4 reiserfsprogs 3.6.19 pcmciautils 014 PPP 2.4.5 Linux C Library 2.9 Dynamic linker (ldd) 2.9 Procps 3.2.7 Net-tools 1.60 Kbd 1.14.1 Sh-utils 6.10 wireless-tools 29 Modules Loaded option usbserial usb_storage xt_conntrack binfmt_misc radeon drm ipt_MASQUERADE iptable_nat nf_nat nf_conntrack_ipv4 nf_defrag_ipv4 xt_state nf_conntrack ipt_REJECT xt_tcpudp iptable_filter ip_tables x_tables bridge stp lp pcmcia joydev snd_intel8x0 snd_ac97_codec ac97_bus snd_pcm_oss snd_mixer_oss snd_pcm snd_seq_dummy snd_seq_oss snd_seq_midi snd_rawmidi snd_seq_midi_event snd_seq snd_timer snd_seq_device thinkpad_acpi iTCO_wdt iTCO_vendor_support nsc_ircc ipw2100 libipw led_class yenta_socket rsrc_nonstatic pcmcia_core lib80211 intel_agp snd soundcore ppdev psmouse serio_raw nvram irda pcspkr video agpgart snd_page_alloc shpchp parport_pc parport crc_ccitt output reiserfs sha256_generic aes_i586 aes_generic cbc usbhid e1000 dm_crypt [7.2.] Processor information (from /proc/cpuinfo): processor : 0 vendor_id : GenuineIntel cpu family : 6 model : 13 model name : Intel(R) Pentium(R) M processor 1.70GHz stepping : 6 cpu MHz : 600.000 cache size : 2048 KB fdiv_bug : no hlt_bug : no f00f_bug : no coma_bug : no fpu : yes fpu_exception : yes cpuid level : 2 wp : yes flags : fpu vme de pse tsc msr mce cx8 apic sep mtrr pge mca cmov pat clflush dts acpi mmx fxsr sse sse2 ss tm pbe up bts est tm2 bogomips : 1196.15 clflush size : 64 power management: [7.3.] Module information (from /proc/modules): option 19968 0 - Live 0xf7ef0000 usbserial 31624 1 option, Live 0xf7fdb000 usb_storage 93536 0 - Live 0xf7fc2000 xt_conntrack 3292 0 - Live 0xf7d05000 binfmt_misc 8132 1 - Live 0xf7cf7000 radeon 144896 2 - Live 0xf80df000 drm 151488 3 radeon, Live 0xf7df7000 ipt_MASQUERADE 2492 0 - Live 0xf80b4000 iptable_nat 4668 0 - Live 0xf80a2000 nf_nat 17872 2 ipt_MASQUERADE,iptable_nat, Live 0xf8073000 nf_conntrack_ipv4 13096 4 iptable_nat,nf_nat, Live 0xf8041000 nf_defrag_ipv4 1756 1 nf_conntrack_ipv4, Live 0xf8033000 xt_state 1820 1 - Live 0xf802a000 nf_conntrack 65828 6 xt_conntrack,ipt_MASQUERADE,iptable_nat,nf_nat,nf_conntrack_ipv4,xt_state, Live 0xf7edd000 ipt_REJECT 2844 2 - Live 0xf7e21000 xt_tcpudp 2812 4 - Live 0xf7dec000 iptable_filter 2332 1 - Live 0xf7dc9000 ip_tables 11564 2 iptable_nat,iptable_filter, Live 0xf7dc4000 x_tables 15232 7 xt_conntrack,ipt_MASQUERADE,iptable_nat,xt_state,ipt_REJECT,xt_tcpudp,ip_tables, Live 0xf7daa000 bridge 47408 0 - Live 0xf7cc8000 stp 2208 1 bridge, Live 0xf7c54000 lp 8708 0 - Live 0xf7cee000 pcmcia 36492 0 - Live 0xf7ce3000 joydev 10208 0 - Live 0xf7c6f000 snd_intel8x0 29656 1 - Live 0xf86b5000 snd_ac97_codec 100032 1 snd_intel8x0, Live 0xf8678000 ac97_bus 1500 1 snd_ac97_codec, Live 0xf8307000 snd_pcm_oss 39584 0 - Live 0xf84ab000 snd_mixer_oss 14780 1 snd_pcm_oss, Live 0xf835e000 snd_pcm 76096 3 snd_intel8x0,snd_ac97_codec,snd_pcm_oss, Live 0xf804d000 snd_seq_dummy 2624 0 - Live 0xf7c4e000 snd_seq_oss 29696 0 - Live 0xf7c65000 snd_seq_midi 5984 0 - Live 0xf8095000 snd_rawmidi 20960 1 snd_seq_midi, Live 0xf8079000 snd_seq_midi_event 6716 2 snd_seq_oss,snd_seq_midi, Live 0xf8068000 snd_seq 48016 6 snd_seq_dummy,snd_seq_oss,snd_seq_midi,snd_seq_midi_event, Live 0xf7ef6000 snd_timer 21764 2 snd_pcm,snd_seq, Live 0xf7ed5000 snd_seq_device 6824 5 snd_seq_dummy,snd_seq_oss,snd_seq_midi,snd_rawmidi,snd_seq, Live 0xf7ec4000 thinkpad_acpi 61376 0 - Live 0xf7eae000 iTCO_wdt 11008 0 - Live 0xf7e3b000 iTCO_vendor_support 3712 1 iTCO_wdt, Live 0xf7e2d000 nsc_ircc 20848 0 - Live 0xf7ddb000 ipw2100 71568 0 - Live 0xf7d08000 libipw 28416 1 ipw2100, Live 0xf7cbf000 led_class 3872 1 thinkpad_acpi, Live 0xf7c3f000 yenta_socket 24200 2 - Live 0xf7cd8000 rsrc_nonstatic 10940 1 yenta_socket, Live 0xf7c9a000 pcmcia_core 35888 3 pcmcia,yenta_socket,rsrc_nonstatic, Live 0xf7c88000 lib80211 6400 1 libipw, Live 0xf7c61000 intel_agp 25884 1 - Live 0xf7db7000 snd 56868 12 snd_intel8x0,snd_ac97_codec,snd_pcm_oss,snd_mixer_oss,snd_pcm,snd_seq_oss,snd_rawmidi,snd_seq,snd_timer,snd_seq_device, Live 0xf7d6d000 soundcore 7104 1 snd, Live 0xf7d51000 ppdev 7168 0 - Live 0xf7d3d000 psmouse 54864 0 - Live 0xf7c75000 serio_raw 5184 0 - Live 0xf7c50000 nvram 7624 1 thinkpad_acpi, Live 0xf7c34000 irda 186908 1 nsc_ircc, Live 0xf84c0000 pcspkr 2268 0 - Live 0xf8479000 video 17996 0 - Live 0xf8441000 agpgart 35112 2 drm,intel_agp, Live 0xf83b2000 snd_page_alloc 8900 2 snd_intel8x0,snd_pcm, Live 0xf839c000 shpchp 31696 0 - Live 0xf8363000 parport_pc 32772 1 - Live 0xf8347000 parport 34348 3 lp,ppdev,parport_pc, Live 0xf831a000 crc_ccitt 1820 1 irda, Live 0xf8309000 output 2652 1 video, Live 0xf8300000 reiserfs 230720 1 - Live 0xf7e73000 sha256_generic 12348 0 - Live 0xf7df1000 aes_i586 7452 3 - Live 0xf7de4000 aes_generic 27516 1 aes_i586, Live 0xf7dd2000 cbc 3388 2 - Live 0xf7dc1000 usbhid 34400 0 - Live 0xf7c56000 e1000 122048 0 - Live 0xf7c9f000 dm_crypt 12928 2 - Live 0xf7c42000 [7.4.] Loaded driver and hardware information (/proc/ioports, /proc/iomem) 0000-001f : dma1 0020-0021 : pic1 0040-0043 : timer0 0050-0053 : timer1 0060-0060 : keyboard 0064-0064 : keyboard 0070-0071 : rtc0 0080-008f : dma page reg 00a0-00a1 : pic2 00c0-00df : dma2 00f0-00ff : fpu 0170-0177 : 0000:00:1f.1 0170-0177 : ata_piix 01f0-01f7 : 0000:00:1f.1 01f0-01f7 : ata_piix 02f8-02ff : nsc-ircc 0376-0376 : 0000:00:1f.1 0376-0376 : ata_piix 03bc-03be : parport0 03c0-03df : vga+ 03f6-03f6 : 0000:00:1f.1 03f6-03f6 : ata_piix 03f8-03ff : serial 0cf8-0cff : PCI conf1 1000-107f : 0000:00:1f.0 1000-107f : pnp 00:02 1000-1003 : ACPI PM1a_EVT_BLK 1004-1005 : ACPI PM1a_CNT_BLK 1008-100b : ACPI PM_TMR 1010-1015 : ACPI CPU throttle 1020-1020 : ACPI PM2_CNT_BLK 1028-102f : ACPI GPE0_BLK 1030-1033 : iTCO_wdt 1060-107f : iTCO_wdt 1180-11bf : 0000:00:1f.0 1180-11bf : pnp 00:02 15e0-15ef : pnp 00:02 1600-162f : pnp 00:02 1630-1631 : pnp 00:02 1632-167f : pnp 00:02 1800-181f : 0000:00:1d.0 1800-181f : uhci_hcd 1820-183f : 0000:00:1d.1 1820-183f : uhci_hcd 1840-185f : 0000:00:1d.2 1840-185f : uhci_hcd 1860-186f : 0000:00:1f.1 1860-186f : ata_piix 1880-189f : 0000:00:1f.3 18c0-18ff : 0000:00:1f.5 18c0-18ff : Intel 82801DB-ICH4 1c00-1cff : 0000:00:1f.5 1c00-1cff : Intel 82801DB-ICH4 2000-207f : 0000:00:1f.6 2400-24ff : 0000:00:1f.6 3000-3fff : PCI Bus 0000:01 3000-30ff : 0000:01:00.0 4000-8fff : PCI Bus 0000:02 4000-40ff : PCI CardBus 0000:03 4400-44ff : PCI CardBus 0000:03 4800-48ff : PCI CardBus 0000:07 4c00-4cff : PCI CardBus 0000:07 8000-803f : 0000:02:01.0 8000-803f : e1000 iomem: 00000000-00001fff : System RAM 00002000-00005fff : reserved 00006000-00006fff : System RAM 00007000-0000ffff : reserved 00010000-00091fff : System RAM 0009f000-0009ffff : reserved 000a0000-000bffff : Video RAM area 000c0000-000cffff : Video ROM 000d0000-000d0fff : Adapter ROM 000d1000-000d1fff : Adapter ROM 000d2000-000d3fff : reserved 000dc000-000fffff : reserved 000e0000-000effff : Extension ROM 000f0000-000fffff : System ROM 00100000-3ff5ffff : System RAM 00100000-004fcaa1 : Kernel code 004fcaa2-00737c9f : Kernel data 007c7000-00873d93 : Kernel bss 3ff60000-3ff76fff : ACPI Tables 3ff77000-3ff78fff : ACPI Non-volatile Storage 3ff80000-3fffffff : reserved 50000000-500003ff : 0000:00:1f.1 b0000000-b0000fff : 0000:02:00.0 b0000000-b0000fff : yenta_socket b1000000-b1000fff : 0000:02:00.1 b1000000-b1000fff : yenta_socket c0000000-c00003ff : 0000:00:1d.7 c0000000-c00003ff : ehci_hcd c0000800-c00008ff : 0000:00:1f.5 c0000800-c00008ff : Intel 82801DB-ICH4 c0000c00-c0000dff : 0000:00:1f.5 c0000c00-c0000dff : Intel 82801DB-ICH4 c0100000-c01fffff : PCI Bus 0000:01 c0100000-c010ffff : 0000:01:00.0 c0120000-c013ffff : 0000:01:00.0 c0200000-cfffffff : PCI Bus 0000:02 c0200000-c020ffff : 0000:02:01.0 c0200000-c020ffff : e1000 c0210000-c0210fff : 0000:02:02.0 c0210000-c0210fff : ipw2100 c0220000-c023ffff : 0000:02:01.0 c0220000-c023ffff : e1000 c0240000-c024ffff : 0000:02:01.0 c4000000-c7ffffff : PCI CardBus 0000:03 c8000000-cbffffff : PCI CardBus 0000:07 d0000000-dfffffff : 0000:00:00.0 e0000000-e7ffffff : PCI Bus 0000:01 e0000000-e7ffffff : 0000:01:00.0 e8000000-efffffff : PCI Bus 0000:02 e8000000-ebffffff : PCI CardBus 0000:03 ec000000-efffffff : PCI CardBus 0000:07 fee00000-fee00fff : Local APIC ff800000-ffffffff : reserved [7.5.] PCI information ('lspci -vvv' as root) 00:00.0 Host bridge: Intel Corporation 82855PM Processor to I/O Controller (rev 03) Subsystem: IBM Device 0529 Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort+ >SERR- <PERR- INTx- Latency: 0 Region 0: Memory at d0000000 (32-bit, prefetchable) [size=256M] Capabilities: <access denied> Kernel driver in use: agpgart-intel Kernel modules: intel-agp 00:01.0 PCI bridge: Intel Corporation 82855PM Processor to AGP Controller (rev 03) Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B- DisINTx- Status: Cap- 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 96 Bus: primary=00, secondary=01, subordinate=01, sec-latency=64 I/O behind bridge: 00003000-00003fff Memory behind bridge: c0100000-c01fffff Prefetchable memory behind bridge: e0000000-e7ffffff Secondary status: 66MHz+ FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort+ <SERR- <PERR- BridgeCtl: Parity- SERR- NoISA+ VGA+ MAbort- >Reset- FastB2B- PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn- Kernel modules: shpchp 00:1d.0 USB Controller: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #1 (rev 01) Subsystem: IBM Device 052d Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0 Interrupt: pin A routed to IRQ 11 Region 4: I/O ports at 1800 [size=32] Kernel driver in use: uhci_hcd 00:1d.1 USB Controller: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #2 (rev 01) Subsystem: IBM Device 052d Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0 Interrupt: pin B routed to IRQ 9 Region 4: I/O ports at 1820 [size=32] Kernel driver in use: uhci_hcd 00:1d.2 USB Controller: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #3 (rev 01) Subsystem: IBM Device 052d Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0 Interrupt: pin C routed to IRQ 11 Region 4: I/O ports at 1840 [size=32] Kernel driver in use: uhci_hcd 00:1d.7 USB Controller: Intel Corporation 82801DB/DBM (ICH4/ICH4-M) USB2 EHCI Controller (rev 01) (prog-if 20) Subsystem: IBM Device 052e Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0 Interrupt: pin D routed to IRQ 10 Region 0: Memory at c0000000 (32-bit, non-prefetchable) [size=1K] Capabilities: <access denied> Kernel driver in use: ehci_hcd 00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev 81) Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B- DisINTx- Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR+ INTx- Latency: 0 Bus: primary=00, secondary=02, subordinate=08, sec-latency=64 I/O behind bridge: 00004000-00008fff Memory behind bridge: c0200000-cfffffff Prefetchable memory behind bridge: e8000000-efffffff Secondary status: 66MHz- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort+ <SERR- <PERR- BridgeCtl: Parity- SERR- NoISA+ VGA- MAbort- >Reset- FastB2B- PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn- Kernel modules: shpchp 00:1f.0 ISA bridge: Intel Corporation 82801DBM (ICH4-M) LPC Interface Bridge (rev 01) Control: I/O+ Mem+ BusMaster+ SpecCycle+ MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0 Kernel modules: iTCO_wdt, intel-rng 00:1f.1 IDE interface: Intel Corporation 82801DBM (ICH4-M) IDE Controller (rev 01) (prog-if 8a [Master SecP PriP]) Subsystem: IBM Device 052d Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0 Interrupt: pin A routed to IRQ 11 Region 0: I/O ports at 01f0 [size=8] Region 1: I/O ports at 03f4 [size=1] Region 2: I/O ports at 0170 [size=8] Region 3: I/O ports at 0374 [size=1] Region 4: I/O ports at 1860 [size=16] Region 5: Memory at 50000000 (32-bit, non-prefetchable) [size=1K] Kernel driver in use: ata_piix 00:1f.3 SMBus: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) SMBus Controller (rev 01) Subsystem: IBM Device 052d Control: I/O+ Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Interrupt: pin B routed to IRQ 5 Region 4: I/O ports at 1880 [size=32] Kernel modules: i2c-i801 00:1f.5 Multimedia audio controller: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (rev 01) Subsystem: IBM Device 0554 Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0 Interrupt: pin B routed to IRQ 10 Region 0: I/O ports at 1c00 [size=256] Region 1: I/O ports at 18c0 [size=64] Region 2: Memory at c0000c00 (32-bit, non-prefetchable) [size=512] Region 3: Memory at c0000800 (32-bit, non-prefetchable) [size=256] Capabilities: <access denied> Kernel driver in use: Intel ICH Kernel modules: snd-intel8x0 00:1f.6 Modem: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Modem Controller (rev 01) Subsystem: IBM Device 0559 Control: I/O+ Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Interrupt: pin B routed to IRQ 10 Region 0: I/O ports at 2400 [size=256] Region 1: I/O ports at 2000 [size=128] Capabilities: <access denied> Kernel modules: snd-intel8x0m 01:00.0 VGA compatible controller: ATI Technologies Inc Radeon Mobility M7 LW [Radeon Mobility 7500] Subsystem: IBM Device 0530 Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping+ SERR+ FastB2B+ DisINTx- Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 66 (2000ns min), Cache Line Size: 32 bytes Interrupt: pin A routed to IRQ 11 Region 0: Memory at e0000000 (32-bit, prefetchable) [size=128M] Region 1: I/O ports at 3000 [size=256] Region 2: Memory at c0100000 (32-bit, non-prefetchable) [size=64K] [virtual] Expansion ROM at c0120000 [disabled] [size=128K] Capabilities: <access denied> Kernel modules: radeonfb 02:00.0 CardBus bridge: Texas Instruments PCI4520 PC card Cardbus Controller (rev 01) Subsystem: IBM Device 0552 Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 168, Cache Line Size: 128 bytes Interrupt: pin A routed to IRQ 11 Region 0: Memory at b0000000 (32-bit, non-prefetchable) [size=4K] Bus: primary=02, secondary=03, subordinate=06, sec-latency=176 Memory window 0: e8000000-ebfff000 (prefetchable) Memory window 1: c4000000-c7fff000 I/O window 0: 00004000-000040ff I/O window 1: 00004400-000044ff BridgeCtl: Parity- SERR- ISA- VGA- MAbort- >Reset+ 16bInt+ PostWrite+ 16-bit legacy interface ports at 0001 Kernel driver in use: yenta_cardbus Kernel modules: yenta_socket 02:00.1 CardBus bridge: Texas Instruments PCI4520 PC card Cardbus Controller (rev 01) Subsystem: IBM Device 0552 Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 168, Cache Line Size: 128 bytes Interrupt: pin B routed to IRQ 10 Region 0: Memory at b1000000 (32-bit, non-prefetchable) [size=4K] Bus: primary=02, secondary=07, subordinate=07, sec-latency=176 Memory window 0: ec000000-effff000 (prefetchable) Memory window 1: c8000000-cbfff000 I/O window 0: 00004800-000048ff I/O window 1: 00004c00-00004cff BridgeCtl: Parity- SERR- ISA- VGA- MAbort- >Reset+ 16bInt+ PostWrite+ 16-bit legacy interface ports at 0001 Kernel driver in use: yenta_cardbus Kernel modules: yenta_socket 02:01.0 Ethernet controller: Intel Corporation 82540EP Gigabit Ethernet Controller (Mobile) (rev 03) Subsystem: IBM Device 0549 Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- Stepping- SERR+ FastB2B- DisINTx- Status: Cap+ 66MHz+ UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 64 (63750ns min), Cache Line Size: 32 bytes Interrupt: pin A routed to IRQ 11 Region 0: Memory at c0220000 (32-bit, non-prefetchable) [size=128K] Region 1: Memory at c0200000 (32-bit, non-prefetchable) [size=64K] Region 2: I/O ports at 8000 [size=64] [virtual] Expansion ROM at c0240000 [disabled] [size=64K] Capabilities: <access denied> Kernel driver in use: e1000 Kernel modules: e1000 02:02.0 Network controller: Intel Corporation PRO/Wireless LAN 2100 3B Mini PCI Adapter (rev 04) Subsystem: Intel Corporation Device 2551 Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- Stepping- SERR+ FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 64 (500ns min, 8500ns max), Cache Line Size: 32 bytes Interrupt: pin A routed to IRQ 11 Region 0: Memory at c0210000 (32-bit, non-prefetchable) [size=4K] Capabilities: <access denied> Kernel driver in use: ipw2100 Kernel modules: ipw2100 [7.6.] SCSI information (from /proc/scsi/scsi) Attached devices: Host: scsi0 Channel: 00 Id: 00 Lun: 00 Vendor: ATA Model: HTS541060G9AT00 Rev: MB3O Type: Direct-Access ANSI SCSI revision: 05 Host: scsi1 Channel: 00 Id: 00 Lun: 00 Vendor: HL-DT-ST Model: RW/DVD GCC-4242N Rev: 0201 Type: CD-ROM ANSI SCSI revision: 05 [7.7.] Other information that might be relevant to the problem (please look in /proc and include all information that you think to be relevant): nothing to report [X.] Other notes, patches, fixes, workarounds: I can't seem to figure it out
When I rmmod usb_storge, then modprobe usb_storage with the device still attached, I get this in dmesg.... [ 2099.854043] usbcore: deregistering interface driver usb-storage [ 2109.966060] Initializing USB Mass Storage driver... [ 2109.971298] ------------[ cut here ]------------ [ 2109.971307] WARNING: at /home/kernel-ppa/mainline/build/fs/proc/generic.c:547 proc_register+0xa0/0x130() [ 2109.971316] Hardware name: 23736YU [ 2109.971321] proc_dir_entry 'scsi/usb-storage' already registered [ 2109.971327] Modules linked in: usb_storage(+) xt_conntrack binfmt_misc radeon drm ipt_MASQUERADE iptable_nat nf_nat nf_conntrack_ipv4 nf_defrag_ipv4 xt_state nf_conntrack ipt_REJECT xt_tcpudp iptable_filter ip_tables x_tables bridge stp lp pcmcia joydev snd_intel8x0 snd_ac97_codec ac97_bus snd_pcm_oss snd_mixer_oss snd_pcm snd_seq_dummy snd_seq_oss snd_seq_midi snd_rawmidi snd_seq_midi_event snd_seq snd_timer snd_seq_device thinkpad_acpi iTCO_wdt iTCO_vendor_support nsc_ircc ipw2100 libipw led_class yenta_socket rsrc_nonstatic pcmcia_core lib80211 intel_agp snd soundcore ppdev psmouse serio_raw nvram irda pcspkr video agpgart snd_page_alloc shpchp parport_pc parport crc_ccitt output reiserfs sha256_generic aes_i586 aes_generic cbc usbhid e1000 dm_crypt [last unloaded: usb_storage] [ 2109.971488] Pid: 4991, comm: modprobe Not tainted 2.6.29-02062904-generic #02062904 [ 2109.971496] Call Trace: [ 2109.971511] [<c013a636>] warn_slowpath+0x86/0xa0 [ 2109.971525] [<c02c1841>] ? sub_alloc+0x61/0x150 [ 2109.971537] [<c01220f8>] ? default_spin_lock_flags+0x8/0x10 [ 2109.971549] [<c04f7d42>] ? _spin_lock_irqsave+0x32/0x50 [ 2109.971560] [<c02c1b80>] ? ida_get_new_above+0x110/0x180 [ 2109.971571] [<c02c1b80>] ? ida_get_new_above+0x110/0x180 [ 2109.971582] [<c02c1ce0>] ? idr_pre_get+0x20/0x50 [ 2109.971592] [<c02c1bfc>] ? ida_get_new+0xc/0x10 [ 2109.971602] [<c01fffd7>] ? get_inode_number+0x47/0xa0 [ 2109.971612] [<c02000d0>] proc_register+0xa0/0x130 [ 2109.971622] [<c0200333>] proc_mkdir_mode+0x33/0x50 [ 2109.971640] [<c020035f>] proc_mkdir+0xf/0x20 [ 2109.971651] [<c036e5f6>] scsi_proc_hostdir_add+0x46/0x80 [ 2109.971662] [<c0362c80>] scsi_host_alloc+0x240/0x2b0 [ 2109.971672] [<c0366580>] ? scsi_error_handler+0x0/0x120 [ 2109.971710] [<f8107aae>] storage_probe+0x1e/0x1b0 [usb_storage] [ 2109.971722] [<c03b7c89>] ? usb_autopm_do_device+0x79/0xf0 [ 2109.971732] [<c03b6cc7>] ? usb_match_one_id+0x27/0xa0 [ 2109.971755] [<c03b82db>] usb_probe_interface+0x9b/0x140 [ 2109.971766] [<c020d482>] ? sysfs_create_link+0x12/0x20 [ 2109.971782] [<c034d256>] really_probe+0x56/0x150 [ 2109.971791] [<c03b6d7b>] ? usb_match_id+0x3b/0x50 [ 2109.971810] [<c034d38b>] driver_probe_device+0x3b/0x50 [ 2109.971820] [<c034d421>] __driver_attach+0x81/0x90 [ 2109.971833] [<c034c909>] bus_for_each_dev+0x49/0x70 [ 2109.971847] [<c034d109>] driver_attach+0x19/0x20 [ 2109.971857] [<c034d3a0>] ? __driver_attach+0x0/0x90 [ 2109.971867] [<c034cf47>] bus_add_driver+0x107/0x1a0 [ 2109.971884] [<c034d702>] driver_register+0x42/0xc0 [ 2109.971896] [<c01baf6e>] ? percpu_free+0x1e/0x30 [ 2109.971909] [<c03b7575>] usb_register_driver+0x75/0xd0 [ 2109.971937] [<f7ffd000>] ? usb_stor_init+0x0/0x41 [usb_storage] [ 2109.971967] [<f7ffd000>] ? usb_stor_init+0x0/0x41 [usb_storage] [ 2109.971991] [<f7ffd027>] usb_stor_init+0x27/0x41 [usb_storage] [ 2109.972032] [<c010111b>] _stext+0x2b/0x160 [ 2109.972045] [<c0186bb8>] ? tracepoint_module_notify+0x28/0x30 [ 2109.972057] [<c04fa69d>] ? notifier_call_chain+0x2d/0x60 [ 2109.972073] [<c01538ad>] ? __blocking_notifier_call_chain+0x4d/0x60 [ 2109.972092] [<c01646c3>] sys_init_module+0x83/0x1b0 [ 2109.972103] [<c010346b>] sysenter_do_call+0x12/0x2f [ 2109.972114] [<c04f0000>] ? get_model_name+0x10/0x100 [ 2109.972121] ---[ end trace 4470547f96b38b4c ]--- [ 2110.005327] usb-storage: probe of 1-3:1.0 failed with error -5 [ 2110.006956] usb-storage: probe of 1-3:1.1 failed with error -5 [ 2110.007782] usb-storage: probe of 1-3:1.2 failed with error -1 [ 2110.008972] usb-storage: probe of 1-3:1.3 failed with error -1 [ 2110.008998] usbcore: registered new interface driver usb-storage [ 2110.009002] USB Mass Storage support registered.
It seems that there is some sort of race condition. I was able to get the usb-storage driver to work, but it still seems to crash. I wrote a basic script to rmmod all the related device drivers, then load them up in a specific order, with a sleep statement. Here is the script: ===== cut ======== rmmod usb_storage rmmod option rmmod usbserial echo "sleeping for 2 seconds to let the drivers unload...." && sleep 2 modprobe option echo "sleeping for 2 seconds to make usb_storage detect the storage device..." && sleep 2 && echo "done sleeping" modprobe usb_storage ===== cut ======== If I set the sleep time to 10 seconds, the usb_storage device isn't detected. If I take out the "sleep 2", then the usb_storage device isn't detected either. So it seems there needs to be a delay after the "option" module is loaded in order for usb_storage to see the storage device. What doesn't make sense is that if you wait more than 10 seconds after the "option" driver is loaded, then usb_storage can't see the storage device. Here is dmesg (something is still crashing): root@rgarcia-desktop:/# dmesg [ 5023.686339] usbcore: deregistering interface driver usb-storage [ 5023.743112] usbcore: deregistering interface driver option [ 5023.743346] option1 ttyUSB1: GSM modem (1-port) converter now disconnected from ttyUSB1 [ 5023.743393] option 1-3:1.1: device disconnected [ 5023.743622] option1 ttyUSB0: GSM modem (1-port) converter now disconnected from ttyUSB0 [ 5023.743667] option 1-3:1.0: device disconnected [ 5023.743703] USB Serial deregistering driver GSM modem (1-port) [ 5023.751374] usbcore: deregistering interface driver usbserial_generic [ 5023.751434] USB Serial deregistering driver generic [ 5023.751474] usbcore: deregistering interface driver usbserial [ 5025.783499] usbcore: registered new interface driver usbserial [ 5025.783541] USB Serial support registered for generic [ 5025.783643] usbcore: registered new interface driver usbserial_generic [ 5025.783650] usbserial: USB Serial Driver core [ 5025.794128] USB Serial support registered for GSM modem (1-port) [ 5025.794228] option 1-3:1.0: GSM modem (1-port) converter detected [ 5025.794466] usb 1-3: GSM modem (1-port) converter now attached to ttyUSB0 [ 5025.794494] option 1-3:1.1: GSM modem (1-port) converter detected [ 5025.794620] usb 1-3: GSM modem (1-port) converter now attached to ttyUSB1 [ 5025.794674] usbcore: registered new interface driver option [ 5025.794680] option: v0.7.2:USB Driver for GSM modems [ 5027.847140] Initializing USB Mass Storage driver... [ 5027.856108] ------------[ cut here ]------------ [ 5027.856117] WARNING: at /home/kernel-ppa/mainline/build/fs/proc/generic.c:547 proc_register+0xa0/0x130() [ 5027.856126] Hardware name: 23736YU [ 5027.856131] proc_dir_entry 'scsi/usb-storage' already registered [ 5027.856137] Modules linked in: usb_storage(+) option usbserial nls_cp437 isofs ppp_deflate zlib_deflate bsd_comp ppp_async xt_conntrack binfmt_misc radeon drm ipt_MASQUERADE iptable_nat nf_nat nf_conntrack_ipv4 nf_defrag_ipv4 xt_state nf_conntrack ipt_REJECT xt_tcpudp iptable_filter ip_tables x_tables bridge stp lp pcmcia joydev snd_intel8x0 snd_ac97_codec ac97_bus snd_pcm_oss snd_mixer_oss snd_pcm snd_seq_dummy snd_seq_oss snd_seq_midi snd_rawmidi snd_seq_midi_event snd_seq snd_timer snd_seq_device thinkpad_acpi iTCO_wdt iTCO_vendor_support nsc_ircc ipw2100 libipw led_class yenta_socket rsrc_nonstatic pcmcia_core lib80211 intel_agp snd soundcore ppdev psmouse serio_raw nvram irda pcspkr video agpgart snd_page_alloc shpchp parport_pc parport crc_ccitt output reiserfs sha256_generic aes_i586 aes_generic cbc usbhid e1000 dm_crypt [last unloaded: usbserial] [ 5027.856315] Pid: 8795, comm: modprobe Tainted: G W 2.6.29-02062904-generic #02062904 [ 5027.856323] Call Trace: [ 5027.856340] [<c013a636>] warn_slowpath+0x86/0xa0 [ 5027.856354] [<c02c1841>] ? sub_alloc+0x61/0x150 [ 5027.856367] [<c01220f8>] ? default_spin_lock_flags+0x8/0x10 [ 5027.856379] [<c04f7d42>] ? _spin_lock_irqsave+0x32/0x50 [ 5027.856390] [<c02c1b80>] ? ida_get_new_above+0x110/0x180 [ 5027.856401] [<c02c1b80>] ? ida_get_new_above+0x110/0x180 [ 5027.856412] [<c02c1ce0>] ? idr_pre_get+0x20/0x50 [ 5027.856422] [<c02c1bfc>] ? ida_get_new+0xc/0x10 [ 5027.856432] [<c01fffd7>] ? get_inode_number+0x47/0xa0 [ 5027.856442] [<c02000d0>] proc_register+0xa0/0x130 [ 5027.856452] [<c0200333>] proc_mkdir_mode+0x33/0x50 [ 5027.856472] [<c020035f>] proc_mkdir+0xf/0x20 [ 5027.856483] [<c036e5f6>] scsi_proc_hostdir_add+0x46/0x80 [ 5027.856494] [<c0362c80>] scsi_host_alloc+0x240/0x2b0 [ 5027.856504] [<c0366580>] ? scsi_error_handler+0x0/0x120 [ 5027.856542] [<f9b0aaae>] storage_probe+0x1e/0x1b0 [usb_storage] [ 5027.856554] [<c03b7c89>] ? usb_autopm_do_device+0x79/0xf0 [ 5027.856564] [<c03b6cc7>] ? usb_match_one_id+0x27/0xa0 [ 5027.856587] [<c03b82db>] usb_probe_interface+0x9b/0x140 [ 5027.856598] [<c020d482>] ? sysfs_create_link+0x12/0x20 [ 5027.856615] [<c034d256>] really_probe+0x56/0x150 [ 5027.856624] [<c03b6d7b>] ? usb_match_id+0x3b/0x50 [ 5027.856643] [<c034d38b>] driver_probe_device+0x3b/0x50 [ 5027.856654] [<c034d421>] __driver_attach+0x81/0x90 [ 5027.856668] [<c034c909>] bus_for_each_dev+0x49/0x70 [ 5027.856682] [<c034d109>] driver_attach+0x19/0x20 [ 5027.856692] [<c034d3a0>] ? __driver_attach+0x0/0x90 [ 5027.856702] [<c034cf47>] bus_add_driver+0x107/0x1a0 [ 5027.856719] [<c034d702>] driver_register+0x42/0xc0 [ 5027.856732] [<c01baf6e>] ? percpu_free+0x1e/0x30 [ 5027.856746] [<c03b7575>] usb_register_driver+0x75/0xd0 [ 5027.856776] [<f9b21000>] ? usb_stor_init+0x0/0x41 [usb_storage] [ 5027.856808] [<f9b21000>] ? usb_stor_init+0x0/0x41 [usb_storage] [ 5027.856834] [<f9b21027>] usb_stor_init+0x27/0x41 [usb_storage] [ 5027.856849] [<c010111b>] _stext+0x2b/0x160 [ 5027.856863] [<c0186bb8>] ? tracepoint_module_notify+0x28/0x30 [ 5027.856874] [<c04fa69d>] ? notifier_call_chain+0x2d/0x60 [ 5027.856891] [<c01538ad>] ? __blocking_notifier_call_chain+0x4d/0x60 [ 5027.856910] [<c01646c3>] sys_init_module+0x83/0x1b0 [ 5027.856921] [<c010346b>] sysenter_do_call+0x12/0x2f [ 5027.856932] [<c04f0000>] ? get_model_name+0x10/0x100 [ 5027.856939] ---[ end trace 4470547f96b38b69 ]--- [ 5030.865579] usb-storage: probe of 1-3:1.2 failed with error -1 [ 5034.864310] scsi81 : SCSI emulation for USB Mass Storage devices [ 5034.866598] usbcore: registered new interface driver usb-storage [ 5034.866610] USB Mass Storage support registered. [ 5034.869852] usb-storage: device found at 10 [ 5034.869860] usb-storage: waiting for device to settle before scanning [ 5040.876527] usb-storage: device scan complete [ 5040.878642] scsi 81:0:0:0: Direct-Access HUAWEI MMC Storage 2.31 PQ: 0 ANSI: 2 [ 5040.909212] sd 81:0:0:0: [sdb] 246016 512-byte hardware sectors: (125 MB/120 MiB) [ 5040.936611] sd 81:0:0:0: [sdb] Write Protect is off [ 5040.936623] sd 81:0:0:0: [sdb] Mode Sense: 0f 0e 00 00 [ 5040.936630] sd 81:0:0:0: [sdb] Assuming drive cache: write through [ 5040.944956] sd 81:0:0:0: [sdb] 246016 512-byte hardware sectors: (125 MB/120 MiB) [ 5040.947949] sd 81:0:0:0: [sdb] Write Protect is off [ 5040.947959] sd 81:0:0:0: [sdb] Mode Sense: 0f 0e 00 00 [ 5040.947966] sd 81:0:0:0: [sdb] Assuming drive cache: write through [ 5040.947978] sdb: sdb4 [ 5040.954044] sd 81:0:0:0: [sdb] Attached SCSI removable disk [ 5040.954216] sd 81:0:0:0: Attached scsi generic sg2 type 0
(switched to email. Please respond via emailed reply-to-all, not via the bugzilla web interface). On Wed, 10 Jun 2009 10:05:56 GMT bugzilla-daemon@bugzilla.kernel.org wrote: > http://bugzilla.kernel.org/show_bug.cgi?id=13496 > > Summary: usb-storage driver is crashing on E220 HSDPA Modem / > E270 HSDPA/HSUPA Modem > Product: Drivers > Version: 2.5 > Kernel Version: 2.6.28 and 2.6.29 > Platform: All > OS/Version: Linux > Tree: Mainline > Status: NEW > Severity: high > Priority: P1 > Component: USB > AssignedTo: greg@kroah.com > ReportedBy: ozstriker78@gmail.com > Regression: No > > > ... > > [ 200.691615] option 1-3:1.1: GSM modem (1-port) converter detected > [ 200.691665] usb 1-3: GSM modem (1-port) converter now attached to ttyUSB1 > [ 200.691685] usbcore: registered new interface driver option > [ 200.691687] option: v0.7.2:USB Driver for GSM modems > [ 204.467771] BUG: scheduling while atomic: swapper/0/0x10010000 > [ 204.467781] Modules linked in: option usbserial usb_storage xt_conntrack > binfmt_misc radeon drm ipt_MASQUERADE iptable_nat nf_nat nf_conntrack_ipv4 > nf_defrag_ipv4 xt_state nf_conntrack ipt_REJECT xt_tcpudp iptable_filter > ip_tables x_tables bridge stp lp pcmcia joydev snd_intel8x0 snd_ac97_codec > ac97_bus snd_pcm_oss snd_mixer_oss snd_pcm snd_seq_dummy snd_seq_oss > snd_seq_midi snd_rawmidi snd_seq_midi_event snd_seq snd_timer snd_seq_device > thinkpad_acpi iTCO_wdt iTCO_vendor_support nsc_ircc ipw2100 libipw led_class > yenta_socket rsrc_nonstatic pcmcia_core lib80211 intel_agp snd soundcore > ppdev > psmouse serio_raw nvram irda pcspkr video agpgart snd_page_alloc shpchp > parport_pc parport crc_ccitt output reiserfs sha256_generic aes_i586 > aes_generic cbc usbhid e1000 dm_crypt > [ 204.467941] > [ 204.467949] Pid: 0, comm: swapper Not tainted (2.6.29-02062904-generic > #02062904) 23736YU > [ 204.467958] EIP: 0060:[<c0315dec>] EFLAGS: 00000202 CPU: 0 > [ 204.467973] EIP is at acpi_idle_enter_simple+0xfd/0x138 > [ 204.467981] EAX: c07c2cd8 EBX: 00000d2f ECX: 0000002f EDX: 01183000 > [ 204.467988] ESI: 00000000 EDI: f6ec6450 EBP: c0739f7c ESP: c0739f64 > [ 204.467996] DS: 007b ES: 007b FS: 00d8 GS: 0000 SS: 0068 > [ 204.468003] CR0: 8005003b CR2: b7f34000 CR3: 34fc0000 CR4: 00000690 > [ 204.468011] DR0: 00000000 DR1: 00000000 DR2: 00000000 DR3: 00000000 > [ 204.468018] DR6: ffff0ff0 DR7: 00000400 > [ 204.468023] Call Trace: > [ 204.468036] [<c0315e8a>] acpi_idle_enter_bm+0x63/0x1fd > [ 204.468049] [<c04068cf>] cpuidle_idle_call+0x6f/0xc0 > [ 204.468059] [<c0101eb0>] cpu_idle+0x60/0xa0 > [ 204.468071] [<c04e5785>] rest_init+0x55/0x60 This looks like a lock imbalance - a spinlock or an rwlock. Could also be a preempt_disable() imbalance.
On Mon, 15 Jun 2009, Andrew Morton wrote: > > http://bugzilla.kernel.org/show_bug.cgi?id=13496 > > > > Summary: usb-storage driver is crashing on E220 HSDPA Modem / > > E270 HSDPA/HSUPA Modem This bug report contains two separate problems. This is the first one: > > [ 204.467771] BUG: scheduling while atomic: swapper/0/0x10010000 .... > > [ 204.467973] EIP is at acpi_idle_enter_simple+0xfd/0x138 ... > > [ 204.468023] Call Trace: > > [ 204.468036] [<c0315e8a>] acpi_idle_enter_bm+0x63/0x1fd > > [ 204.468049] [<c04068cf>] cpuidle_idle_call+0x6f/0xc0 > > [ 204.468059] [<c0101eb0>] cpu_idle+0x60/0xa0 > > [ 204.468071] [<c04e5785>] rest_init+0x55/0x60 > > This looks like a lock imbalance - a spinlock or an rwlock. Could also > be a preempt_disable() imbalance. Whatever it is, it is unlikely to be related to usb-storage. The second problem is this: [ 2109.971307] WARNING: at /home/kernel-ppa/mainline/build/fs/proc/generic.c:547 proc_register+0xa0/0x130() [ 2109.971316] Hardware name: 23736YU [ 2109.971321] proc_dir_entry 'scsi/usb-storage' already registered This was caused by a bug, not in usb-storage, but in the SCSI core. The bug was in a patch I wrote. In fact, it was in the second version of the patch; the first version probably was correct. Here is a combined patch (it reverts the second and adds the first). Does it fix the "proc_dir_entry already registered" problem? Alan Stern Index: usb-2.6/drivers/scsi/hosts.c =================================================================== --- usb-2.6.orig/drivers/scsi/hosts.c +++ usb-2.6/drivers/scsi/hosts.c @@ -176,6 +176,7 @@ void scsi_remove_host(struct Scsi_Host * transport_unregister_device(&shost->shost_gendev); device_unregister(&shost->shost_dev); device_del(&shost->shost_gendev); + scsi_proc_hostdir_rm(shost->hostt); } EXPORT_SYMBOL(scsi_remove_host); @@ -205,9 +206,10 @@ int scsi_add_host(struct Scsi_Host *shos if (error) goto fail; + scsi_proc_hostdir_add(shost->hostt); + if (!shost->shost_gendev.parent) shost->shost_gendev.parent = dev ? dev : &platform_bus; - error = device_add(&shost->shost_gendev); if (error) goto out; @@ -258,6 +260,7 @@ int scsi_add_host(struct Scsi_Host *shos out_del_gendev: device_del(&shost->shost_gendev); out: + scsi_proc_hostdir_rm(shost->hostt); scsi_destroy_command_freelist(shost); fail: return error; @@ -269,8 +272,6 @@ static void scsi_host_dev_release(struct struct Scsi_Host *shost = dev_to_shost(dev); struct device *parent = dev->parent; - scsi_proc_hostdir_rm(shost->hostt); - if (shost->ehandler) kthread_stop(shost->ehandler); if (shost->work_q) @@ -408,7 +409,6 @@ struct Scsi_Host *scsi_host_alloc(struct goto fail_kfree; } - scsi_proc_hostdir_add(shost->hostt); return shost; fail_kfree:
All USB bugs should be sent to the linux-usb@vger.kernel.org mailing list, and not entered into bugzilla. Please bring this issue up there, if it is still a problem in the latest kernel release.