* Re: [PATCH] efi: Fix warning of int-to-pointer-cast on x86 32-bit builds
2015-10-22 17:28 [PATCH] efi: Fix warning of int-to-pointer-cast on x86 32-bit builds Taku Izumi
@ 2015-10-22 8:33 ` Ard Biesheuvel
2015-10-23 0:39 ` Izumi, Taku
0 siblings, 1 reply; 3+ messages in thread
From: Ard Biesheuvel @ 2015-10-22 8:33 UTC (permalink / raw)
To: Taku Izumi
Cc: linux-tip-commits, linux-kernel, mingo.kernel.org, matt.fleming,
kamezawa.hiroyu
> On 22 okt. 2015, at 19:28, Taku Izumi <izumi.taku@jp.fujitsu.com> wrote:
>
> commit-0f96a99 introduces the following warning message:
>
> drivers/firmware/efi/fake_mem.c:186:20: warning: cast to pointer
> from integer of different size [-Wint-to-pointer-cast]
>
> new_memmap_phy was defined as a u64 value and casted to void*.
> This causes a warning of int-to-pointer-cast on x86 32-bit
> environment.
>
> This patch changes the type of "new_memmap_phy" variable
> from "u64" into "phys_addr_t" to avoid it.
This assumes sizeof(void*) == sizeof(phys_addr_t), which is not always true, e.g., on 32-bit ARM (whose UEFI support is in development but not yet merged) with LPAE enabled.
Could we use unsigned long instead?
Ard.
> Reported-by: Ingo Molnar <mingo@kernel.org>
> Signed-off-by: Taku Izumi <izumi.taku@jp.fujitsu.com>
> ---
> drivers/firmware/efi/fake_mem.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/firmware/efi/fake_mem.c b/drivers/firmware/efi/fake_mem.c
> index 32bcb14..b65bc07 100644
> --- a/drivers/firmware/efi/fake_mem.c
> +++ b/drivers/firmware/efi/fake_mem.c
> @@ -59,7 +59,7 @@ void __init efi_fake_memmap(void)
> u64 start, end, m_start, m_end, m_attr;
> int new_nr_map = memmap.nr_map;
> efi_memory_desc_t *md;
> - u64 new_memmap_phy;
> + phys_addr_t new_memmap_phy;
> void *new_memmap;
> void *old, *new;
> int i;
> --
> 1.8.3.1
>
^ permalink raw reply [flat|nested] 3+ messages in thread
* [PATCH] efi: Fix warning of int-to-pointer-cast on x86 32-bit builds
@ 2015-10-22 17:28 Taku Izumi
2015-10-22 8:33 ` Ard Biesheuvel
0 siblings, 1 reply; 3+ messages in thread
From: Taku Izumi @ 2015-10-22 17:28 UTC (permalink / raw)
To: linux-tip-commits, linux-kernel, mingo.kernel.org
Cc: ard.biesheuvel, matt.fleming, kamezawa.hiroyu, Taku Izumi
commit-0f96a99 introduces the following warning message:
drivers/firmware/efi/fake_mem.c:186:20: warning: cast to pointer
from integer of different size [-Wint-to-pointer-cast]
new_memmap_phy was defined as a u64 value and casted to void*.
This causes a warning of int-to-pointer-cast on x86 32-bit
environment.
This patch changes the type of "new_memmap_phy" variable
from "u64" into "phys_addr_t" to avoid it.
Reported-by: Ingo Molnar <mingo@kernel.org>
Signed-off-by: Taku Izumi <izumi.taku@jp.fujitsu.com>
---
drivers/firmware/efi/fake_mem.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/firmware/efi/fake_mem.c b/drivers/firmware/efi/fake_mem.c
index 32bcb14..b65bc07 100644
--- a/drivers/firmware/efi/fake_mem.c
+++ b/drivers/firmware/efi/fake_mem.c
@@ -59,7 +59,7 @@ void __init efi_fake_memmap(void)
u64 start, end, m_start, m_end, m_attr;
int new_nr_map = memmap.nr_map;
efi_memory_desc_t *md;
- u64 new_memmap_phy;
+ phys_addr_t new_memmap_phy;
void *new_memmap;
void *old, *new;
int i;
--
1.8.3.1
^ permalink raw reply related [flat|nested] 3+ messages in thread
* RE: [PATCH] efi: Fix warning of int-to-pointer-cast on x86 32-bit builds
2015-10-22 8:33 ` Ard Biesheuvel
@ 2015-10-23 0:39 ` Izumi, Taku
0 siblings, 0 replies; 3+ messages in thread
From: Izumi, Taku @ 2015-10-23 0:39 UTC (permalink / raw)
To: Ard Biesheuvel
Cc: linux-tip-commits, linux-kernel, mingo.kernel.org, matt.fleming,
Kamezawa, Hiroyuki
Dear Ard,
> > commit-0f96a99 introduces the following warning message:
> >
> > drivers/firmware/efi/fake_mem.c:186:20: warning: cast to pointer
> > from integer of different size [-Wint-to-pointer-cast]
> >
> > new_memmap_phy was defined as a u64 value and casted to void*.
> > This causes a warning of int-to-pointer-cast on x86 32-bit
> > environment.
> >
> > This patch changes the type of "new_memmap_phy" variable
> > from "u64" into "phys_addr_t" to avoid it.
>
> This assumes sizeof(void*) == sizeof(phys_addr_t), which is not always true, e.g., on 32-bit ARM (whose UEFI support is
> in development but not yet merged) with LPAE enabled.
>
> Could we use unsigned long instead?
Okay. I'll update my patch.
Sincerely,
Taku Izumi
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2015-10-23 0:39 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-10-22 17:28 [PATCH] efi: Fix warning of int-to-pointer-cast on x86 32-bit builds Taku Izumi
2015-10-22 8:33 ` Ard Biesheuvel
2015-10-23 0:39 ` Izumi, Taku
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).