hv: Front-end driver for PCIe Pass-through on Hyper-V
Get series with b4
b4 am [email protected]Versions newest first · linked by author and title
- v3 Latest6 patches 6 repliesIn review
- v26 patches 3 repliesSuperseded
- v16 patches 6 repliesSuperseded
Patches in v3 No applies recorded yet
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 1/6 | hv: Modify vmbus to search for all MMIO ranges availabledrivers/ drivers/ include/ | +92 | 4 replies | |
| 2/6 | drivers:hv: Move MMIO range picking from hyper_fb.mod to hv_vmbus.moddrivers/ drivers/ include/ | +108 | 0 replies | |
| 3/6 | arch:x86:hv: Add mechanism for Hyper-V paravirt drivers to hook msi creationarch/ arch/ | +32 | 0 replies | |
| 4/6 | drivers:hv: Export a function that maps Linux proc num onto Hyper-V proc numdrivers/ include/ | +19 | 0 replies | |
| 5/6 | drivers:hv: Define the channel type for Hyper-V PCI Express pass-throughinclude/ | +11 | 0 replies | |
| 6/6 | drivers:pci:hv: New paravirtual PCI front-end for Hyper-V VMsMAINTAINERS drivers/ drivers/ +1 more | +2110 | 2 replies |
Reviews trailers per patch
No Reviewed-by, Acked-by or Tested-by trailers for v3 yet.
Cover letter [PATCH v3 0/6] hv: Front-end driver for PCIe Pass-through on Hyper-V
From: Jake Oshins <[email protected]>
This patch series differs from the previous one (v2) in that it fixes kernel-doc commenting style and changes a few variable and function names to be more understandable.
These patches do some slight refactoring on the hv_vmbus driver and its dependents and then introduces a new paravirtual front-end driver for PCI which supports PCI Express devices passed through to a Linux guest running in a Hyper-V VM.
To support this front-end, several new mechanisms are introduced:
1 - A common way of finding free memory-mapped I/O space in a Hyper-V VM,
available to all Hyper-V-related drivers.
2 - A way of handling PCI Message-Signaled Interrupt (MSI and MSI-X)
creation and formatting when Hyper-V is running.
3 - A mapping function from Linux processor number to Hyper-V virtual
processor number, available to drivers, which is necessary for MSI(-X) creation.
The Hyper-V Frame Buffer driver is modified to use the MMIO space allocation function so that its allocations both don't collide with the PCI front end and so that the chosen range can come from any available part of MMIO space.
Finally, the new PCI front-end driver is the last patch in the series.
Jake Oshins (6):
hv: Modify vmbus to search for all MMIO ranges available drivers:hv: Move MMIO range picking from hyper_fb.mod to hv_vmbus.mod arch:x86:hv: Add mechanism for Hyper-V paravirt drivers to hook msi
creation
drivers:hv: Export a function that maps Linux proc num onto Hyper-V
proc num
drivers:hv: Define the channel type for Hyper-V PCI Express
pass-through
drivers:pci:hv: New paravirtual PCI front-end for Hyper-V VMs
MAINTAINERS | 1 + arch/x86/include/asm/mshyperv.h | 2 + arch/x86/kernel/cpu/mshyperv.c | 30 + drivers/hv/vmbus_drv.c | 205 +++- drivers/pci/Kconfig | 7 + drivers/pci/host/Makefile | 1 + drivers/pci/host/hv_pcifront.c | 2101 +++++++++++++++++++++++++++++++++++++++ drivers/video/fbdev/hyperv_fb.c | 46 +- include/linux/hyperv.h | 20 +- 9 files changed, 2370 insertions(+), 43 deletions(-) create mode 100644 drivers/pci/host/hv_pcifront.c
Signature · 1 line
1.9.1