* [PATCH] ata, Add " 2GB ATA Flash Disk"/"ADMA428M" to DMA blacklist
@ 2012-05-08 13:08 Prarit Bhargava
2012-05-22 20:04 ` Jeff Garzik
0 siblings, 1 reply; 2+ messages in thread
From: Prarit Bhargava @ 2012-05-08 13:08 UTC (permalink / raw)
To: linux-ide; +Cc: Prarit Bhargava, Jeff Garzik
A user has several systems with a couple of models of flash disks with IDE
connectors. These disks work fine in 2.6.18-ish kernels but corrupt data on
new kernels.
The difference appears to be with the default I/O method used by the IDE
controller driver between the kernels. In the older kernels, the
configuration is very conservative and the driver stays in PIO mode. With
new kernels, the ata driver (pata_serverworks) attempts to use UDMA/66
which the drive claims to support. This mode, however, does not appear to
work in DMA mode. The drive does work correctly and no corruption is
seen if the kernel parameter "libata.force=5:pio0,6:pio0" is used to force
the driver to use PIO instead of DMA mode.
Blacklist these drives. Unfortunately the model name of the drive is very
generic, " 2GB ATA Flash Disk", but the revision is specific, "ADMA428M".
Signed-off-by: Prarit Bhargava <prarit@redhat.com>
Cc: Jeff Garzik <jgarzik@pobox.com>
---
drivers/ata/libata-core.c | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
diff --git a/drivers/ata/libata-core.c b/drivers/ata/libata-core.c
index 23763a1..0213a39 100644
--- a/drivers/ata/libata-core.c
+++ b/drivers/ata/libata-core.c
@@ -4051,6 +4051,7 @@ static const struct ata_blacklist_entry ata_device_blacklist [] = {
{ "_NEC DV5800A", NULL, ATA_HORKAGE_NODMA },
{ "SAMSUNG CD-ROM SN-124", "N001", ATA_HORKAGE_NODMA },
{ "Seagate STT20000A", NULL, ATA_HORKAGE_NODMA },
+ { "2GB ATA Flash Disk", "ADMA428M", ATA_HORKAGE_NODMA },
/* Odd clown on sil3726/4726 PMPs */
{ "Config Disk", NULL, ATA_HORKAGE_DISABLE },
--
1.7.1
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH] ata, Add " 2GB ATA Flash Disk"/"ADMA428M" to DMA blacklist
2012-05-08 13:08 [PATCH] ata, Add " 2GB ATA Flash Disk"/"ADMA428M" to DMA blacklist Prarit Bhargava
@ 2012-05-22 20:04 ` Jeff Garzik
0 siblings, 0 replies; 2+ messages in thread
From: Jeff Garzik @ 2012-05-22 20:04 UTC (permalink / raw)
To: Prarit Bhargava; +Cc: linux-ide
On 05/08/2012 09:08 AM, Prarit Bhargava wrote:
> A user has several systems with a couple of models of flash disks with IDE
> connectors. These disks work fine in 2.6.18-ish kernels but corrupt data on
> new kernels.
>
> The difference appears to be with the default I/O method used by the IDE
> controller driver between the kernels. In the older kernels, the
> configuration is very conservative and the driver stays in PIO mode. With
> new kernels, the ata driver (pata_serverworks) attempts to use UDMA/66
> which the drive claims to support. This mode, however, does not appear to
> work in DMA mode. The drive does work correctly and no corruption is
> seen if the kernel parameter "libata.force=5:pio0,6:pio0" is used to force
> the driver to use PIO instead of DMA mode.
>
> Blacklist these drives. Unfortunately the model name of the drive is very
> generic, " 2GB ATA Flash Disk", but the revision is specific, "ADMA428M".
>
> Signed-off-by: Prarit Bhargava<prarit@redhat.com>
> Cc: Jeff Garzik<jgarzik@pobox.com>
> ---
> drivers/ata/libata-core.c | 1 +
> 1 files changed, 1 insertions(+), 0 deletions(-)
applied
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2012-05-22 20:04 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-05-08 13:08 [PATCH] ata, Add " 2GB ATA Flash Disk"/"ADMA428M" to DMA blacklist Prarit Bhargava
2012-05-22 20:04 ` Jeff Garzik
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).