On Mon, Oct 03, 2016 at 11:57:13AM +0100, Paul Durrant wrote: > > -----Original Message----- > > From: Xen-devel [mailto:xen-devel-boun...@lists.xen.org] On Behalf Of > > Roger Pau Monne > > Sent: 27 September 2016 16:57 > > To: xen-de...@lists.xenproject.org > > Cc: boris.ostrov...@oracle.com; Roger Pau Monne <roger....@citrix.com> > > Subject: [Xen-devel] [PATCH v2 28/30] xen/x86: add MSI-X emulation to > > PVHv2 Dom0 > > > > This requires adding handlers to the PCI configuration space, plus a MMIO > > handler for the MSI-X table, the PBA is left mapped directly into the guest. > > The implementation is based on the one already found in the passthrough > > code from QEMU. > > > > Signed-off-by: Roger Pau Monné <roger....@citrix.com> > > --- > > Paul Durrant <paul.durr...@citrix.com> > > Jan Beulich <jbeul...@suse.com> > > Andrew Cooper <andrew.coop...@citrix.com> > > --- > > xen/arch/x86/hvm/io.c | 2 + > > xen/arch/x86/hvm/vmsi.c | 498 > > ++++++++++++++++++++++++++++++++++++++++++ > > xen/drivers/passthrough/pci.c | 6 +- > > xen/include/asm-x86/hvm/io.h | 26 +++ > > xen/include/asm-x86/msi.h | 4 +- > > 5 files changed, 534 insertions(+), 2 deletions(-) > > > > diff --git a/xen/arch/x86/hvm/io.c b/xen/arch/x86/hvm/io.c > > index 088e3ec..11b7313 100644 > > --- a/xen/arch/x86/hvm/io.c > > +++ b/xen/arch/x86/hvm/io.c > > @@ -867,6 +867,7 @@ static struct hvm_pt_handler_init > > *hwdom_pt_handlers[] = { > > &hvm_pt_bar_init, > > &hvm_pt_vf_bar_init, > > &hvm_pt_msi_init, > > + &hvm_pt_msix_init, > > }; > > > > int hwdom_add_device(struct pci_dev *pdev) > > @@ -1176,6 +1177,7 @@ void register_dpci_portio_handler(struct domain > > *d) > > { > > handler->ops = &hw_dpci_portio_ops; > > register_mmio_handler(d, &pcie_mmio_ops); > > + register_mmio_handler(d, &vmsix_mmio_ops); > > Again, this is a somewhat counterintuitive place to make this call.
Done, I've moved it to hvm_domain_initialise together with the PCIe MMIO handlers. _______________________________________________ Xen-devel mailing list Xen-devel@lists.xen.org https://lists.xen.org/xen-devel