On Tue, 2008-02-26 at 04:44 +0100, Andi Kleen wrote: > On Mon, Feb 25, 2008 at 03:50:22PM -0700, Matthew Wilcox wrote: > > On Mon, Feb 25, 2008 at 11:40:35PM +0100, Andi Kleen wrote: > > > > (I must have fixed it somehow because it works on parisc, which is most > > > > unforgiving of drivers which do DMA without the DMA API). > > > > > > At least on x86 the DMA API cannot do ISA bouncing. > > > > You're saying that if I set a 24-bit DMA mask, and then do a > > pci_alloc_coherent(), x86 might hand me back something that's not > > accessible? That would be just broken. > > No pci_alloc_coherent works, but pci_map_* will not. Yes, it does ... dma_map is a flush/virt_to_phys on x86. so of course it works. If you mean it doesn't transform from > 24 bit phys to < 24 bit phys, then yes; but that's not an API requirement; that's what bounce buffering is all about, so for ISA devices we always only call dma_map on < 24 bit phys addresses and it all works. James - To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html