Comment 22 for bug 352197

Revision history for this message
tarabe_22 (tarabe22) wrote :

Get so many disk timeouts that make the system unusable, problem encountered with a sony laptop (lspci follows)

root@modugno:~# lspci
00:00.0 Host bridge: Intel Corporation Mobile 915GM/PM/GMS/910GML Express Processor to DRAM Controller (rev 03)
00:02.0 VGA compatible controller: Intel Corporation Mobile 915GM/GMS/910GML Express Graphics Controller (rev 03)
00:02.1 Display controller: Intel Corporation Mobile 915GM/GMS/910GML Express Graphics Controller (rev 03)
00:1b.0 Audio device: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) High Definition Audio Controller (rev 03)
00:1d.0 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #1 (rev 03)
00:1d.1 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #2 (rev 03)
00:1d.2 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #3 (rev 03)
00:1d.3 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #4 (rev 03)
00:1d.7 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB2 EHCI Controller (rev 03)
00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev d3)
00:1f.0 ISA bridge: Intel Corporation 82801FBM (ICH6M) LPC Interface Bridge (rev 03)
00:1f.1 IDE interface: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) IDE Controller (rev 03)
00:1f.2 IDE interface: Intel Corporation 82801FBM (ICH6M) SATA Controller (rev 03)
00:1f.3 SMBus: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) SMBus Controller (rev 03)
06:05.0 CardBus bridge: Texas Instruments PCI7420 CardBus Controller
06:05.2 FireWire (IEEE 1394): Texas Instruments PCI7x20 1394a-2000 OHCI Two-Port PHY/Link-Layer Controller
06:05.3 Mass storage controller: Texas Instruments PCI7420/7620 Combo CardBus, 1394a-2000 OHCI and SD/MS-Pro Controller
06:08.0 Ethernet controller: Intel Corporation 82562ET/EZ/GT/GZ - PRO/100 VE (LOM) Ethernet Controller Mobile (rev 03)
06:0b.0 Network controller: Intel Corporation PRO/Wireless 2200BG Network Connection (rev 05)

root@modugno:~# lspci -vvv -s 00:1f.1
00:1f.1 IDE interface: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) IDE Controller (rev 03) (prog-if 8a [Master SecP PriP])
 Subsystem: Sony Corporation Unknown device 81b9
 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 B routed to IRQ 21
 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 1810 [size=16]

root@modugno:~# lspci -vvv -s 00:1f.2
00:1f.2 IDE interface: Intel Corporation 82801FBM (ICH6M) SATA Controller (rev 03) (prog-if 8f [Master SecP SecO PriP PriO])
 Subsystem: Sony Corporation Unknown device 81ba
 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 B routed to IRQ 21
 Region 0: I/O ports at 18c8 [size=8]
 Region 1: I/O ports at 18c0 [size=4]
 Region 2: I/O ports at 18a8 [size=8]
 Region 3: I/O ports at 180c [size=4]
 Region 4: I/O ports at 18b0 [size=16]
 Region 5: Memory at b0004400 (32-bit, non-prefetchable) [size=1K]
 Capabilities: [70] 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-

After some testing, kernels that have ATA_PIIX and SATA_AHCI compiled as modules do not get timeouts

Work properly

root@# egrep -i "ahci|ata_piix" /boot/config-2.6.24-25-generic
CONFIG_ATA_PIIX=m
CONFIG_SATA_AHCI=m

Gets timeouts

root@# egrep -i "ahci|ata_piix" /mnt/hd/boot/config-2.6.31-14-generic
CONFIG_SATA_AHCI=y
CONFIG_ATA_PIIX=y

This is also true for other kernels on other distros, for example (f10 kernel)

root@:# egrep -i "ahci|ata_piix" /boot/config-2.6.27.5-117.fc10.i686
CONFIG_SATA_AHCI=y
CONFIG_ATA_PIIX=y

My problem goes away if I rebuild the kernel with these two as modules and do not load ahci in initrd

root@:# lsmod | egrep -i "ahci|ata_piix"
ata_piix 19588 2
libata 159728 3 ata_generic,pata_acpi,ata_piix