[PATCH] [271/275] Revert "KVM: Correct ordering of ldt reload wrt fs/gs reload"

From: Andi Kleen
Date: Wed Mar 30 2011 - 17:10:33 EST


2.6.35-longterm review patch. If anyone has any objections, please let me know.

------------------
This reverts commit d3f813da18f83a31f2678988b450e6a1c94c95ed.
Signed-off-by: Andi Kleen <ak@xxxxxxxxxxxxxxx>

---
arch/x86/kvm/svm.c | 2 +-
arch/x86/kvm/vmx.c | 4 ++--
2 files changed, 3 insertions(+), 3 deletions(-)

Index: linux-2.6.35.y/arch/x86/kvm/svm.c
===================================================================
--- linux-2.6.35.y.orig/arch/x86/kvm/svm.c 2011-01-13 09:47:51.000000000 -0800
+++ linux-2.6.35.y/arch/x86/kvm/svm.c 2011-03-29 23:53:33.374683701 -0700
@@ -3184,9 +3184,9 @@
vcpu->arch.regs[VCPU_REGS_RSP] = svm->vmcb->save.rsp;
vcpu->arch.regs[VCPU_REGS_RIP] = svm->vmcb->save.rip;

- kvm_load_ldt(ldt_selector);
kvm_load_fs(fs_selector);
kvm_load_gs(gs_selector);
+ kvm_load_ldt(ldt_selector);
load_host_msrs(vcpu);

reload_tss(vcpu);
Index: linux-2.6.35.y/arch/x86/kvm/vmx.c
===================================================================
--- linux-2.6.35.y.orig/arch/x86/kvm/vmx.c 2011-01-13 09:47:51.000000000 -0800
+++ linux-2.6.35.y/arch/x86/kvm/vmx.c 2011-03-29 23:53:33.374683701 -0700
@@ -791,6 +791,8 @@

++vmx->vcpu.stat.host_state_reload;
vmx->host_state.loaded = 0;
+ if (vmx->host_state.fs_reload_needed)
+ kvm_load_fs(vmx->host_state.fs_sel);
if (vmx->host_state.gs_ldt_reload_needed) {
kvm_load_ldt(vmx->host_state.ldt_sel);
/*
@@ -804,8 +806,6 @@
#endif
local_irq_restore(flags);
}
- if (vmx->host_state.fs_reload_needed)
- loadsegment(fs, vmx->host_state.fs_sel);
reload_tss();
#ifdef CONFIG_X86_64
if (is_long_mode(&vmx->vcpu)) {
--
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/