Hello. > Interesting, but can you please give more background information? > I.e., how did you determine the existence of this bug? I was experiencing read/write errors, with data corruption. Dmesgs and lspcis are at http://lxnt.info/linux/ I downloaded driver from the promise.com, put up 2.6.11 and compiled it. It worked ok. I then unsuccessfully tried to port the driver to 2.6.22. While I failed, this gave me enough insights into ATA workings, that I could read the CAM module that comes with the driver. Looking through it I found the SG_COUNT_ASIC_BUG constant and corresponding code. I decided to try and implement the workaround in sata_promise.c - and this fixed the problem. > And please cc: the sata_promise maintainer on sata_promise patches. > (Hint: that's me) Hmm. sata_promise.c says: * Maintained by: Jeff Garzik <jgarzik@xxxxxxxxx> > Meanwhile I'll check the Promise driver(s) to see if there's > something about SG table formatting restrictions there. Take a look at: cam_ata.c:6190 cam_ata.c:6259 The fix is also conditioned on sg segment length == 0, which I did not implement. Is this at all possible in libata ? -- ./lxnt - To unsubscribe from this list: 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