Re: [PATCH 1/1] kvm/mmu: Resolve compile warning

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




javier martinez canillas schrieb:
> I got this compile warning with today linux-next:
> 
> arch/x86/kvm/mmu.c: In function ‘kvm_set_pte_rmapp’:
> arch/x86/kvm/mmu.c:770: warning: cast to pointer from integer of different size
> arch/x86/kvm/mmu.c: In function ‘kvm_set_spte_hva’:
> arch/x86/kvm/mmu.c:849: warning: cast from pointer to integer of different size
> 
> This patch solves the issue:
> 
> Signed-off-by: Javier Martinez Canillas <martinez.javier@xxxxxxxxx>
> ---
>  arch/x86/kvm/mmu.c |    4 ++--
>  1 files changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/arch/x86/kvm/mmu.c b/arch/x86/kvm/mmu.c
> index 20a2cd1..a0b2610 100644
> --- a/arch/x86/kvm/mmu.c
> +++ b/arch/x86/kvm/mmu.c
> @@ -767,7 +767,7 @@ static int kvm_set_pte_rmapp(struct kvm *kvm, unsigned long *rmapp, u64 data)
>  {
>  	int need_flush = 0;
>  	u64 *spte, new_spte;
> -	pte_t *ptep = (pte_t *)data;
> +	pte_t *ptep = (pte_t *)(unsigned long)data;
>  	pfn_t new_pfn;
>  
>  	WARN_ON(pte_huge(*ptep));
> @@ -846,7 +846,7 @@ int kvm_unmap_hva(struct kvm *kvm, unsigned long hva)
>  
>  void kvm_set_spte_hva(struct kvm *kvm, unsigned long hva, pte_t pte)
>  {
> -	kvm_handle_hva(kvm, hva, (u64)&pte, kvm_set_pte_rmapp);
> +	kvm_handle_hva(kvm, hva, (unsigned long)&pte, kvm_set_pte_rmapp);
>  }
>  
>  static int kvm_age_rmapp(struct kvm *kvm, unsigned long *rmapp, u64 data)


Hi javier,
from the part is see in the patch i see the follwing problem:
 in kvm_set_pte_rmapp() you cast an U64 to (unsigned long)
it seems that kvm_set_pte_rmapp is mapped via kvm_handle_hva().
here pte_t pte is casted into (unsigned long).
Does look wired.


btw: there is also cleanup available claiming to fix the same warning
http://article.gmane.org/gmane.linux.kernel/900102

ntl: to much casting points to seroius trouble

re,
 wh
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux