Re: [PATCH] sata_nv ADMA/NCQ support for nForce4 (updated)

Andi Kleen
2006-10-22T02:41:26Z

Robert Hancock <hancockr@shaw.ca> writes:

> Here's the latest version of this patch. Changes since the last version I posted: fix to actually use the legacy interface for ATAPI as was intended, set the proper sg_tablesize for legacy and ADMA mode, some message and formatting cleanups, and ADMA is now enabled by default.
>
> This patch is against 2.6.19-rc2.
>
> As before, testing by people with this hardware would be appreciated. Also, it would be nice to get this into libata-dev or -mm to get some more exposure..

I tested it on a NF4-Professional system with 8GB RAM and a single
SATA disk. It first did nicely in LTP and some other tests,
but during a bonnie++ run it eventually blocked with all
IO hanging forever. No output either. I did a full backtrace
and it just showed the processes waiting for a IO wakeup.

-Andi

sata_nv 0000:00:07.0: Using ADMA mode
PCI: Setting latency timer of device 0000:00:07.0 to 64
ata1: SATA max UDMA/133 cmd 0xFFFFC2000003C480 ctl 0xFFFFC2000003C4A0 bmdma 0x1C10 irq 22
ata2: SATA max UDMA/133 cmd 0xFFFFC2000003C580 ctl 0xFFFFC2000003C5A0 bmdma 0x1C18 irq 22
scsi0 : sata_nv
ata1: SATA link down (SStatus 0 SControl 300)
scsi1 : sata_nv
ata2: SATA link down (SStatus 0 SControl 300)
ACPI: PCI Interrupt Link [LSI1] enabled at IRQ 21
ACPI: PCI Interrupt 0000:00:08.0[A] -> Link [LSI1] -> GSI 21 (level, high) -> IRQ 21
sata_nv 0000:00:08.0: Using ADMA mode
PCI: Setting latency timer of device 0000:00:08.0 to 64
ata3: SATA max UDMA/133 cmd 0xFFFFC2000003E480 ctl 0xFFFFC2000003E4A0 bmdma 0x1C20 irq 21
ata4: SATA max UDMA/133 cmd 0xFFFFC2000003E580 ctl 0xFFFFC2000003E5A0 bmdma 0x1C28 irq 21
scsi2 : sata_nv
ata3: SATA link up 1.5 Gbps (SStatus 113 SControl 300)
ata3.00: ATA-6, max UDMA/133, 312581808 sectors: LBA48
ata3.00: ata3: dev 0 multi count 16
ata3.00: configured for UDMA/133
scsi3 : sata_nv
ata4: SATA link down (SStatus 0 SControl 300)
scsi 2:0:0:0: Direct-Access ATA ST3160023AS 3.18 PQ: 0 ANSI: 5
ata3: bounce limit 0xFFFFFFFFFFFFFFFF, segment boundary 0xFFFFFFFF, hw segs 61