Mark Lord wrote:
Alan Cox wrote:
On Mon, 13 Apr 2009 11:29:34 -0400
Mark Lord <liml@xxxxxx> wrote:
Workaround for errata SATA#24 in sata_mv.
This errata affects WRITE_MULTI* commands when
the device multi_count produces a DRQ block size >= 4Kbytes.
We work around it here by converting such operations
into ordinary PIO_WRITEs instead.
Note that this might result in a PIO FUA write unavoidably being
converted
into a non-FUA write. In practice, any system using FUA is also
going to be
using DMA rather than PIO, so this shouldn't affect anyone in the
real world.
You can just screen the FUA bit from the identify data when you do the
drive setup to avoid that bit.
..
I think doing it at identify time would prevent DMA FUA commands,
which are fine in sata_mv.
So the only place to really hit it exactly, is at command construction
or issue time.
..
Note that libata already will convert would-be FUA commands
into non-FUA PIO commands if (dev->multi_count == 0).
So this isn't really anything new.
Nor can it be avoided.
And certainly not anything to fuss over.
--
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