RE: [PATCH 0/4] x86/Hyper-V: Panic code path fixes

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



From: ltykernel@xxxxxxxxx <ltykernel@xxxxxxxxx> Sent: Tuesday, March 17, 2020 6:25 AM
> 
> This patchset fixes some issues in the Hyper-V panic code path.
> Patch 1 resolves issue that panic system still responses network
> packets.
> Patch 2-3 resolves crash enlightenment issues.
> Patch 4 is to set crash_kexec_post_notifiers to true for Hyper-V
> VM in order to report crash data or kmsg to host before running
> kdump kernel.

I still see an issue that isn't addressed by these patches.  The VMbus
driver registers a "die notifier" and a "panic notifier".   But die() will
eventually call panic() if panic_on_oops is set (which I think it typically
is).  If the CRASH_NOTIFY_MSG option is *not* enabled, then
hyperv_report_panic() could get called by the die notifier, and then
again by the panic notifier.

Do we even need the "die notifier"?  If it was removed, there would
not be any notification to Hyper-V via the die() path unless panic_on_oops
is set, which I think is actually the correct behavior.  I'm not
completely clear on what is supposed to happen in general to the
Linux kernel if panic_on_oops is not set. Does it try to continue to run?
If so, then we should not be notifying Hyper-V if panic_on_oops is not
set, and removing the die notifier is the right thing to do.

Michael

> 
> Tianyu Lan (4):
>   x86/Hyper-V: Unload vmbus channel in hv panic callback
>   x86/Hyper-V: Free hv_panic_page when fail to register kmsg dump
>   x86/Hyper-V: Trigger crash enlightenment only once during  system
>     crash.
>   x86/Hyper-V: Report crash register data or ksmg before running crash
>     kernel
> 
>  arch/x86/kernel/cpu/mshyperv.c | 10 ++++++++++
>  drivers/hv/channel_mgmt.c      |  5 +++++
>  drivers/hv/vmbus_drv.c         | 35 +++++++++++++++++++++++++----------
>  3 files changed, 40 insertions(+), 10 deletions(-)
> 
> --
> 2.14.5





[Index of Archives]     [Linux Samsung SoC]     [Linux Rockchip SoC]     [Linux Actions SoC]     [Linux for Synopsys ARC Processors]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]


  Powered by Linux