|
|
|
|
|
|
|
|
|
|
xen-devel
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
|
|
|
|
|