Am 21.02.2017 um 09:50 schrieb Chao Peng:
> 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.
> 
> Cc: [email protected]
> Signed-off-by: Chao Peng <[email protected]>
> ---
>  arch/x86/kvm/vmx.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c
> index a236dec..2c22aef 100644
> --- a/arch/x86/kvm/vmx.c
> +++ b/arch/x86/kvm/vmx.c
> @@ -3962,7 +3962,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));
>  }
> @@ -8350,7 +8350,7 @@ static void kvm_flush_pml_buffers(struct kvm *kvm)
>  static void vmx_dump_sel(char *name, uint32_t sel)
>  {
>       pr_err("%s sel=0x%04x, attr=0x%05x, limit=0x%08x, base=0x%016lx\n",
> -            name, vmcs_read32(sel),
> +            name, vmcs_read16(sel),
>              vmcs_read32(sel + GUEST_ES_AR_BYTES - GUEST_ES_SELECTOR),
>              vmcs_read32(sel + GUEST_ES_LIMIT - GUEST_ES_SELECTOR),
>              vmcs_readl(sel + GUEST_ES_BASE - GUEST_ES_SELECTOR));
> 

Reviewed-by: David Hildenbrand <[email protected]>

-- 
Thanks,

David

Reply via email to