On Wed, 2008-02-27 at 08:50 +1100, Benjamin Herrenschmidt wrote: > On Tue, 2008-02-26 at 11:51 -0500, Mark Lord wrote: > > > That's interesting. Can you point us to the exact file::lines where > > > this happens? It would be good to ensure that this gets fixed. > > > > > > I'm copying Fujita Tomonori on this thread now -- he's the dude > > who's > > > trying to sort out the IOMMU mess. > > .. > > > > Mmm.. looks like ppc is already fixed in mainline, > > commit 740c3ce66700640a6e6136ff679b067e92125794 > > No, I only fixed alignent up to PAGE_SIZE, not above. > > Our iommu can use smaller than PAGE_SIZE allocations when PAGE_SIZE is > 64k (it can use 4k), and that helps a lot with networking to avoid > filling up pSeries small iommu's too fast. Unfortunately, that meant we > used to not even get PAGE_SIZE alignment for some cases. The workaround > fixes that but does not provide natural size alignment. > > If we were to provide size based alignment of sg requests, fragmentation > would become so bad we would basically end up failing a large amount of > iommu allocations on servers. Ben, he just quoted the wrong patch ... that was the segment length limit patch. The boundary alignment patch is this one: fb3475e9b6bfa666107512fbd6006c26014f04b8 And it does alter the ppc iommu to respect the dma_boundary, so all of the mechanics for removing the ppc special casing in libata/ide is upstream. James - To unsubscribe from this list: send the line "unsubscribe linux-ide" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html