> And as xfermask stripped out DMA bits, host->simplex_claimed
> is always NULL with current implementation.
> 
> By allowing DMA either if simplex_claimed is NULL or if it
> points to current port DMA can be finally used - it gets
> assigned to first port which contains any DMA capable
> device.

Doh, sorry I should have caught that when testing.

> Signed-off-by: Petr Vandrovec <[EMAIL PROTECTED]>

Acked-by: Alan Cox <[EMAIL PROTECTED]>

> 
> diff -uprdN linux/drivers/ata/libata-core.c linux/drivers/ata/libata-core.c
> --- linux/drivers/ata/libata-core.c   2007-03-07 22:13:24.000000000 -0800
> +++ linux/drivers/ata/libata-core.c   2007-03-08 00:15:37.000000000 -0800
> @@ -3455,7 +3455,8 @@ static void ata_dev_xfermask(struct ata_
>                              "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");
> -
> To unsubscribe from this list: send the line "unsubscribe linux-ide" in
> the body of a message to [EMAIL PROTECTED]
> More majordomo info at  http://vger.kernel.org/majordomo-info.html


-- 
--
Sick of rip off UK rail fares ? Learn how to get far cheaper fares
                http://zeniv.linux.org.uk/~alan/GTR/
-
To unsubscribe from this list: send the line "unsubscribe linux-ide" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to