My system has a Promise Ultra66 and two 400GB hard disks on it. If I enable IDE DMA, everything works fine until my system start to access something above 137GB boundary. It keeps produce error messages like: kernel: ad6: FAILURE - READ_DMA48 timed out LBA=781422764 kernel: ad6: FAILURE - READ_DMA timed out LBA=0 kernel: ad6: FAILURE - READ_DMA48 timed out LBA=781422767 kernel: ad6: TIMEOUT - READ_DMA retrying (1 retry left) LBA=1 kernel: ad6: FAILURE - READ_DMA48 timed out LBA=781422705 If I disable DMA ( hw.ata.ata_dma=0), accessing is fine but accessing speed is very low. I checked the linux kernel mailing list. It seems that Ultra66 does not support the hardware hack of LBA48 support used by Ultra 100, as claimed by Hank Yang. http://lwn.net/Articles/7253/ Linux 2.4.20 kernel source also indicate that the DMA hack is disabled for Ultra66 ( chip: PDC20262 ) as well. check http://lxr-itec.uni-klu.ac.at/um-linux-2.4.20/source/drivers/ide/pdc202xx.c I tried to disable the DMA hack for PDC20262. It will generate the same error messages as shown above. I end up making another path disable the DMA support for LBA48. Now everything looks fine now. Fix: 1. Disable ata DMA support. 2. Use the attached patch, which disables 48bit DMA access. Patch attached with submission follows: How-To-Repeat: Pug in a Ultra 66 and put a >137GB hard drive on it. Do a "dd if=/dev/zero of=/dev/ad4"
For bugs matching the following criteria: Status: In Progress Changed: (is less than) 2014-06-01 Reset to default assignee and clear in-progress tags. Mail being skipped