diff mbox series

[v2] KVM: vmx: fix build warnings in hv_enable_direct_tlbflush() on i386

Message ID 20190925133035.7576-1-vkuznets@redhat.com (mailing list archive)
State New, archived
Headers show
Series [v2] KVM: vmx: fix build warnings in hv_enable_direct_tlbflush() on i386 | expand

Commit Message

Vitaly Kuznetsov Sept. 25, 2019, 1:30 p.m. UTC
The following was reported on i386:

  arch/x86/kvm/vmx/vmx.c: In function 'hv_enable_direct_tlbflush':
  arch/x86/kvm/vmx/vmx.c:503:10: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]

pr_debugs() in this function are  more or less useless, let's just
remove them. evmcs->hv_vm_id can use 'unsigned long' instead of 'u64'.

Also, simplify the code a little bit.

Reported-by: kbuild test robot <lkp@intel.com>
Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
---
 arch/x86/kvm/vmx/vmx.c | 14 +++++---------
 1 file changed, 5 insertions(+), 9 deletions(-)

Comments

Paolo Bonzini Sept. 25, 2019, 1:31 p.m. UTC | #1
On 25/09/19 15:30, Vitaly Kuznetsov wrote:
> The following was reported on i386:
> 
>   arch/x86/kvm/vmx/vmx.c: In function 'hv_enable_direct_tlbflush':
>   arch/x86/kvm/vmx/vmx.c:503:10: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
> 
> pr_debugs() in this function are  more or less useless, let's just
> remove them. evmcs->hv_vm_id can use 'unsigned long' instead of 'u64'.
> 
> Also, simplify the code a little bit.
> 
> Reported-by: kbuild test robot <lkp@intel.com>
> Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
> ---
>  arch/x86/kvm/vmx/vmx.c | 14 +++++---------
>  1 file changed, 5 insertions(+), 9 deletions(-)
> 
> diff --git a/arch/x86/kvm/vmx/vmx.c b/arch/x86/kvm/vmx/vmx.c
> index a7c9922e3905..d5b978068209 100644
> --- a/arch/x86/kvm/vmx/vmx.c
> +++ b/arch/x86/kvm/vmx/vmx.c
> @@ -495,23 +495,19 @@ static int hv_enable_direct_tlbflush(struct kvm_vcpu *vcpu)
>  	 * Synthetic VM-Exit is not enabled in current code and so All
>  	 * evmcs in singe VM shares same assist page.
>  	 */
> -	if (!*p_hv_pa_pg) {
> +	if (!*p_hv_pa_pg)
>  		*p_hv_pa_pg = kzalloc(PAGE_SIZE, GFP_KERNEL);
> -		if (!*p_hv_pa_pg)
> -			return -ENOMEM;
> -		pr_debug("KVM: Hyper-V: allocated PA_PG for %llx\n",
> -		       (u64)&vcpu->kvm);
> -	}
> +
> +	if (!*p_hv_pa_pg)
> +		return -ENOMEM;
>  
>  	evmcs = (struct hv_enlightened_vmcs *)to_vmx(vcpu)->loaded_vmcs->vmcs;
>  
>  	evmcs->partition_assist_page =
>  		__pa(*p_hv_pa_pg);
> -	evmcs->hv_vm_id = (u64)vcpu->kvm;
> +	evmcs->hv_vm_id = (unsigned long)vcpu->kvm;
>  	evmcs->hv_enlightenments_control.nested_flush_hypercall = 1;
>  
> -	pr_debug("KVM: Hyper-V: enabled DIRECT flush for %llx\n",
> -		 (u64)vcpu->kvm);
>  	return 0;
>  }
>  
> 

Queued, thanks.

Paolo
diff mbox series

Patch

diff --git a/arch/x86/kvm/vmx/vmx.c b/arch/x86/kvm/vmx/vmx.c
index a7c9922e3905..d5b978068209 100644
--- a/arch/x86/kvm/vmx/vmx.c
+++ b/arch/x86/kvm/vmx/vmx.c
@@ -495,23 +495,19 @@  static int hv_enable_direct_tlbflush(struct kvm_vcpu *vcpu)
 	 * Synthetic VM-Exit is not enabled in current code and so All
 	 * evmcs in singe VM shares same assist page.
 	 */
-	if (!*p_hv_pa_pg) {
+	if (!*p_hv_pa_pg)
 		*p_hv_pa_pg = kzalloc(PAGE_SIZE, GFP_KERNEL);
-		if (!*p_hv_pa_pg)
-			return -ENOMEM;
-		pr_debug("KVM: Hyper-V: allocated PA_PG for %llx\n",
-		       (u64)&vcpu->kvm);
-	}
+
+	if (!*p_hv_pa_pg)
+		return -ENOMEM;
 
 	evmcs = (struct hv_enlightened_vmcs *)to_vmx(vcpu)->loaded_vmcs->vmcs;
 
 	evmcs->partition_assist_page =
 		__pa(*p_hv_pa_pg);
-	evmcs->hv_vm_id = (u64)vcpu->kvm;
+	evmcs->hv_vm_id = (unsigned long)vcpu->kvm;
 	evmcs->hv_enlightenments_control.nested_flush_hypercall = 1;
 
-	pr_debug("KVM: Hyper-V: enabled DIRECT flush for %llx\n",
-		 (u64)vcpu->kvm);
 	return 0;
 }