[GIT PULL] Hyper-V patches for 6.15

From: Wei Liu
Date: Mon Mar 24 2025 - 13:49:47 EST



Hi Linus,

The following changes since commit a64dcfb451e254085a7daee5fe51bf22959d52d3:

Linux 6.14-rc2 (2025-02-09 12:45:03 -0800)

are available in the Git repository at:

ssh://git@xxxxxxxxxxxxxxxxxxx/pub/scm/linux/kernel/git/hyperv/linux.git tags/hyperv-next-signed-20250324

for you to fetch changes up to 628cc040b3a2980df6032766e8ef0688e981ab95:

x86/hyperv: fix an indentation issue in mshyperv.h (2025-03-21 22:41:56 +0000)

----------------------------------------------------------------
hyperv-next for 6.15
- Add support for running as the root partition in Hyper-V (Microsoft
Hypervisor) by exposing /dev/mshv (Nuno and various people)
- Add support for CPU offlining in Hyper-V (Hamza Mahfooz)
- Misc fixes and cleanups (Roman Kisel, Tianyu Lan, Wei Liu, Michael Kelley,
Thorsten Blum)
----------------------------------------------------------------
Hamza Mahfooz (3):
cpu: export lockdep_assert_cpus_held()
drivers/hv: introduce vmbus_channel_set_cpu()
drivers/hv: add CPU offlining support

Michael Kelley (1):
x86/hyperv: Add comments about hv_vpset and var size hypercall input args

Nuno Das Neves (14):
hyperv: Move hv_current_partition_id to arch-generic code
hyperv: Move arch/x86/hyperv/hv_proc.c to drivers/hv
hyperv: Convert hypercall statuses to linux error codes
hyperv: Change hv_root_partition into a function
hyperv: Add CONFIG_MSHV_ROOT to gate root partition support
hyperv: Log hypercall status codes as strings
arm64/hyperv: Add some missing functions to arm64
hyperv: Introduce hv_recommend_using_aeoi()
acpi: numa: Export node_to_pxm()
Drivers: hv: Export some functions for use by root partition module
Drivers: hv: Introduce per-cpu event ring tail
x86: hyperv: Add mshv_handler() irq handler and setup function
hyperv: Add definitions for root partition driver to hv headers
Drivers: hv: Introduce mshv_root module to expose /dev/mshv to VMMs

Roman Kisel (2):
x86/hyperv: Add VTL mode emergency restart callback
x86/hyperv: Add VTL mode callback for restarting the system

Stanislav Kinsburskii (1):
x86/mshyperv: Add support for extended Hyper-V features

Thorsten Blum (1):
hyperv: Remove unused union and structs

Tianyu Lan (1):
x86/hyperv: Fix check of return value from snp_set_vmsa()

Wei Liu (1):
x86/hyperv: fix an indentation issue in mshyperv.h

Documentation/userspace-api/ioctl/ioctl-number.rst | 2 +
arch/arm64/hyperv/hv_core.c | 17 +
arch/arm64/hyperv/mshyperv.c | 6 +
arch/arm64/include/asm/mshyperv.h | 13 +
arch/x86/hyperv/Makefile | 2 +-
arch/x86/hyperv/hv_apic.c | 5 +
arch/x86/hyperv/hv_init.c | 35 +-
arch/x86/hyperv/hv_vtl.c | 34 +
arch/x86/hyperv/irqdomain.c | 6 +-
arch/x86/hyperv/ivm.c | 2 +-
arch/x86/hyperv/mmu.c | 4 +
arch/x86/include/asm/mshyperv.h | 8 +-
arch/x86/kernel/cpu/mshyperv.c | 40 +-
drivers/acpi/numa/srat.c | 1 +
drivers/clocksource/hyperv_timer.c | 4 +-
drivers/hv/Kconfig | 17 +
drivers/hv/Makefile | 4 +
drivers/hv/hv.c | 94 +-
drivers/hv/hv_common.c | 198 +-
{arch/x86/hyperv => drivers/hv}/hv_proc.c | 27 +-
drivers/hv/mshv.h | 30 +
drivers/hv/mshv_common.c | 161 ++
drivers/hv/mshv_eventfd.c | 833 +++++++
drivers/hv/mshv_eventfd.h | 71 +
drivers/hv/mshv_irq.c | 124 ++
drivers/hv/mshv_portid_table.c | 83 +
drivers/hv/mshv_root.h | 311 +++
drivers/hv/mshv_root_hv_call.c | 849 +++++++
drivers/hv/mshv_root_main.c | 2307 ++++++++++++++++++++
drivers/hv/mshv_synic.c | 665 ++++++
drivers/hv/vmbus_drv.c | 54 +-
drivers/iommu/hyperv-iommu.c | 8 +-
include/asm-generic/mshyperv.h | 72 +-
include/hyperv/hvgdk_mini.h | 83 +-
include/hyperv/hvhdk.h | 132 +-
include/hyperv/hvhdk_mini.h | 91 +
include/linux/hyperv.h | 57 +-
include/uapi/linux/mshv.h | 291 +++
kernel/cpu.c | 1 +
39 files changed, 6514 insertions(+), 228 deletions(-)
rename {arch/x86/hyperv => drivers/hv}/hv_proc.c (90%)
create mode 100644 drivers/hv/mshv.h
create mode 100644 drivers/hv/mshv_common.c
create mode 100644 drivers/hv/mshv_eventfd.c
create mode 100644 drivers/hv/mshv_eventfd.h
create mode 100644 drivers/hv/mshv_irq.c
create mode 100644 drivers/hv/mshv_portid_table.c
create mode 100644 drivers/hv/mshv_root.h
create mode 100644 drivers/hv/mshv_root_hv_call.c
create mode 100644 drivers/hv/mshv_root_main.c
create mode 100644 drivers/hv/mshv_synic.c
create mode 100644 include/uapi/linux/mshv.h