From: Tianyu Lan <Tianyu.Lan@xxxxxxxxxxxxx> Sent: Tuesday, March 31, 2020 12:39 AM > > When oops happens with panic_on_oops unset, the oops > thread is killed by die() and system continues to run. > In such case, guest should not report crash register > data to host since system still runs. Fix it. > > Reviewed-by: Michael Kelley <mikelley@xxxxxxxxxxxxx> > Signed-off-by: Tianyu Lan <Tianyu.Lan@xxxxxxxxxxxxx> > --- > Change since v3: > Fix compile error > --- > drivers/hv/vmbus_drv.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/drivers/hv/vmbus_drv.c b/drivers/hv/vmbus_drv.c > index 172ceae69abb..4bc02aea2098 100644 > --- a/drivers/hv/vmbus_drv.c > +++ b/drivers/hv/vmbus_drv.c > @@ -31,6 +31,7 @@ > #include <linux/kdebug.h> > #include <linux/efi.h> > #include <linux/random.h> > +#include <linux/kernel.h> Unfortunately, adding the #include doesn't solve the problem. The error occurs when CONFIG_HYPERV=m, because panic_on_oops is not exported. I haven't thought it through, but hopefully there's a solution where panic_on_oops can be tested in hyperv_report_panic() or some other Hyper-V specific function that's never in a module, so that we don't need to export panic_on_oops. Michael > #include <linux/syscore_ops.h> > #include <clocksource/hyperv_timer.h> > #include "hyperv_vmbus.h" > @@ -91,7 +92,7 @@ static int hyperv_die_event(struct notifier_block *nb, unsigned long > val, > * doing hyperv_report_panic_msg() later with kmsg data, don't do > * the notification here. > */ > - if (hyperv_report_reg()) > + if (hyperv_report_reg() && panic_on_oops) > hyperv_report_panic(regs, val); > return NOTIFY_DONE; > } > -- > 2.14.5