2006-10-18 17:27:30

by Berck E. Nash

[permalink] [raw]
Subject: 2.6.19-rc2-mm2 AHCI lengthy pause on detection

AHCI pauses heartily on during detection boot, but eventually proceeds.
This problem currently exists with 2.6.19-rc2-mm1, but did not exist
in 2.6.17.3. I realize that's a huge gap, and if you'd like me to
narrow it down, I'll be glad to try.

Messages surrounding the hang:

scsi2 : ahci
ata2: SATA link up 3.0 Gbps (SStatus 123 SControl 300)
ata2.00: qc timeout (cmd 0xec)
ata2.00: failed to IDENTIFY (I/O error, err_mask=0x104)
ata2: port is slow to respond, please be patient (Status 0x80)
ata2: port failed to respond (30 secs, Status 0x80)
ata2: COMRESET failed (device not ready)
ata2: hardreset failed, retrying in 5 secs
ata2: SATA link up 3.0 Gbps (SStatus 123 SControl 300)
ata2.00: ATA-6, max UDMA/133, 640 sectors: LBA
ata2.00: ata2: dev 0 multi count 1
ata2.00: configured for UDMA/133

I should note that on this system ata1 and ata3 both detect quickly, but
they have 1.5 Gbps devices whereas ata2 has a 3.0Gbps device.

The device:
00:1f.2 SATA controller: Intel Corporation 82801GR/GH (ICH7 Family)
Serial ATA Storage Controller AHCI (rev 01) (prog-if 01 [AHCI 1.0])
Subsystem: ASUSTeK Computer Inc. Unknown device 2606
Flags: bus master, 66MHz, medium devsel, latency 0, IRQ 50
I/O ports at e400 [size=8]
I/O ports at e080 [size=4]
I/O ports at e000 [size=8]
I/O ports at dc00 [size=4]
I/O ports at d880 [size=16]
Memory at febfb800 (32-bit, non-prefetchable) [size=1K]
Capabilities: <access denied>

dmesg snip from 2.6.17.3, without the hangup:

scsi1 : ahci
ata2: port reset, p_is 40000001 is 2 pis 0 cmd 4017 tf 451 ss 123 se 0
ata2: SATA link up 3.0 Gbps (SStatus 123)
ata2: dev 0 cfg 49:2f00 82:0068 83:5060 84:4000 85:0000 86:1000 87:4000
88:407f
ata2: dev 0 ATA-6, max UDMA/133, 640 sectors: LBA
ata2: dev 0 configured for UDMA/133


Thanks,
Berck


2006-10-20 03:16:10

by Tejun Heo

[permalink] [raw]
Subject: Re: 2.6.19-rc2-mm2 AHCI lengthy pause on detection

diff --git a/drivers/ata/ahci.c b/drivers/ata/ahci.c
index 2592912..8215139 100644
--- a/drivers/ata/ahci.c
+++ b/drivers/ata/ahci.c
@@ -278,8 +278,7 @@ static const struct ata_port_info ahci_p
{
.sht = &ahci_sht,
.flags = ATA_FLAG_SATA | ATA_FLAG_NO_LEGACY |
- ATA_FLAG_MMIO | ATA_FLAG_PIO_DMA |
- ATA_FLAG_SKIP_D2H_BSY,
+ ATA_FLAG_MMIO | ATA_FLAG_PIO_DMA,
.pio_mask = 0x1f, /* pio0-4 */
.udma_mask = 0x7f, /* udma0-6 ; FIXME */
.port_ops = &ahci_ops,


Attachments:
patch (487.00 B)

2006-10-22 03:02:52

by Berck E. Nash

[permalink] [raw]
Subject: Re: 2.6.19-rc2-mm2 AHCI lengthy pause on detection

Tejun Heo wrote:
> Can you try the attached patch? And please post the result of hdparm -I
> /dev/sdX.

No difference with that patch.

/dev/sde:

ATA device, with non-removable media
Model Number: ST3250823AS
Serial Number: 5ND0HPTV
Firmware Revision: 3.03
Standards:
Supported: 7 6 5 4
Likely used: 7
Configuration:
Logical max current
cylinders 16383 16383
heads 16 16
sectors/track 63 63
--
CHS current addressable sectors: 16514064
LBA user addressable sectors: 268435455
LBA48 user addressable sectors: 488397168
device size with M = 1024*1024: 238475 MBytes
device size with M = 1000*1000: 250059 MBytes (250 GB)
Capabilities:
LBA, IORDY(can be disabled)
Queue depth: 32
Standby timer values: spec'd by Standard, no device specific
minimum
R/W multiple sector transfer: Max = 16 Current = 16
Recommended acoustic management value: 128, current value: 0
DMA: mdma0 mdma1 mdma2 udma0 udma1 udma2 udma3 udma4 udma5 *udma6
Cycle time: min=120ns recommended=120ns
PIO: pio0 pio1 pio2 pio3 pio4
Cycle time: no flow control=240ns IORDY flow control=120ns
Commands/features:
Enabled Supported:
* SMART feature set
Security Mode feature set
* Power Management feature set
* Write cache
* Look-ahead
* Host Protected Area feature set
* WRITE_BUFFER command
* READ_BUFFER command
* DOWNLOAD_MICROCODE
SET_MAX security extension
* 48-bit Address feature set
* Device Configuration Overlay feature set
* Mandatory FLUSH_CACHE
* FLUSH_CACHE_EXT
* SMART error logging
* SMART self-test
* General Purpose Logging feature set
* SATA-I signaling speed (1.5Gb/s)
* Native Command Queueing (NCQ)
* Phy event counters
* Software settings preservation
Security:
Master password revision code = 65534
supported
not enabled
not locked
frozen
not expired: security count
not supported: enhanced erase
Checksum: correct