From: walter harms <wharms@bfs.de>
To: javier martinez canillas <martinez.javier@gmail.com>
Cc: avi@redhat.com, kvm@vger.kernel.org, kernel-janitors@vger.kernel.org
Subject: Re: [PATCH 1/1] kvm/mmu: Resolve compile warning
Date: Mon, 12 Oct 2009 11:59:54 +0000 [thread overview]
Message-ID: <4AD31A3A.90108@bfs.de> (raw)
In-Reply-To: <1255242503.4326.39.camel@laptop>
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@gmail.com>
> ---
> 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
WARNING: multiple messages have this Message-ID (diff)
From: walter harms <wharms@bfs.de>
To: javier martinez canillas <martinez.javier@gmail.com>
Cc: avi@redhat.com, kvm@vger.kernel.org, kernel-janitors@vger.kernel.org
Subject: Re: [PATCH 1/1] kvm/mmu: Resolve compile warning
Date: Mon, 12 Oct 2009 13:59:54 +0200 [thread overview]
Message-ID: <4AD31A3A.90108@bfs.de> (raw)
In-Reply-To: <1255242503.4326.39.camel@laptop>
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@gmail.com>
> ---
> 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
next prev parent reply other threads:[~2009-10-12 11:59 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-10-11 6:28 [PATCH 1/1] kvm/mmu: Resolve compile warning javier martinez canillas
2009-10-11 6:28 ` javier martinez canillas
2009-10-12 11:59 ` walter harms [this message]
2009-10-12 11:59 ` walter harms
2009-10-13 17:10 ` Marcelo Tosatti
2009-10-13 17:10 ` Marcelo Tosatti
2009-10-13 18:32 ` Javier Martinez Canillas
2009-10-13 18:32 ` Javier Martinez Canillas
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4AD31A3A.90108@bfs.de \
--to=wharms@bfs.de \
--cc=avi@redhat.com \
--cc=kernel-janitors@vger.kernel.org \
--cc=kvm@vger.kernel.org \
--cc=martinez.javier@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.