diff options
author | Chao Peng <chao.p.peng@linux.intel.com> | 2017-02-21 03:50:01 -0500 |
---|---|---|
committer | Ben Hutchings <ben@decadent.org.uk> | 2017-06-05 21:17:11 +0100 |
commit | 51d1922991d08e8ea5e54cb425032f544f6337bc (patch) | |
tree | 2f2989763a64bb7cc8ca669017d1490962a92e46 /arch | |
parent | 3959fd3508e2df61a57827100b73334db2e66704 (diff) | |
download | linux-stable-51d1922991d08e8ea5e54cb425032f544f6337bc.tar.gz linux-stable-51d1922991d08e8ea5e54cb425032f544f6337bc.tar.bz2 linux-stable-51d1922991d08e8ea5e54cb425032f544f6337bc.zip |
KVM: VMX: use correct vmcs_read/write for guest segment selector/base
commit 96794e4ed4d758272c486e1529e431efb7045265 upstream.
Guest segment selector is 16 bit field and guest segment base is natural
width field. Fix two incorrect invocations accordingly.
Without this patch, build fails when aggressive inlining is used with ICC.
Signed-off-by: Chao Peng <chao.p.peng@linux.intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
[bwh: Backported to 3.16: drop change in kvm_flush_pml_buffers()]
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/x86/kvm/vmx.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c index dad945386800..d55d7b518cdc 100644 --- a/arch/x86/kvm/vmx.c +++ b/arch/x86/kvm/vmx.c @@ -3231,7 +3231,7 @@ static void fix_rmode_seg(int seg, struct kvm_segment *save) } vmcs_write16(sf->selector, var.selector); - vmcs_write32(sf->base, var.base); + vmcs_writel(sf->base, var.base); vmcs_write32(sf->limit, var.limit); vmcs_write32(sf->ar_bytes, vmx_segment_access_rights(&var)); } |