On Thu, Apr 02, 2020 at 07:01:56PM +0200, Thomas Gleixner wrote: > Sean Christopherson <sean.j.christopherson@xxxxxxxxx> writes: > > From: Xiaoyao Li <xiaoyao.li@xxxxxxxxx> > > > > In the future, KVM will use handle_user_split_lock() to handle #AC > > caused by split lock in guest. Due to the fact that KVM doesn't have > > a @regs context and will pre-check EFLAGS.AC, move the EFLAGS.AC check > > to do_alignment_check(). > > > > Suggested-by: Sean Christopherson <sean.j.christopherson@xxxxxxxxx> > > Signed-off-by: Xiaoyao Li <xiaoyao.li@xxxxxxxxx> > > Reviewed-by: Tony Luck <tony.luck@xxxxxxxxx> > > Signed-off-by: Sean Christopherson <sean.j.christopherson@xxxxxxxxx> > > --- > > arch/x86/include/asm/cpu.h | 4 ++-- > > arch/x86/kernel/cpu/intel.c | 7 ++++--- > > arch/x86/kernel/traps.c | 2 +- > > 3 files changed, 7 insertions(+), 6 deletions(-) > > > > diff --git a/arch/x86/include/asm/cpu.h b/arch/x86/include/asm/cpu.h > > index ff6f3ca649b3..ff567afa6ee1 100644 > > --- a/arch/x86/include/asm/cpu.h > > +++ b/arch/x86/include/asm/cpu.h > > @@ -43,11 +43,11 @@ unsigned int x86_stepping(unsigned int sig); > > #ifdef CONFIG_CPU_SUP_INTEL > > extern void __init cpu_set_core_cap_bits(struct cpuinfo_x86 *c); > > extern void switch_to_sld(unsigned long tifn); > > -extern bool handle_user_split_lock(struct pt_regs *regs, long error_code); > > +extern bool handle_user_split_lock(unsigned long ip); > > #else > > static inline void __init cpu_set_core_cap_bits(struct cpuinfo_x86 *c) {} > > static inline void switch_to_sld(unsigned long tifn) {} > > -static inline bool handle_user_split_lock(struct pt_regs *regs, long error_code) > > +static inline bool handle_user_split_lock(unsigned long ip) > > This is necessary because VMX can be compiled without CPU_SUP_INTEL? Ya, it came about when cleaning up the IA32_FEATURE_CONTROL MSR handling to consolidate duplicate code. config KVM_INTEL tristate "KVM for Intel (and compatible) processors support" depends on KVM && IA32_FEAT_CTL config IA32_FEAT_CTL def_bool y depends on CPU_SUP_INTEL || CPU_SUP_CENTAUR || CPU_SUP_ZHAOXIN