• P
    [libata] Add " 2GB ATA Flash Disk"/"ADMA428M" to DMA blacklist · d70e551c
    Prarit Bhargava 提交于
    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: NPrarit Bhargava <prarit@redhat.com>
    Signed-off-by: NJeff Garzik <jgarzik@redhat.com>
    d70e551c
libata-core.c 173.0 KB