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

Re: [Xen-devel] Realtime access to PCI NIC

On Mon, 2014-07-07 at 13:21 +0100, Simon Martin wrote:
> Hi all,
> I am reading through the mini-os pcifront.c as an example of how to
> implement direct access to a PCI device. However looking at the code
> all access seems to go via the PCI Backend driver, which means that I
> am subject to the latencies and jitter of the Xen scheduling.

Only PCI cfg reads/writes go via the backend, I think. Any MMIO space
(i.e. described in the PCI BARS) can be directly mapped, likewise for
the IO port spaces associated with the device.

I think PCI cfg space is only generally used during probing/setup etc.
Hopefully you don't need to poke it at runtime?

> Reading the documentation about PCI Passthrough I imagined that I
> would have direct access to the PCI hardware once the handover from
> dom0 as performed. Is that correct? If so, how do I implement that?
> I am using an Intel processor that has VT-d so that should be
> possible.

Right, VT-d allows the MMIO stuff to be mapped to an HVM guest (PV
doesn't even need that), but unfortunately there are bits in the pci cfg
space which even a guest with the device passed to it shouldn't be able
to mess with (I don't know the details though).


Xen-devel mailing list



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