Messages in this thread | | | Date | Mon, 1 Dec 2008 15:02:09 +0200 | From | Muli Ben-Yehuda <> | Subject | Re: [PATCH 3/9] add frontend implementation for the IOMMU API |
| |
On Mon, Dec 01, 2008 at 01:00:26PM +0100, Joerg Roedel wrote:
> > > > The majority of the names (include/linux/iommu.h, iommu.c, > > > > iommu_ops, etc) looks too generic? We already have lots of > > > > similar things (e.g. arch/{x86,ia64}/asm/iommu.h, several > > > > archs' iommu.c, etc). Such names are expected to be used by > > > > all the IOMMUs. > > > > > > The API is already useful for more than KVM. I also plan to > > > extend it to support more types of IOMMUs than VT-d and AMD > > > IOMMU in the future. But these changes are more intrusive than > > > this patchset and need more discussion. I prefer to do small > > > steps into this direction. > > > > Can you be more specific? What IOMMU could use this? For example, > > how GART can use this? I think that people expect the name 'struct > > iommu_ops' to be an abstract for all the IOMMUs (or the majority > > at least). If this works like that, the name is a good choice, I > > think. > > GART can't use exactly this. But with some extensions we can make it > useful for GART and GART-like IOMMUs too. For example we can emulate > domains in GART by partitioning the GART aperture space.
That would only work with a pvdma API, since GART doesn't support multiple address spaces, and you don't get the isolation properties of a real IOMMU, so... why would you want to do that?
Cheers, Muli -- The First Workshop on I/O Virtualization (WIOV '08) Dec 2008, San Diego, CA, http://www.usenix.org/wiov08/ <-> SYSTOR 2009---The Israeli Experimental Systems Conference http://www.haifa.il.ibm.com/conferences/systor2009/
| |