On Tue, Jan 08, 2008 at 10:34:22AM +1100, Benjamin Herrenschmidt wrote: > powerpc: Workaround for iommu page alignment > > Our iommu page size is currently always 4K. That means with our current > code, drivers may do a dma_map_sg() of a 64K page and obtain a dma_addr_t > that is only 4K aligned. > > This works fine in most cases except some infiniband HW it seems, where > they tell the HW about the page size and it ignores the low bits of the > DMA address. > > This works around it by making our IOMMU code enforce a PAGE_SIZE alignment > for mappings of objects that are page aligned in the first place and whose > size is larger or equal to a page. > > Signed-off-by: Benjamin Herrenschmidt <[EMAIL PROTECTED]> > --- > > And this version actually does what the comment says (I had forgotten > to quilt ref... a common mistake).
And sloppy of me to not catch it. Anyway: Acked-by: Olof Johansson <[EMAIL PROTECTED]> I wonder how long until there's a device that has some other < PAGE_SIZE alignment bug^Wrequirement that we'll need to meet too. :( -Olof _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-dev