summaryrefslogtreecommitdiff
path: root/arch
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2026-10-29 12:39:45 -1000
committerLinus Torvalds <torvalds@linux-foundation.org>2026-10-29 12:39:45 -1000
commit9c7e3d59107e2daf204bf6bf87b6c448ca89defe (patch)
tree59e0a03cba2d5dc957b578b0afbb5e95a39fe0ee /arch
parent1b8b67503725fa6deb3a4f00ea61f982bd00c152 (diff)
parent33b28f3b313353f11fc939e9a268605e66290d0b (diff)
Merge tag 'hyperv-next-signed-20261028' of git://git.kernel.org/pub/scm/linux/kernel/git/hyperv/linuxHEADmaster
Pull hyperv updates from Wei Liu: - Update to documents and code comments (Michael Kelley) - Harden Vmbus (Kameron Carr) - Rework MSHV driver page deposit logic (Mukesh Rathor) - Vmbus kexec bug fix (Shradha Gupta) - Miscellaneous bug fixes (Daehyeon Ko, Jiale Yao, Sasha Levin) * tag 'hyperv-next-signed-20261028' of git://git.kernel.org/pub/scm/linux/kernel/git/hyperv/linux: Drivers: hv: Remove leftover support for old Hyper-V versions mshv: Remove unused *_old memory deposit functions mshv: Redesign hypervisor memory deposit logic mshv: Rename memory deposit memory functions to _old mshv_vtl: reject poll files with multiple waitqueues mshv_vtl: detach poll waiter on POLLFREE mshv_vtl: initialize poll file mutex before device registration Documentation: hyperv: Update information on guest CPU offlining Documentation: hyperv: Remove support for guests on Hyper-V 2012/2012R2 Drivers: hv: Run VMBus kexec cleanup from syscore shutdown kexec: Add helper to report an active kexec reboot tools: hv: remove unused rte_smp_mb() Documentation: hyperv: Update documentation for sending VMBus packets Drivers: hv: vmbus: Check ACPI companion before use Documentation: hyperv: Describe validation of the ring buffer indices Drivers: hv: vmbus: Keep the ring byte counts sane for a bad index Drivers: hv: vmbus: Compute ring byte counts from a caller-held snapshot Drivers: hv: vmbus: Use *_ONCE() to access shared ring buffer indices Drivers: hv: vmbus: Bounds check the shared ring buffer indices
Diffstat (limited to 'arch')
-rw-r--r--arch/x86/kernel/cpu/mshyperv.c27
1 files changed, 6 insertions, 21 deletions
diff --git a/arch/x86/kernel/cpu/mshyperv.c b/arch/x86/kernel/cpu/mshyperv.c
index b4af7c0a70ac..fec1c37dafbf 100644
--- a/arch/x86/kernel/cpu/mshyperv.c
+++ b/arch/x86/kernel/cpu/mshyperv.c
@@ -148,7 +148,6 @@ EXPORT_SYMBOL_GPL(hv_set_msr);
static void (*mshv_handler)(void);
static void (*vmbus_handler)(void);
static void (*hv_stimer0_handler)(void);
-static void (*hv_kexec_handler)(void);
static void (*hv_crash_handler)(struct pt_regs *regs);
DEFINE_IDTENTRY_SYSVEC(sysvec_hyperv_callback)
@@ -215,16 +214,6 @@ void hv_remove_stimer0_handler(void)
hv_stimer0_handler = NULL;
}
-void hv_setup_kexec_handler(void (*handler)(void))
-{
- hv_kexec_handler = handler;
-}
-
-void hv_remove_kexec_handler(void)
-{
- hv_kexec_handler = NULL;
-}
-
void hv_setup_crash_handler(void (*handler)(struct pt_regs *regs))
{
hv_crash_handler = handler;
@@ -240,17 +229,13 @@ static void hv_machine_shutdown(void)
{
if (kexec_in_progress) {
hv_stimer_global_cleanup();
-
- if (hv_kexec_handler)
- hv_kexec_handler();
- }
-
- /*
- * Call hv_cpu_die() on all the CPUs, otherwise later the hypervisor
- * corrupts the old VP Assist Pages and can crash the kexec kernel.
- */
- if (kexec_in_progress)
+ /*
+ * Call hv_cpu_die() on all the CPUs, otherwise later the
+ * hypervisor corrupts the old VP Assist Pages and can crash
+ * the kexec kernel.
+ */
cpuhp_remove_state(CPUHP_AP_HYPERV_ONLINE);
+ }
/* The function calls stop_other_cpus(). */
native_machine_shutdown();