Skip to contentSkip to conversation

Sometimes ata_piix fails to detect second SATA disk

DISCUSSION Niccolo Rigacci 2 participants 3 messages Jun 18, 2006 – Jun 19, 2006 libata

lore
Share & tools
lore
#0 lore raw

I'm trying to debug a strange problem on an IBM xSeries 206m where I installed a Debian Testing with a self-compiled Linux kernel 2.6.15.

I have two SATA disks (Hitachi Deskstart HDS728080PLA380) 80 Gb, atatched to the ICH7 controller:

0000:00:1f.1 IDE interface: Intel Corporation 82801G
(ICH7 Family) IDE Controller (rev 01)
0000:00:1f.2 IDE interface: Intel Corporation 82801GB/GR/GH
(ICH7 Family) Serial ATA Storage Controllers cc=IDE (rev 01)

Sometimes the kernel at boot time does not detect the second hard disk, as in this case:

libata version 1.20 loaded.
ata_piix 0000:00:1f.2: version 1.05
ACPI: PCI Interrupt 0000:00:1f.2[B] -> GSI 19 (level, low) -> IRQ 225
PCI: Setting latency timer of device 0000:00:1f.2 to 64
ata1: SATA max UDMA/133 cmd 0x30C8 ctl 0x30BE bmdma 0x3090 irq 225
ata2: SATA max UDMA/133 cmd 0x30C0 ctl 0x30BA bmdma 0x3098 irq 225
ata1: dev 0 cfg 49:2f00 82:346b 83:7fe9 84:4773 85:3469

      86:3c01 87:4763 88:207f

ata1: dev 0 ATA-7, max UDMA/133, 156312576 sectors: LBA48
ata1: dev 0 configured for UDMA/133
scsi0 : ata_piix
ata2: SATA port has no device.
scsi1 : ata_piix
Vendor: ATA Model: HDS728080PLA380 Rev: PF2O
Type: Direct-Access ANSI SCSI revision: 05
SCSI device sda: 156312576 512-byte hdwr sectors (80032 MB) SCSI device sda: drive cache: write back
SCSI device sda: 156312576 512-byte hdwr sectors (80032 MB) SCSI device sda: drive cache: write back
sda: sda1 sda2 < sda5 sda6 sda7 >
sd 0:0:0:0: Attached scsi disk sda

Strange enough, the bug seems to appear only if ata_piix is compiled staically into the kernel. If I use a kernel with ata_piix compiled as a module, both disks are always detected (see below the log).

I tried to modify - into the ata_piix.c - the function piix_sata_phy_reset(): I repeated the piix_sata_probe() call up to 100 times if it fails, with an udelay(10) between. No luck: the "SATA port has no device" message sometimes appears.

Any idea on how solve or debug this problem?

Thanks.

This is a log where both disks are detected:

ata_piix 0000:00:1f.2: version 1.05
ACPI: PCI Interrupt 0000:00:1f.2[B] -> GSI 19 (level, low) -> IRQ 50
PCI: Setting latency timer of device 0000:00:1f.2 to 64
ata1: SATA max UDMA/133 cmd 0x30C8 ctl 0x30BE bmdma 0x3090 irq 50
ata2: SATA max UDMA/133 cmd 0x30C0 ctl 0x30BA bmdma 0x3098 irq 50
hda: ATAPI 48X CD-ROM drive, 128kB Cache, UDMA(33) Uniform CD-ROM driver Revision: 3.20
ata1: dev 0 cfg 49:2f00 82:346b 83:7fe9 84:4773 85:3469

      86:3c01 87:4763 88:207f

ata1: dev 0 ATA-7, max UDMA/133, 156312576 sectors: LBA48
ata1: dev 0 configured for UDMA/133
scsi0 : ata_piix
ata2: dev 0 cfg 49:2f00 82:346b 83:7fe9 84:4773 85:3469

      86:3c01 87:4763 88:207f
ata2: dev 0 ATA-7, max UDMA/133, 156312576 sectors: LBA48
ata2: dev 0 configured for UDMA/133
scsi1 : ata_piix
  Vendor: ATA      Model: HDS728080PLA380  Rev: PF2O
  Type:   Direct-Access                    ANSI SCSI revision: 05
  Vendor: ATA      Model: HDS728080PLA380  Rev: PF2O
  Type:   Direct-Access                    ANSI SCSI revision: 05

SCSI device sda: 156312576 512-byte hdwr sectors (80032 MB) SCSI device sda: drive cache: write back
SCSI device sda: 156312576 512-byte hdwr sectors (80032 MB) SCSI device sda: drive cache: write back
sda: sda1 sda2 < sda5 sda6 sda7 >
sd 0:0:0:0: Attached scsi disk sda
SCSI device sdb: 156312576 512-byte hdwr sectors (80032 MB) SCSI device sdb: drive cache: write back
SCSI device sdb: 156312576 512-byte hdwr sectors (80032 MB) SCSI device sdb: drive cache: write back
sdb: sdb1 sdb2 < sdb5 sdb6 sdb7 >
sd 1:0:0:0: Attached scsi disk sdb

Signature · 4 lines
Niccolo Rigacci
Firenze - Italy

Iraq, missione di pace: 38475 morti - www.iraqbodycount.net
#1 lore raw
Quoted 1 line · Niccolo Rigacci

I'm trying to debug a strange problem on an IBM xSeries 206m where I installed a Debian Testing with a self-compiled Linux kernel 2.6.15.

Can you try just released 2.6.17? ata_piix probing received some updates during 2.6.16 devel cycle and some fixes during .17.

Signature · 1 line
tejun
#2 lore raw
Quoted 7 lines · Tejun Heo
Quoted 3 lines · Niccolo Rigacci

I'm trying to debug a strange problem on an IBM xSeries 206m where I installed a Debian Testing with a self-compiled Linux kernel 2.6.15.

Can you try just released 2.6.17? ata_piix probing received some updates during 2.6.16 devel cycle and some fixes during .17.

I started to test 2.6.17 vanilla last night, it seems to resolve the problem.

I will post a new message in a day or two to confirm that the problem is fixed.

Thanks for the great work to the kernel guys. Sorry for bothering you before testing the latest version, I can't believe how much work is done in just two minor releases!

I hope my mail will remains for people googling on this problem.

Signature · 4 lines
Niccolo Rigacci
Firenze - Italy

Iraq, missione di pace: 38475 morti - www.iraqbodycount.net