|
|
|
|
|
|
|
|
|
|
xen-devel
Re: [Xen-devel] Driver domain questions
On Thu, Dec 14, 2006 at 12:13:39AM -0500, Puthiyaparambil, Aravindh wrote:
> > What you really need in a lot of cases is some kind of IOMMU: the
> > guest won't be able to issue correct DMA requests because it is
> > unaware of the underlying memory structure. I'm not clear if it's
> > possible on any particular OSes to implement this in software via
> > a custom bus type (where the usual DMA mapping API would be used
> > to translate phys->mach and create bounce buffers if necessary).
>
> My query was w.r.t *not* having a hardware based IOMMU in the picture. I
> realize that true isolation cannot be achieved without hardware IOMMU. I
> was looking to see what it would take (amount of work, difficulty etc)
> to give direct PCI access to HVM domains with just software.
You need a HW IOMMU anyway to give direct PCI access to HVM domains
even if you ignore the isolation aspect. Consider this: the HVMy
guest's driver is not aware of the distinction between physical and
machine space, so it programs the device with a *physical* address,
since that's all it knows about. However, p != m, and eventually the
data needs to end in the right machine frame, so something needs to
translate the physical address to a machine address. The HW IOMMU
provides this functionality when the DMA is incoming to memory.
Cheers,
Muli
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
|
|
|
|