• Bartlomiej Zolnierkiewicz's avatar
    [ide] ide-dma blacklist behaviour broken · d04907ec
    Bartlomiej Zolnierkiewicz authored
    From: Jens Axboe <axboe@suse.de>
    
    The blacklist stuff is broken. When set_using_dma() calls into
    ->ide_dma_check(), it returns __ide_dma_off() for a blacklisted drive.
    This of course succeeds, returning success to the caller of ->ide_dma_check().
    Not so good... It then uncondtionally calls ->ide_dma_on(), which turns on
    DMA for the drive.
    
    This moves the check to __ide_dma_on() so we also catch the buggy
    ->ide_dma_check() defined by various chipset drivers.
    Signed-off-by: default avatarBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
    d04907ec
ide-dma.c 27.8 KB