Re: [PATCH] arch: x86: boot: compressed: eboot: fix cast warningson 32b platforms

From: H. Peter Anvin
Date: Tue Jan 01 2013 - 12:34:39 EST


On 12/26/2012 12:00 AM, Borislav Petkov wrote:
> On Sat, Dec 22, 2012 at 11:23:25AM +0100, Stefan Hasko wrote:
>> Fixed different size cast warnings in function setup_efi_pci
>>
>> Signed-off-by: Stefan Hasko <hasko.stevo@xxxxxxxxx>
>
> You might want to add the actual compiler warnings to the commit
> message:
>
> arch/x86/boot/compressed/eboot.c: In function âsetup_efi_pciâ:
> arch/x86/boot/compressed/eboot.c:259:9: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
> arch/x86/boot/compressed/eboot.c:262:10: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
> arch/x86/boot/compressed/eboot.c:348:17: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
> arch/x86/boot/compressed/eboot.c:350:29: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
>
> And yes, I see them in all{mod,yes}config builds here too. The issue,
> AFAICT, is that setup_data is __u64 to obviously accomodate 8-byte
> pointers on x86-64 but on 32-bit they're half the size. And we obviously
> cannot change struct setup_data since this is an ABI so I'd guess the
> casts to native pointer sizes are ok. So
>
> Acked-by: Borislav Petkov <bp@xxxxxxxxx>
>

Yes, but stylistically: we don't use uintptr_t in Linux, but rather
"unsigned long".

-hpa


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/