Bug 3266 - Scsi modules hang on firewire device reconnect
Summary: Scsi modules hang on firewire device reconnect
Status: CLOSED PATCH_ALREADY_AVAILABLE
Alias: None
Product: Drivers
Classification: Unclassified
Component: IEEE1394 (show other bugs)
Hardware: i386 Linux
: P2 normal
Assignee: Stefan Richter
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-08-24 10:50 UTC by Shannon Field
Modified: 2006-12-12 14:28 UTC (History)
1 user (show)

See Also:
Kernel Version: 2.6.8.1, 2.6.8, 2.6.7, 2.6.6
Subsystem:
Regression: ---
Bisected commit-id:


Attachments
kernel-config (29.46 KB, text/plain)
2004-08-24 16:18 UTC, Shannon Field
Details

Description Shannon Field 2004-08-24 10:50:18 UTC
Distribution: Gentoo

Hardware Environment: Dell Inspiron 8000, PIII 900mhz, 256 ram, internal cd-rw,
module dvd/floppy, external TDK IndiDVD-RW

Problem Description:
When disconnect, and reconnecting my external DVD-RW drive I noticed that the
drive is not recognized. I've tried this with several different kernel
configurations, and kernels versions  = 2.6.8.1, 2.6.8, 2.6.7, 2.6.6 

If I try to unload the sr_mod module, rmmod just hangs. Sbp2 and all firewire
support is currently compiled into my kernel, but I had tried it as a module and
has the same behavior (hanging on rmmod). I am able to unload the sr_mod module
before I disconnect the drive, in this case reconnecting the drive works like
normal.

I'm currently at work, when I get home I can attach my kernel config, and proc
information. Here is my dmesg output for now:

**After plugging in drive the first time**
ohci1394: fw-host0: SelfID received, but NodeID invalid (probably new bus reset
occurred): 0000FFC0
ieee1394: Node changed: 0-00:1023 -> 0-01:1023
ieee1394: Node resumed: ID:BUS[0-01:1023]  GUID[0010100345c4bd87]
ieee1394: The root node is not cycle master capable; selecting a new root node
and resetting...
ieee1394: Node changed: 0-01:1023 -> 0-00:1023
ieee1394: Node changed: 0-00:1023 -> 0-01:1023
scsi0 : SCSI emulation for IEEE-1394 SBP-2 Devices
ieee1394: sbp2: Logged into SBP-2 device
ieee1394: Node 0-00:1023: Max speed [S400] - Max payload [2048]
  Vendor: TDK       Model: DVDRW840G         Rev: 1.03
  Type:   CD-ROM                             ANSI SCSI revision: 02
Attached scsi generic sg0 at scsi0, channel 0, id 0, lun 0,  type 5
sr0: scsi3-mmc drive: 62x/62x writer cd/rw xa/form2 cdda tray
Attached scsi CD-ROM sr0 at scsi0, channel 0, id 0, lun 0 

***After disconnecting Drive***
ieee1394: Node changed: 0-01:1023 -> 0-00:1023
ieee1394: Node suspended: ID:BUS[0-00:1023]  GUID[0010100345c4bd87] 

***After reconnecting Drive***
ohci1394: fw-host0: SelfID received, but NodeID invalid (probably new bus reset
occurred): 0000FFC0 


Steps to reproduce:
Connect External TDK Drive, Disconnect, Then reconnect. Notice upon reconnection
no device nodes were created. Try 'rmmod sr_mod'.
Comment 1 Shannon Field 2004-08-24 16:18:47 UTC
Created attachment 3561 [details]
kernel-config

Current running kernel with scsi firewire dvdrw reconnect problem
Comment 2 Shannon Field 2004-08-24 16:32:17 UTC
THis is all the system information when the device is properly connected and
recognized:


Here is my lsmod output
sr_mod                 19044  0
nvidia               2074504  14
prism2_cs              77256  1
p80211                 31760  1 prism2_cs
ds                     20104  5 prism2_cs
e100                   31968  0
yenta_socket           21248  1
pcmcia_core            66032  3 prism2_cs,ds,yenta_socket
apm                    18448  2
snd_maestro3           25736  2

-------------------------------------
root@lapdog X11 # cat /proc/cpuinfo
processor       : 0
vendor_id       : GenuineIntel
cpu family      : 6
model           : 8
model name      : Pentium III (Coppermine)
stepping        : 10
cpu MHz         : 898.210
cache size      : 256 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 pae mce cx8 sep mtrr pge mca cmov pat
pse36 mmx fxsr sse
bogomips        : 1777.66

------------------------------------

root@lapdog X11 # cat /proc/ioports
0000-001f : dma1
0020-0021 : pic1
0040-005f : timer
0060-006f : keyboard
0080-008f : dma page reg
00a0-00a1 : pic2
00c0-00df : dma2
00f0-00ff : fpu
0100-013f : prism2_cs
0170-0177 : ide1
01f0-01f7 : ide0
0376-0376 : ide1
03c0-03df : vga+
03f6-03f6 : ide0
03f8-03ff : serial
0800-087f : 0000:00:1f.0
0880-08bf : 0000:00:1f.0
0cf8-0cff : PCI conf1
4000-40ff : PCI CardBus #09
4400-44ff : PCI CardBus #09
4800-48ff : PCI CardBus #0d
4c00-4cff : PCI CardBus #0d
bce0-bcff : 0000:00:1f.2
  bce0-bcff : uhci_hcd
bfa0-bfaf : 0000:00:1f.1
  bfa0-bfa7 : ide0
  bfa8-bfaf : ide1
c000-cfff : PCI Bus #01
dc00-dcff : 0000:02:03.0
  dc00-dcff : Maestro3
e000-efff : PCI Bus #08
  e800-e8ff : 0000:08:08.0
  ecb8-ecbf : 0000:08:08.0
  ecc0-ecff : 0000:08:04.0
    ecc0-ecff : e100


-------------------------------------
root@lapdog X11 # cat /proc/iomem
00000000-0009fbff : System RAM
0009fc00-0009ffff : reserved
000a0000-000bffff : Video RAM area
000c0000-000ccfff : Video ROM
000d0000-000d17ff : Adapter ROM
000f0000-000fffff : System ROM
00100000-17fea7ff : System RAM
  00100000-003b1b76 : Kernel code
  003b1b77-004afeff : Kernel data
17fea800-17ffffff : reserved
18000000-18000fff : 0000:02:0f.0
  18000000-18000fff : yenta_socket
18001000-18001fff : 0000:02:0f.1
  18001000-18001fff : yenta_socket
18400000-187fffff : PCI CardBus #09
18800000-18bfffff : PCI CardBus #09
18c00000-18ffffff : PCI CardBus #0d
19000000-193fffff : PCI CardBus #0d
60000000-60000fff : card services
e0000000-e7ffffff : PCI Bus #01
  e0000000-e7ffffff : 0000:01:00.0
e8000000-ebffffff : 0000:00:00.0
f6ff8000-f6ffbfff : 0000:02:0f.2
f6ffd800-f6ffdfff : 0000:02:0f.2
  f6ffd800-f6ffdfff : ohci1394
f6ffe000-f6ffffff : 0000:02:03.0
f8000000-f9ffffff : PCI Bus #08
  f8e00000-f8efffff : 0000:08:04.0
    f8e00000-f8efffff : e100
  f8ffec00-f8ffecff : 0000:08:08.0
  f8fff000-f8ffffff : 0000:08:04.0
    f8fff000-f8ffffff : e100
fc000000-fdffffff : PCI Bus #01
  fc000000-fcffffff : 0000:01:00.0
feea0000-feefffff : reserved
ffb80000-ffffffff : reserved

---------------------------------------------
# cat /proc/scsi/scsi
Attached devices:
Host: scsi7 Channel: 00 Id: 00 Lun: 00
  Vendor: TDK      Model: DVDRW840G        Rev: 1.03
  Type:   CD-ROM                           ANSI SCSI revision: 02
root@lapdog X11 #

**NOTE: the same command ran after the device was unplugged and repluged, hangs
---------------------------------
# lspci -vvv
0000:00:00.0 Host bridge: Intel Corp. 82815 815 Chipset Host Bridge and Memory
Controller Hub (rev 02)
        Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR+ FastB2B-
        Status: Cap+ 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort-
<MAbort+ >SERR- <PERR-
        Latency: 0
        Region 0: Memory at e8000000 (32-bit, prefetchable)
        Capabilities: [88] #09 [f104]
        Capabilities: [a0] AGP version 2.0
                Status: RQ=32 Iso- ArqSz=0 Cal=0 SBA+ ITACoh- GART64- HTrans-
64bit- FW- AGP3- Rate=x1,x2,x4
                Command: RQ=1 ArqSz=0 Cal=0 SBA- AGP- GART64- 64bit- FW- Rate=<none>

0000:00:01.0 PCI bridge: Intel Corp. 82815 815 Chipset AGP Bridge (rev 02)
(prog-if 00 [Normal decode])
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR+ FastB2B-
        Status: Cap- 66Mhz+ UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort-
<MAbort- >SERR- <PERR-
        Latency: 32
        Bus: primary=00, secondary=01, subordinate=01, sec-latency=32
        I/O behind bridge: 0000c000-0000cfff
        Memory behind bridge: fc000000-fdffffff
        Prefetchable memory behind bridge: e0000000-e7ffffff
        Expansion ROM at 0000c000 [disabled] [size=4K]
        BridgeCtl: Parity- SERR- NoISA+ VGA+ MAbort- >Reset- FastB2B-

0000:00:1e.0 PCI bridge: Intel Corp. 82801 PCI Bridge (rev 03) (prog-if 00
[Normal decode])
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR+ FastB2B-
        Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort-
<MAbort- >SERR- <PERR-
        Latency: 0
        Bus: primary=00, secondary=02, subordinate=10, sec-latency=32
        I/O behind bridge: 0000d000-0000ffff
        Memory behind bridge: f2000000-fbffffff
        Prefetchable memory behind bridge: fff00000-000fffff
        BridgeCtl: Parity- SERR+ NoISA+ VGA- MAbort- >Reset- FastB2B-

0000:00:1f.0 ISA bridge: Intel Corp. 82801BAM ISA Bridge (LPC) (rev 03)
        Control: I/O+ Mem+ BusMaster+ SpecCycle+ MemWINV- VGASnoop- ParErr-
Stepping- SERR+ FastB2B-
        Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR-
        Latency: 0

0000:00:1f.1 IDE interface: Intel Corp. 82801BAM IDE U100 (rev 03) (prog-if 80
[Master])
        Subsystem: Intel Corp.: Unknown device 4541
        Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR- FastB2B-
        Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR-
        Latency: 0
        Region 4: I/O ports at bfa0 [size=16]

0000:00:1f.2 USB Controller: Intel Corp. 82801BA/BAM USB (Hub #1) (rev 03)
(prog-if 00 [UHCI])
        Subsystem: Intel Corp.: Unknown device 4541
        Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR- FastB2B-
        Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR-
        Latency: 0
        Interrupt: pin D routed to IRQ 11
        Region 4: I/O ports at bce0 [size=32]

0000:01:00.0 VGA compatible controller: nVidia Corporation NV11 [GeForce2 Go]
(rev b2) (prog-if 00 [VGA])
        Subsystem: Dell: Unknown device 00a4
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop+ ParErr-
Stepping- SERR- FastB2B-
        Status: Cap+ 66Mhz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR-
        Latency: 248 (1250ns min, 250ns max)
        Interrupt: pin A routed to IRQ 11
        Region 0: Memory at fc000000 (32-bit, non-prefetchable)
        Region 1: Memory at e0000000 (32-bit, prefetchable) [size=128M]
        Capabilities: [60] Power Management version 2
                Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA
PME(D0-,D1-,D2-,D3hot-,D3cold-)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-
        Capabilities: [44] AGP version 2.0
                Status: RQ=32 Iso- ArqSz=0 Cal=0 SBA- ITACoh- GART64- HTrans-
64bit- FW+ AGP3- Rate=x1,x2,x4
                Command: RQ=1 ArqSz=0 Cal=0 SBA- AGP- GART64- 64bit- FW- Rate=<none>

0000:02:03.0 Multimedia audio controller: ESS Technology ES1983S Maestro-3i PCI
Audio Accelerator (rev 10)
        Subsystem: Dell: Unknown device 00a4
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR- FastB2B-
        Status: Cap+ 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR-
        Latency: 32 (500ns min, 6000ns max)
        Interrupt: pin A routed to IRQ 5
        Region 0: I/O ports at dc00
        Region 1: Memory at f6ffe000 (32-bit, non-prefetchable) [size=8K]
        Capabilities: [c0] Power Management version 2
                Flags: PMEClk- DSI+ D1+ D2+ AuxCurrent=0mA
PME(D0-,D1+,D2+,D3hot+,D3cold-)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-

0000:02:06.0 PCI bridge: Actiontec Electronics Inc Mini-PCI bridge (rev 11)
(prog-if 00 [Normal decode])
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR- FastB2B-
        Status: Cap+ 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR-
        Latency: 32, cache line size 08
        Bus: primary=02, secondary=08, subordinate=08, sec-latency=32
        I/O behind bridge: 0000e000-0000efff
        Memory behind bridge: f8000000-f9ffffff
        Prefetchable memory behind bridge: fff00000-000fffff
        Expansion ROM at 0000e000 [disabled] [size=4K]
        BridgeCtl: Parity- SERR+ NoISA+ VGA- MAbort- >Reset- FastB2B-
        Capabilities: [80] Power Management version 2
                Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA
PME(D0-,D1+,D2+,D3hot+,D3cold+)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-
                Bridge: PM- B3+
        Capabilities: [90] #06 [0000]

0000:02:0f.0 CardBus bridge: Texas Instruments PCI4451 PC card Cardbus Controller
        Subsystem: Dell: Unknown device 00a4
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR- FastB2B-
        Status: Cap+ 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR+
        Latency: 168, cache line size 08
        Interrupt: pin A routed to IRQ 11
        Region 0: Memory at 18000000 (32-bit, non-prefetchable)
        Bus: primary=02, secondary=09, subordinate=0c, sec-latency=176
        Memory window 0: 18400000-187ff000 (prefetchable)
        Memory window 1: 18800000-18bff000
        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

0000:02:0f.1 CardBus bridge: Texas Instruments PCI4451 PC card Cardbus Controller
        Subsystem: Dell: Unknown device 00a4
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR- FastB2B-
        Status: Cap+ 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR-
        Latency: 168, cache line size 08
        Interrupt: pin A routed to IRQ 11
        Region 0: Memory at 18001000 (32-bit, non-prefetchable)
        Bus: primary=02, secondary=0d, subordinate=10, sec-latency=176
        Memory window 0: 18c00000-18fff000 (prefetchable)
        Memory window 1: 19000000-193ff000
        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

0000:02:0f.2 FireWire (IEEE 1394): Texas Instruments PCI4451 IEEE-1394
Controller (prog-if 10 [OHCI])
        Subsystem: Dell: Unknown device 00a4
        Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr-
Stepping- SERR+ FastB2B-
        Status: Cap+ 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR+
        Latency: 32 (500ns min, 1000ns max), cache line size 08
        Interrupt: pin A routed to IRQ 11
        Region 0: Memory at f6ffd800 (32-bit, non-prefetchable)
        Region 1: Memory at f6ff8000 (32-bit, non-prefetchable) [size=16K]
        Capabilities: [44] Power Management version 2
                Flags: PMEClk- DSI- D1- D2+ AuxCurrent=0mA
PME(D0-,D1-,D2+,D3hot+,D3cold-)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-

0000:08:04.0 Ethernet controller: Intel Corp. 82557/8/9 [Ethernet Pro 100] (rev 08)
        Subsystem: Actiontec Electronics Inc EtherExpress PRO/100B (TX) (MiniPCI
Ethernet+Modem)
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr-
Stepping- SERR+ FastB2B-
        Status: Cap+ 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR-
        Latency: 32 (2000ns min, 14000ns max), cache line size 08
        Interrupt: pin A routed to IRQ 11
        Region 0: Memory at f8fff000 (32-bit, non-prefetchable) [size=f9000000]
        Region 1: I/O ports at ecc0 [size=64]
        Region 2: Memory at f8e00000 (32-bit, non-prefetchable) [size=1M]
        Expansion ROM at 00100000 [disabled]
        Capabilities: [dc] Power Management version 2
                Flags: PMEClk- DSI+ D1+ D2+ AuxCurrent=0mA
PME(D0+,D1+,D2+,D3hot+,D3cold+)
                Status: D0 PME-Enable+ DSel=0 DScale=2 PME-

0000:08:08.0 Communication controller: Agere Systems (former Lucent
Microelectronics) WinModem 56k (rev 01)
        Subsystem: Actiontec Electronics Inc LT WinModem 56k (MiniPCI
Ethernet+Modem)
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR+ FastB2B-
        Status: Cap+ 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR-
        Latency: 0 (63000ns min, 3500ns max)
        Interrupt: pin A routed to IRQ 11
        Region 0: Memory at f8ffec00 (32-bit, non-prefetchable)
        Region 1: I/O ports at ecb8 [size=8]
        Region 2: I/O ports at e800 [size=256]
        Capabilities: [f8] Power Management version 2
                Flags: PMEClk- DSI+ D1- D2+ AuxCurrent=0mA
PME(D0-,D1-,D2+,D3hot+,D3cold+)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-

---------------------------------------------------

If any more information is needed let me know.

-Thanks
Shannon
Comment 3 Adrian Bunk 2006-12-12 11:36:39 UTC
Is this issue still present in kernel 2.6.19?
Comment 4 Stefan Richter 2006-12-12 14:24:46 UTC
These bugs have been fixed, to the best of my knowledge. The most often
encountered ones in Linux 2.6.14, some rarer ones in subsequent releases.
Comment 5 Stefan Richter 2006-12-12 14:28:32 UTC
(Shannon, please reopen the bug in the highly unlikely case that the problem is
still there.)

Note You need to log in before you can comment on or make changes to this bug.