qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH] linux-headers: Fix type cast warning for 64 bit


From: Peter Maydell
Subject: Re: [Qemu-devel] [PATCH] linux-headers: Fix type cast warning for 64 bit MinGW-w64
Date: Tue, 8 Sep 2015 20:15:50 +0100

On 8 September 2015 at 20:11, Stefan Weil <address@hidden> wrote:
> Type casts from pointers to unsigned long don't work on 64 bit Windows
> because both types have different size.
>
> Compiler warning:
>
> include/standard-headers/linux/virtio_ring.h:146:23:
>  warning: cast from pointer to integer of different size
>  [-Wpointer-to-int-cast]
>   vr->used = (void *)(((unsigned long)&vr->avail->ring[num] + ...
>                        ^
>
> Signed-off-by: Stefan Weil <address@hidden>
> ---
>
> This is a modification of a Linux header file,
> something we usually try to avoid.
>
> I did not succeed in removing this header from compilations
> for Windows (which would have been the best solution).

No, this header is supposed to work everywhere (that's why
it's in standard-headers/ rather than linux-headers),
because virtio devices must work everywhere. We need to
improve the process which creates it from the kernel header
by automatedly fixing up non-portable constructs
(which is handled by scripts/update-linux-headers.sh).
Some extra seddery in cp_virtio() is probably required.

thanks
-- PMM



reply via email to

[Prev in Thread] Current Thread [Next in Thread]