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

Marcelo Tosatti mtosatti at redhat.com
Mon Nov 19 19:32:58 EST 2012


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 at vger.kernel.org
> > 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 at vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html



More information about the kexec mailing list