[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH v6 0/6] Fix PCI passthrough for HVM with stubdomain
In this version, I add PHYSDEVOP_interrupt_control to allow stubdomain enabling MSI after mapping it, and also disabling INTx beforehand. Actual hypercall refuse to enable both of them. Related article: https://www.qubes-os.org/news/2017/10/18/msi-support/ Changes in v2: - new "xen/x86: Allow stubdom access to irq created for msi" patch - applied review comments from v1 Changes is v3: - apply suggestions by Roger - add PHYSDEVOP_msi_msix_set_enable Changes in v4: - implement suggestions by Wei, Roger, Jan - plug new physdevop into XSM Changes in v5: - rebase on master - rename to PHYSDEVOP_msi_control - move granting access to IRQ into create_irq Changes in v6: - simplify granting IRQ access, record dm domid for cleanup - rename to PHYSDEVOP_interrupt_control - include INTx control in the hypercall --- Cc: Ian Jackson <ian.jackson@xxxxxxxxxxxxx> Cc: Wei Liu <wl@xxxxxxx> Cc: Andrew Cooper <andrew.cooper3@xxxxxxxxxx> Cc: George Dunlap <George.Dunlap@xxxxxxxxxxxxx> Cc: Jan Beulich <jbeulich@xxxxxxxx> Cc: Julien Grall <julien.grall@xxxxxxx> Cc: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx> Cc: Stefano Stabellini <sstabellini@xxxxxxxxxx> Cc: Tim Deegan <tim@xxxxxxx> Cc: Anthony PERARD <anthony.perard@xxxxxxxxxx> Cc: "Roger Pau Monné" <roger.pau@xxxxxxxxxx> Cc: Suravee Suthikulpanit <suravee.suthikulpanit@xxxxxxx> Cc: Brian Woods <brian.woods@xxxxxxx> Cc: Kevin Tian <kevin.tian@xxxxxxxxx> Cc: Daniel De Graaf <dgdegra@xxxxxxxxxxxxx> Marek Marczykowski-Górecki (6): libxl: do not attach xen-pciback to HVM domain, if stubdomain is in use libxl: attach PCI device to qemu only after setting pciback/pcifront libxl: don't try to manipulate json config for stubdomain xen/x86: Allow stubdom access to irq created for msi. xen/x86: add PHYSDEVOP_interrupt_control tools/libxc: add wrapper for PHYSDEVOP_interrupt_control tools/libxc/include/xenctrl.h | 6 ++- tools/libxc/xc_physdev.c | 15 ++++++- tools/libxl/libxl_pci.c | 63 +++++++++++++++++-------- xen/arch/x86/hpet.c | 3 +- xen/arch/x86/irq.c | 51 ++++++++++++++------ xen/arch/x86/msi.c | 45 ++++++++++++++++++- xen/arch/x86/physdev.c | 53 +++++++++++++++++++++- xen/arch/x86/x86_64/physdev.c | 4 ++- xen/drivers/char/ns16550.c | 2 +- xen/drivers/passthrough/amd/iommu_init.c | 2 +- xen/drivers/passthrough/vtd/iommu.c | 3 +- xen/include/asm-x86/irq.h | 7 ++- xen/include/asm-x86/msi.h | 2 +- xen/include/public/physdev.h | 23 +++++++++- xen/include/xlat.lst | 1 +- xen/include/xsm/dummy.h | 7 +++- xen/include/xsm/xsm.h | 6 ++- xen/xsm/dummy.c | 1 +- xen/xsm/flask/hooks.c | 24 ++++++++++- xen/xsm/flask/policy/access_vectors | 1 +- 20 files changed, 281 insertions(+), 38 deletions(-) base-commit: 6c9639a72f0ca3a9430ef75f375877182281fdef -- git-series 0.9.1 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |