On Fri, 2 Nov 2007 19:12:27 +0200 Muli Ben-Yehuda <muli@xxxxxxxxxx> wrote: > On Sat, Nov 03, 2007 at 02:05:39AM +0900, FUJITA Tomonori wrote: > > > This patchset convert the PPC64 IOMMU to use the iova code for free > > area management. > > > > The IOMMUs ignores low level drivers' restrictions, the maximum > > segment size and segment boundary. > > > > I fixed the former: > > > > http://thread.gmane.org/gmane.linux.scsi/35602 > > > > The latter makes the free area management complicated. I'd like to > > convert IOMMUs to use the iova code (that intel-iommu introduced) > > for free area management and enable iova to handle segment boundary > > restrictions, rather than fixing all the IOMMUs' free area > > management, > > In general it sounds like a great idea, but have you looked at what > impact this has on the performance of the IO path? Not yet. And I have access to only an entry-class pSeries server so I would appreciate it if POWERPC people try the patchset with high-end servers. The patchset doesn't use the tricks that the current POWERPC IOMMU use to improve performance (Anton and Olof told me about them, Thanks!) . So I might need to modify iova for them. I think that it's difficult to use some tricks used in the IOMMUs with the iova even if we modify the iova. If the iova degrades performance, I think that it would be better to have new IOMMU library code to use simply a bit map that most of the IOMMUs use. Another possible factor to degrade performance is that we can't allocate areas for map_sg at one stroke like some of the IOMMUs do. We need to allocate an area per sg segment to handle segment boundary. If it's unacceptable, I guess that there is only one way, LLDs allocate many sg entries and then the IOMMU splits the sg entryes. - 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