Skip to content

Commit 7a1323b

Browse files
kelleymhSasha Levin
authored andcommitted
Drivers: hv: vmbus: Fix crash handler reset of Hyper-V synic
The crash handler calls hv_synic_cleanup() to shutdown the Hyper-V synthetic interrupt controller. But if the CPU that calls hv_synic_cleanup() has a VMbus channel interrupt assigned to it (which is likely the case in smaller VM sizes), hv_synic_cleanup() returns an error and the synthetic interrupt controller isn't shutdown. While the lack of being shutdown hasn't caused a known problem, it still should be fixed for highest reliability. So directly call hv_synic_disable_regs() instead of hv_synic_cleanup(), which ensures that the synic is always shutdown. Signed-off-by: Michael Kelley <[email protected]> Reviewed-by: Vitaly Kuznetsov <[email protected]> Reviewed-by: Dexuan Cui <[email protected]> Signed-off-by: Sasha Levin <[email protected]>
1 parent 8aea7f8 commit 7a1323b

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

drivers/hv/vmbus_drv.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2310,7 +2310,7 @@ static void hv_crash_handler(struct pt_regs *regs)
23102310
vmbus_connection.conn_state = DISCONNECTED;
23112311
cpu = smp_processor_id();
23122312
hv_stimer_cleanup(cpu);
2313-
hv_synic_cleanup(cpu);
2313+
hv_synic_disable_regs(cpu);
23142314
hyperv_cleanup();
23152315
};
23162316

0 commit comments

Comments
 (0)