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: Michael S. Tsirkin
Subject: Re: [Qemu-devel] [PATCH] linux-headers: Fix type cast warning for 64 bit MinGW-w64
Date: Wed, 9 Sep 2015 09:43:47 +0300

On Tue, Sep 08, 2015 at 08:15:50PM +0100, Peter Maydell wrote:
> 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

commit d768f32aec8c0ebb8499ffca89cfed8f5f1a4432
Author: Thomas Huth <address@hidden>
Date:   Thu Jul 2 09:21:22 2015 +0200

    virtio: Fix typecast of pointer in vring_init()
    
    The virtio_ring.h header is used in userspace programs (ie. QEMU),
    too. Here we can not assume that sizeof(pointer) is the same as
    sizeof(long), e.g. when compiling for Windows, so the typecast in
    vring_init() should be done with (uintptr_t) instead of (unsigned long).
    
    Signed-off-by: Thomas Huth <address@hidden>
    Signed-off-by: Michael S. Tsirkin <address@hidden>


Fixed this, so it's just a question of updating from latest linux.

-- 
MST



reply via email to

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