Fix up dma_alloc_coherent with 64bit DMA masks on i386.

davej@codemonkey.org.uk
Wed, 8 Jan 2003 19:46:22 GMT


Cset 1.808 in 2.4 never got propagated forward to 2.5
It's pretty much the same fix as below (s/!=/</), but with the following
changes
- This was a patch to pci_alloc_consistant(), which now seems to be
dma_alloc_coherent()
- Removal of the u32 cast

diff -urpN --exclude-from=/home/davej/.exclude bk-linus/arch/i386/kernel/pci-dma.c linux-2.5/arch/i386/kernel/pci-dma.c
--- bk-linus/arch/i386/kernel/pci-dma.c 2003-01-08 10:46:59.000000000 -0100
+++ linux-2.5/arch/i386/kernel/pci-dma.c 2003-01-08 11:02:50.000000000 -0100
@@ -19,7 +19,7 @@ void *dma_alloc_coherent(struct device *
void *ret;
int gfp = GFP_ATOMIC;

- if (dev == NULL || ((u32)*dev->dma_mask != 0xffffffff))
+ if (dev == NULL || (*dev->dma_mask < 0xffffffff))
gfp |= GFP_DMA;
ret = (void *)__get_free_pages(gfp, get_order(size));

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/