Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1287780
| From | jakeo@microsoft.com |
|---|---|
| Newsgroups | linux.kernel |
| Subject | [PATCH v8 0/7] PCI: hv: New paravirtual PCI front-end for Hyper-V VMs |
| Date | 2015-12-09 20:50 +0100 |
| Message-ID | <qDSUp-4cC-1@gated-at.bofh.it> (permalink) |
| Organization | linux.* mail to news gateway |
From: Jake Oshins <jakeo@microsoft.com>
This version of the patch series incorporates feedback from Mark Zyngier,
making this build on arm/arm64.
First, export functions that allow correlating Hyper-V virtual processors
and Linux cpus, along with the means for invoking a hypercall that targets
interrupts at chosen vectors on specific cpus.
Second, mark various parts of IRQ domain related code as exported, so that
this PCI front-end can implement an IRQ domain as part of a module. (The
alternative would be to pull all tyhis into the kernel, which would pull
in a lot of other Hyper-V related code, as this IRQ domain depends on
vmbus.ko.)
Third, modify PCI so that new root PCI buses can be marked with an associated
fwnode_handle, and so that root PCI buses can look up their associated IRQ
domain by that handle.
Fourth, introduce a new driver, hv_pcifront, which exposes root PCI buses in
a Hyper-V VM. These root PCI buses expose real PCIe device, or PCI Virtual
Functions.
Jake Oshins (7):
drivers:hv: Export a function that maps Linux CPU num onto Hyper-V
proc num
drivers:hv: Export hv_do_hypercall()
PCI: Make it possible to implement a PCI MSI IRQ Domain in a module.
PCI: Add fwnode_handle to pci_sysdata
PCI: irqdomain: Look up IRQ domain by fwnode_handle
drivers:hv: Define the channel type of Hyper-V PCI Express
pass-through
PCI: hv: New paravirtual PCI front-end for Hyper-V VMs
MAINTAINERS | 1 +
arch/x86/include/asm/msi.h | 6 +
arch/x86/include/asm/pci.h | 15 +
arch/x86/kernel/apic/msi.c | 8 +-
arch/x86/kernel/apic/vector.c | 2 +
drivers/hv/hv.c | 20 +-
drivers/hv/hyperv_vmbus.h | 2 +-
drivers/hv/vmbus_drv.c | 17 +
drivers/pci/Kconfig | 7 +
drivers/pci/host/Makefile | 1 +
drivers/pci/host/hv_pcifront.c | 2249 ++++++++++++++++++++++++++++++++++++++++
drivers/pci/msi.c | 4 +
drivers/pci/probe.c | 15 +
include/linux/hyperv.h | 14 +
include/linux/pci.h | 4 +
kernel/irq/chip.c | 1 +
kernel/irq/irqdomain.c | 4 +
17 files changed, 2356 insertions(+), 14 deletions(-)
create mode 100644 drivers/pci/host/hv_pcifront.c
--
1.9.1
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Back to linux.kernel | Previous | Next — Next in thread | Find similar | Unroll thread
[PATCH v8 0/7] PCI: hv: New paravirtual PCI front-end for Hyper-V VMs jakeo@microsoft.com - 2015-12-09 20:50 +0100 [PATCH v8 1/7] drivers:hv: Export a function that maps Linux CPU num onto Hyper-V proc num jakeo@microsoft.com - 2015-12-09 20:50 +0100 [PATCH v8 3/7] PCI: Make it possible to implement a PCI MSI IRQ Domain in a module. jakeo@microsoft.com - 2015-12-09 20:50 +0100 [PATCH v8 6/7] drivers:hv: Define the channel type of Hyper-V PCI Express pass-through jakeo@microsoft.com - 2015-12-09 21:00 +0100 [PATCH v8 5/7] PCI: irqdomain: Look up IRQ domain by fwnode_handle jakeo@microsoft.com - 2015-12-09 21:00 +0100 [PATCH v8 2/7] drivers:hv: Export hv_do_hypercall() jakeo@microsoft.com - 2015-12-09 21:00 +0100 [PATCH v8 4/7] PCI: Add fwnode_handle to pci_sysdata jakeo@microsoft.com - 2015-12-09 21:00 +0100
csiph-web