diff --git a/drivers/ata/libata-core.c b/drivers/ata/libata-core.c index dc362fa01ca46f44680018fde3b5372f03d7f57b..f6408ca82062f9375228158be9e9b23aa9cd0846 100644 --- a/drivers/ata/libata-core.c +++ b/drivers/ata/libata-core.c @@ -3455,7 +3455,8 @@ static void ata_dev_xfermask(struct ata_device *dev) "device is on DMA blacklist, disabling DMA\n"); } - if ((host->flags & ATA_HOST_SIMPLEX) && host->simplex_claimed != ap) { + if ((host->flags & ATA_HOST_SIMPLEX) && + host->simplex_claimed && host->simplex_claimed != ap) { xfer_mask &= ~(ATA_MASK_MWDMA | ATA_MASK_UDMA); ata_dev_printk(dev, KERN_WARNING, "simplex DMA is claimed by " "other device, disabling DMA\n");