Merge branch 'x86-asm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
* 'x86-asm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: um, x86: Cast to (u64 *) inside set_64bit() x86-32, asm: Directly access per-cpu GDT x86-64, asm: Directly access per-cpu IST x86, asm: Merge cmpxchg_486_u64() and cmpxchg8b_emu() x86, asm: Move cmpxchg emulation code to arch/x86/lib x86, asm: Clean up and simplify <asm/cmpxchg.h> x86, asm: Clean up and simplify set_64bit() x86: Add memory modify constraints to xchg() and cmpxchg() x86-64: Simplify loading initial_gs x86: Use symbolic MSR names x86: Remove redundant K6 MSRs
This commit is contained in:
@ -240,14 +240,14 @@ static u64 host_efer;
|
||||
static void ept_save_pdptrs(struct kvm_vcpu *vcpu);
|
||||
|
||||
/*
|
||||
* Keep MSR_K6_STAR at the end, as setup_msrs() will try to optimize it
|
||||
* Keep MSR_STAR at the end, as setup_msrs() will try to optimize it
|
||||
* away by decrementing the array size.
|
||||
*/
|
||||
static const u32 vmx_msr_index[] = {
|
||||
#ifdef CONFIG_X86_64
|
||||
MSR_SYSCALL_MASK, MSR_LSTAR, MSR_CSTAR,
|
||||
#endif
|
||||
MSR_EFER, MSR_TSC_AUX, MSR_K6_STAR,
|
||||
MSR_EFER, MSR_TSC_AUX, MSR_STAR,
|
||||
};
|
||||
#define NR_VMX_MSR ARRAY_SIZE(vmx_msr_index)
|
||||
|
||||
@ -1117,10 +1117,10 @@ static void setup_msrs(struct vcpu_vmx *vmx)
|
||||
if (index >= 0 && vmx->rdtscp_enabled)
|
||||
move_msr_up(vmx, index, save_nmsrs++);
|
||||
/*
|
||||
* MSR_K6_STAR is only needed on long mode guests, and only
|
||||
* MSR_STAR is only needed on long mode guests, and only
|
||||
* if efer.sce is enabled.
|
||||
*/
|
||||
index = __find_msr_index(vmx, MSR_K6_STAR);
|
||||
index = __find_msr_index(vmx, MSR_STAR);
|
||||
if ((index >= 0) && (vmx->vcpu.arch.efer & EFER_SCE))
|
||||
move_msr_up(vmx, index, save_nmsrs++);
|
||||
}
|
||||
|
Reference in New Issue
Block a user