[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] Driver domain questions



> What is a driver domain? Is it an unprivileged DomU that has access to a
> PCI device as described in user doc section 5.3?

Yep.

> In that case can the 
> device it is using be virtualized for other DomUs? (I guess not but I just
> want to be sure there is no magic that can make this happen. â)

In principle it can export the device to other domUs.  For instance, it would 
use the block or network backends to provide shared access to an owned 
block / network device.

> I understand that HVM Domains cannot have direct access to a PCI device.
> What needs to be done to make this happen? From a prior discussion with
> Mats, I guess there needs to be a way to inform the HVM domain of the
> existence of that PCI device. Does a PCI frontend need to be written for
> the HVM domain and OS drivers need to be made "virtualization aware"? Or is
> it enough to just have a PCI frontend and off the shelf drivers can be
> used?

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).

A hardware IOMMU would enable paravirt guests to access a PCI device without 
being trusted not to snoop or trash memory.  It could also make it possible 
for an HVM guest to be given direct DMA capabilities given a Xen PCI 
frontend.  Perhaps it would even be possible to fake out a PCI bus so that a 
special frontend isn't required.

The AMD folks were working on a IOMMU substitute based on the GART, IIRC.  
There was also some work to utilise the true IOMMU available on some big IBM 
boxes.

HTH,
Cheers,
Mark

-- 
Dave: Just a question. What use is a unicyle with no seat?  And no pedals!
Mark: To answer a question with a question: What use is a skateboard?
Dave: Skateboards have wheels.
Mark: My wheel has a wheel!

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.