On Sat, Mar 18, 2006 at 03:56:28AM -0500, Jeff Garzik wrote: > OK, can you try the attached sata_nv.c? Does it perform to the level > that yours does? Yes, the results are approximately the same. Booting from port 0 (sda) with ADMA enabled still results in timeouts on port 3 (sdc) while running tars on the RAID1 array on ports 2&3. ata4: command 0x25 timeout, stat 0x50 ata4: command 0x25 timeout, stat 0x50 ( xterm-3349 |#0): new 355 us maximum-latency wakeup. ( watchdog/0-4 |#0): new 468 us maximum-latency wakeup. ata4: command 0x35 timeout, stat 0x50 ata4: command 0x35 timeout, stat 0x50 ata4: command 0x35 timeout, stat 0x50 ata4: command 0x35 timeout, stat 0x50 ata4: command 0x35 timeout, stat 0x50 ata4: command 0x35 timeout, stat 0x50 After a while, syncing the filesystems hangs the sync process, though the system continues to function, and I can log in on another VC. The good news: no long latencies from the status inb() during the period that it is functional! :-p Booting without ADMA gives the usual stable behavior, with the long latencies from the status inb(). I was a little disconcerted when I saw this this in the trace with ADMA disabled, tar-21466 0dnh. 3979us : nv_check_hotplug_adma (nv_interrupt) until I realized that this if (!adma_enabled && host_desc->host_type == ADMA) host_desc->host_type--; only alters the outcome of the "host_desc->host_type == ADMA" test, but still uses the ADMA-based hotplug functions. -Bill - : send the line "unsubscribe linux-ide" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html