diff options
author | Avi Kivity <avi@qumranet.com> | 2007-05-02 17:33:43 +0300 |
---|---|---|
committer | Avi Kivity <avi@qumranet.com> | 2007-07-16 12:05:39 +0300 |
commit | 707c08743060b6721b08df68f4fd546b106e7510 (patch) | |
tree | f36504b4e1696a36bb63b3bb78edfdf152a59c23 | |
parent | 33ed6329210f3ad0638306bfa46cd3aaf5a5f929 (diff) | |
download | kernel-crypto-707c08743060b6721b08df68f4fd546b106e7510.tar.gz kernel-crypto-707c08743060b6721b08df68f4fd546b106e7510.tar.xz kernel-crypto-707c08743060b6721b08df68f4fd546b106e7510.zip |
KVM: Move some more msr mangling into vmx_save_host_state()
Signed-off-by: Avi Kivity <avi@qumranet.com>
-rw-r--r-- | drivers/kvm/vmx.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/drivers/kvm/vmx.c b/drivers/kvm/vmx.c index 677b38c4444..93c3abfc1e0 100644 --- a/drivers/kvm/vmx.c +++ b/drivers/kvm/vmx.c @@ -290,6 +290,13 @@ static void vmx_save_host_state(struct kvm_vcpu *vcpu) vmcs_writel(HOST_FS_BASE, segment_base(hs->fs_sel)); vmcs_writel(HOST_GS_BASE, segment_base(hs->gs_sel)); #endif + +#ifdef CONFIG_X86_64 + if (is_long_mode(vcpu)) { + save_msrs(vcpu->host_msrs + msr_offset_kernel_gs_base, 1); + load_msrs(vcpu->guest_msrs, NR_BAD_MSRS); + } +#endif } static void vmx_load_host_state(struct kvm_vcpu *vcpu) @@ -1903,13 +1910,6 @@ preempted: if (vcpu->guest_debug.enabled) kvm_guest_debug_pre(vcpu); -#ifdef CONFIG_X86_64 - if (is_long_mode(vcpu)) { - save_msrs(vcpu->host_msrs + msr_offset_kernel_gs_base, 1); - load_msrs(vcpu->guest_msrs, NR_BAD_MSRS); - } -#endif - again: vmx_save_host_state(vcpu); kvm_load_guest_fpu(vcpu); |