Re: [PATCH v4 0/2] x86: clear vmcss on all cpus when doing kdump ifnecessary

From: Marcelo Tosatti
Date: Mon Nov 19 2012 - 19:33:08 EST


On Fri, Nov 16, 2012 at 06:12:58PM +0800, zhangyanfei wrote:
> Hello Marcelo,
>
> Any thoughts?

I thought a function call was OK, but its better to have all code in
vmx.c. Please have an atomic notifier in kexec.c (registered by KVM
module via atomic_notifier_chain_register etc).

Other than that, which is largely cosmetic, it looks fine.
Sorry for not expressing this earlier.


> ä 2012å11æ14æ 17:29, zhangyanfei åé:
> > Currently, kdump just makes all the logical processors leave VMX operation by
> > executing VMXOFF instruction, so any VMCSs active on the logical processors may
> > be corrupted. But, sometimes, we need the VMCSs to debug guest images contained
> > in the host vmcore. To prevent the corruption, we should VMCLEAR the VMCSs before
> > executing the VMXOFF instruction.
> >
> > The patch set provides a way to VMCLEAR vmcss related to guests on all cpus before
> > executing the VMXOFF when doing kdump. This is used to ensure the VMCSs in the
> > vmcore updated and non-corrupted.
> >
> > Changelog from v3 to v4:
> > 1. add a new percpu variable vmclear_skipped to skip
> > vmclear in kdump in some conditions.
> >
> > Changelog from v2 to v3:
> > 1. remove unnecessary conditions in function
> > cpu_emergency_clear_loaded_vmcss as Marcelo suggested.
> >
> > Changelog from v1 to v2:
> > 1. remove the sysctl and clear VMCSs unconditionally.
> >
> > Zhang Yanfei (2):
> > x86/kexec: VMCLEAR vmcss on all cpus if necessary
> > KVM: set/unset crash_clear_loaded_vmcss and vmclear_skipped in
> > kvm_intel module
> >
> > arch/x86/include/asm/kexec.h | 3 +++
> > arch/x86/kernel/crash.c | 32 ++++++++++++++++++++++++++++++++
> > arch/x86/kvm/vmx.c | 32 ++++++++++++++++++++++++++++++++
> > 3 files changed, 67 insertions(+), 0 deletions(-)
> >
> >
> > --
> > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> > the body of a message to majordomo@xxxxxxxxxxxxxxx
> > More majordomo info at http://vger.kernel.org/majordomo-info.html
> > Please read the FAQ at http://www.tux.org/lkml/
> >
>
> --
> To unsubscribe from this list: send the line "unsubscribe kvm" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/