[PATCH 0/4] Nested virtualization fixes for root partition

Nuno Das Neves
2025-06-11T00:03:29Z

Fixes for running as nested root partition on the Microsoft Hypervisor.

The first patch prevents the vmbus driver being registered on baremetal, since
there's no vmbus in this scenario.

The second patch changes vmbus to make hypercalls to the L0 hypervisor instead
of the L1. This is needed because L0 hypervisor, not the L1, is the one hosting
the Windows root partition with the VMM that provides vmbus.

The 3rd and 4th patches fix interrupt unmasking on nested. In this scenario,
the L1 (nested) hypervisor does the interrupt mapping to root partition cores.
The vectors just need to be mapped with MAP_DEVICE_INTERRUPT instead of
affinitized with RETARGET_INTERRUPT.

Mukesh Rathor (1):
PCI: hv: Do not do vmbus initialization on baremetal

Nuno Das Neves (1):
Drivers: hv: Use nested hypercall for post message and signal event

Stanislav Kinsburskii (2):
x86: hyperv: Expose hv_map_msi_interrupt function
PCI: hv: Use the correct hypercall for unmasking interrupts on nested

arch/arm64/include/asm/mshyperv.h | 10 ++++++
arch/x86/hyperv/irqdomain.c | 47 +++++++++++++++++++++--------
arch/x86/include/asm/mshyperv.h | 2 ++
drivers/hv/connection.c | 3 ++
drivers/hv/hv.c | 3 ++
drivers/pci/controller/pci-hyperv.c | 21 +++++++++++--
6 files changed, 71 insertions(+), 15 deletions(-)

--
2.34.1