sata_mv: warn on PIO with multiple DRQs
authorMark Lord <liml@rtr.ca>
Wed, 18 Jun 2008 16:13:02 +0000 (12:13 -0400)
committerJeff Garzik <jgarzik@redhat.com>
Thu, 19 Jun 2008 00:27:58 +0000 (20:27 -0400)
commitc6112bd86bc8f727bb732a47f2133e0ff12beda9
treeda6ab40dfa4ac2d69127e23e68f2bab305299879
parent3bd0a70ee9cc30ae81b39cb5ecad0fa7bcb4675b
sata_mv: warn on PIO with multiple DRQs

Chip errata sometimes prevents reliable use of PIO commands which involve
more than a single DRQ (data request).  In normal operation, libata should
not generate such PIO commands (uses DMA instead), but they could be sent
in via SG_IO from userspace.

A full workaround might be to break up such commands into sequences
of single DRQ ones, but that's just way too complex for something
that doesn't normally happen in real life.

So, allow the attempt (it often works, despite the errata),
but log the event for reference when somebody screams.

Signed-off-by: Mark Lord <mlord@pobox.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
drivers/ata/sata_mv.c