Re: [Bug 1885247] [NEW] Build error in Intel 32-bit hosts

2020-06-26 Thread Aleksandar Markovic
пет, 26. јун 2020. у 12:54 Jon Doron  је написао/ла:
>
> Is there a container I can download which has your build environment?
>

Hello, Jon.

I don't know about the container, but, as Peter noted, the following
(non-beautiful) diff fixes the build problem on the real host:

diff --git a/hw/hyperv/vmbus.c b/hw/hyperv/vmbus.c
index f371240176..9220f7b529 100644
--- a/hw/hyperv/vmbus.c
+++ b/hw/hyperv/vmbus.c
@@ -383,7 +383,8 @@ static ssize_t gpadl_iter_io(GpadlIter *iter, void
*buf, uint32_t len)
 }
 }

-p = (void *)(((uintptr_t)iter->map & TARGET_PAGE_MASK) | off_in_page);
+p = (void *)(uintptr_t)(((uintptr_t)iter->map & TARGET_PAGE_MASK) |
+off_in_page);
 if (iter->dir == DMA_DIRECTION_FROM_DEVICE) {
 memcpy(p, buf, cplen);
 } else {

Not sure if this is an optimal/most-elegant solution though.

Warmly,
Aleksandar


> On Fri, Jun 26, 2020 at 12:27 PM Philippe Mathieu-Daudé
>  wrote:
> >
> > On 6/26/20 11:20 AM, Thomas Huth wrote:
> > > On 26/06/2020 11.13, Philippe Mathieu-Daudé wrote:
> > >> On 6/26/20 9:37 AM, Aleksandar Markovic wrote:
> > >>> пет, 26. јун 2020. у 09:11 Aleksandar Markovic
> > >>> <1885...@bugs.launchpad.net> је написао/ла:
> > 
> >  Public bug reported:
> > 
> >  The code base is on master, checked out on Thursday June25th 2020,
> >  0250c595c9d. The build procedure:
> > 
> >  $ mkdir build-gcc
> >  $ cd build-gcc
> >  $ ../configure
> >  $ make
> > 
> >  The build error message is:
> > 
> > CC  x86_64-softmmu/hw/hyperv/hyperv.o
> > CC  x86_64-softmmu/hw/hyperv/hyperv_testdev.o
> > CC  x86_64-softmmu/hw/hyperv/vmbus.o
> >  /home/rtrk/Build/qemu-master/hw/hyperv/vmbus.c: In function
> >  ‘gpadl_iter_io’:
> >  /home/rtrk/Build/qemu-master/hw/hyperv/vmbus.c:386:13: error: cast
> >  to pointer from integer of different size [-Werror=int-to-pointer-cast]
> >    p = (void *)(((uintptr_t)iter->map & TARGET_PAGE_MASK) |
> >  off_in_page);
> >    ^
> >  cc1: all warnings being treated as errors
> >  make[1]: *** [/home/rtrk/Build/qemu-master/rules.mak:69:
> >  hw/hyperv/vmbus.o] Error 1
> >  make: *** [Makefile:527: x86_64-softmmu/all] Error 2
> > >>
> > >> FWIW there is no CI job covering x86 KVM on 32-bit host build.
> > >> Should this be covered? I guess the problem is no CI services
> > >> provide 32-bit x86...
> > >
> > > You can certainly provide either a container, or install the 32-bit
> > > libraries in a 64-bit environment. Then run
> > >
> > > PKG_CONFIG_LIBDIR=... ./configure --extra-cflags=-m32
> > >
> > > and it should be possible to build 32-bit binaries, too.
> > >
> > > Alternatively, we could add a cross-compilation job that builds with
> > > i686-w64-mingw32 in 32-bit.
> >
> > Oh, this case is covered:
> > https://app.shippable.com/github/qemu/qemu/runs/2437/2/console
> >
> > But this doesn't use KVM ;)
> >



Re: [Bug 1885247] [NEW] Build error in Intel 32-bit hosts

2020-06-26 Thread Jon Doron
Is there a container I can download which has your build environment?

On Fri, Jun 26, 2020 at 12:27 PM Philippe Mathieu-Daudé
 wrote:
>
> On 6/26/20 11:20 AM, Thomas Huth wrote:
> > On 26/06/2020 11.13, Philippe Mathieu-Daudé wrote:
> >> On 6/26/20 9:37 AM, Aleksandar Markovic wrote:
> >>> пет, 26. јун 2020. у 09:11 Aleksandar Markovic
> >>> <1885...@bugs.launchpad.net> је написао/ла:
> 
>  Public bug reported:
> 
>  The code base is on master, checked out on Thursday June25th 2020,
>  0250c595c9d. The build procedure:
> 
>  $ mkdir build-gcc
>  $ cd build-gcc
>  $ ../configure
>  $ make
> 
>  The build error message is:
> 
> CC  x86_64-softmmu/hw/hyperv/hyperv.o
> CC  x86_64-softmmu/hw/hyperv/hyperv_testdev.o
> CC  x86_64-softmmu/hw/hyperv/vmbus.o
>  /home/rtrk/Build/qemu-master/hw/hyperv/vmbus.c: In function
>  ‘gpadl_iter_io’:
>  /home/rtrk/Build/qemu-master/hw/hyperv/vmbus.c:386:13: error: cast
>  to pointer from integer of different size [-Werror=int-to-pointer-cast]
>    p = (void *)(((uintptr_t)iter->map & TARGET_PAGE_MASK) |
>  off_in_page);
>    ^
>  cc1: all warnings being treated as errors
>  make[1]: *** [/home/rtrk/Build/qemu-master/rules.mak:69:
>  hw/hyperv/vmbus.o] Error 1
>  make: *** [Makefile:527: x86_64-softmmu/all] Error 2
> >>
> >> FWIW there is no CI job covering x86 KVM on 32-bit host build.
> >> Should this be covered? I guess the problem is no CI services
> >> provide 32-bit x86...
> >
> > You can certainly provide either a container, or install the 32-bit
> > libraries in a 64-bit environment. Then run
> >
> > PKG_CONFIG_LIBDIR=... ./configure --extra-cflags=-m32
> >
> > and it should be possible to build 32-bit binaries, too.
> >
> > Alternatively, we could add a cross-compilation job that builds with
> > i686-w64-mingw32 in 32-bit.
>
> Oh, this case is covered:
> https://app.shippable.com/github/qemu/qemu/runs/2437/2/console
>
> But this doesn't use KVM ;)
>



Re: [Bug 1885247] [NEW] Build error in Intel 32-bit hosts

2020-06-26 Thread Philippe Mathieu-Daudé
On 6/26/20 11:20 AM, Thomas Huth wrote:
> On 26/06/2020 11.13, Philippe Mathieu-Daudé wrote:
>> On 6/26/20 9:37 AM, Aleksandar Markovic wrote:
>>> пет, 26. јун 2020. у 09:11 Aleksandar Markovic
>>> <1885...@bugs.launchpad.net> је написао/ла:

 Public bug reported:

 The code base is on master, checked out on Thursday June25th 2020,
 0250c595c9d. The build procedure:

 $ mkdir build-gcc
 $ cd build-gcc
 $ ../configure
 $ make

 The build error message is:

    CC  x86_64-softmmu/hw/hyperv/hyperv.o
    CC  x86_64-softmmu/hw/hyperv/hyperv_testdev.o
    CC  x86_64-softmmu/hw/hyperv/vmbus.o
 /home/rtrk/Build/qemu-master/hw/hyperv/vmbus.c: In function
 ‘gpadl_iter_io’:
 /home/rtrk/Build/qemu-master/hw/hyperv/vmbus.c:386:13: error: cast
 to pointer from integer of different size [-Werror=int-to-pointer-cast]
   p = (void *)(((uintptr_t)iter->map & TARGET_PAGE_MASK) |
 off_in_page);
   ^
 cc1: all warnings being treated as errors
 make[1]: *** [/home/rtrk/Build/qemu-master/rules.mak:69:
 hw/hyperv/vmbus.o] Error 1
 make: *** [Makefile:527: x86_64-softmmu/all] Error 2
>>
>> FWIW there is no CI job covering x86 KVM on 32-bit host build.
>> Should this be covered? I guess the problem is no CI services
>> provide 32-bit x86...
> 
> You can certainly provide either a container, or install the 32-bit
> libraries in a 64-bit environment. Then run
> 
> PKG_CONFIG_LIBDIR=... ./configure --extra-cflags=-m32
> 
> and it should be possible to build 32-bit binaries, too.
> 
> Alternatively, we could add a cross-compilation job that builds with
> i686-w64-mingw32 in 32-bit.

Oh, this case is covered:
https://app.shippable.com/github/qemu/qemu/runs/2437/2/console

But this doesn't use KVM ;)




Re: [Bug 1885247] [NEW] Build error in Intel 32-bit hosts

2020-06-26 Thread Thomas Huth

On 26/06/2020 11.13, Philippe Mathieu-Daudé wrote:

On 6/26/20 9:37 AM, Aleksandar Markovic wrote:

пет, 26. јун 2020. у 09:11 Aleksandar Markovic
<1885...@bugs.launchpad.net> је написао/ла:


Public bug reported:

The code base is on master, checked out on Thursday June25th 2020,
0250c595c9d. The build procedure:

$ mkdir build-gcc
$ cd build-gcc
$ ../configure
$ make

The build error message is:

   CC  x86_64-softmmu/hw/hyperv/hyperv.o
   CC  x86_64-softmmu/hw/hyperv/hyperv_testdev.o
   CC  x86_64-softmmu/hw/hyperv/vmbus.o
/home/rtrk/Build/qemu-master/hw/hyperv/vmbus.c: In function ‘gpadl_iter_io’:
/home/rtrk/Build/qemu-master/hw/hyperv/vmbus.c:386:13: error: cast to pointer 
from integer of different size [-Werror=int-to-pointer-cast]
  p = (void *)(((uintptr_t)iter->map & TARGET_PAGE_MASK) | off_in_page);
  ^
cc1: all warnings being treated as errors
make[1]: *** [/home/rtrk/Build/qemu-master/rules.mak:69: hw/hyperv/vmbus.o] 
Error 1
make: *** [Makefile:527: x86_64-softmmu/all] Error 2


FWIW there is no CI job covering x86 KVM on 32-bit host build.
Should this be covered? I guess the problem is no CI services
provide 32-bit x86...


You can certainly provide either a container, or install the 32-bit 
libraries in a 64-bit environment. Then run


PKG_CONFIG_LIBDIR=... ./configure --extra-cflags=-m32

and it should be possible to build 32-bit binaries, too.

Alternatively, we could add a cross-compilation job that builds with 
i686-w64-mingw32 in 32-bit.


 Thomas




Re: [Bug 1885247] [NEW] Build error in Intel 32-bit hosts

2020-06-26 Thread Philippe Mathieu-Daudé
On 6/26/20 9:37 AM, Aleksandar Markovic wrote:
> пет, 26. јун 2020. у 09:11 Aleksandar Markovic
> <1885...@bugs.launchpad.net> је написао/ла:
>>
>> Public bug reported:
>>
>> The code base is on master, checked out on Thursday June25th 2020,
>> 0250c595c9d. The build procedure:
>>
>> $ mkdir build-gcc
>> $ cd build-gcc
>> $ ../configure
>> $ make
>>
>> The build error message is:
>>
>>   CC  x86_64-softmmu/hw/hyperv/hyperv.o
>>   CC  x86_64-softmmu/hw/hyperv/hyperv_testdev.o
>>   CC  x86_64-softmmu/hw/hyperv/vmbus.o
>> /home/rtrk/Build/qemu-master/hw/hyperv/vmbus.c: In function ‘gpadl_iter_io’:
>> /home/rtrk/Build/qemu-master/hw/hyperv/vmbus.c:386:13: error: cast to 
>> pointer from integer of different size [-Werror=int-to-pointer-cast]
>>  p = (void *)(((uintptr_t)iter->map & TARGET_PAGE_MASK) | 
>> off_in_page);
>>  ^
>> cc1: all warnings being treated as errors
>> make[1]: *** [/home/rtrk/Build/qemu-master/rules.mak:69: hw/hyperv/vmbus.o] 
>> Error 1
>> make: *** [Makefile:527: x86_64-softmmu/all] Error 2

FWIW there is no CI job covering x86 KVM on 32-bit host build.
Should this be covered? I guess the problem is no CI services
provide 32-bit x86...




Re: [Bug 1885247] [NEW] Build error in Intel 32-bit hosts

2020-06-26 Thread Aleksandar Markovic
пет, 26. јун 2020. у 09:11 Aleksandar Markovic
<1885...@bugs.launchpad.net> је написао/ла:
>
> Public bug reported:
>
> The code base is on master, checked out on Thursday June25th 2020,
> 0250c595c9d. The build procedure:
>
> $ mkdir build-gcc
> $ cd build-gcc
> $ ../configure
> $ make
>
> The build error message is:
>
>   CC  x86_64-softmmu/hw/hyperv/hyperv.o
>   CC  x86_64-softmmu/hw/hyperv/hyperv_testdev.o
>   CC  x86_64-softmmu/hw/hyperv/vmbus.o
> /home/rtrk/Build/qemu-master/hw/hyperv/vmbus.c: In function ‘gpadl_iter_io’:
> /home/rtrk/Build/qemu-master/hw/hyperv/vmbus.c:386:13: error: cast to pointer 
> from integer of different size [-Werror=int-to-pointer-cast]
>  p = (void *)(((uintptr_t)iter->map & TARGET_PAGE_MASK) | 
> off_in_page);
>  ^
> cc1: all warnings being treated as errors
> make[1]: *** [/home/rtrk/Build/qemu-master/rules.mak:69: hw/hyperv/vmbus.o] 
> Error 1
> make: *** [Makefile:527: x86_64-softmmu/all] Error 2
>

Jon,

Do arilyou have any comment or insight on this?

Thanks,
Aleksandar

> ** Affects: qemu
>  Importance: Undecided
>  Status: New
>
> --
> You received this bug notification because you are a member of qemu-
> devel-ml, which is subscribed to QEMU.
> https://bugs.launchpad.net/bugs/1885247
>
> Title:
>   Build error in Intel 32-bit hosts
>
> Status in QEMU:
>   New
>
> Bug description:
>   The code base is on master, checked out on Thursday June25th 2020,
>   0250c595c9d. The build procedure:
>
>   $ mkdir build-gcc
>   $ cd build-gcc
>   $ ../configure
>   $ make
>
>   The build error message is:
>
> CC  x86_64-softmmu/hw/hyperv/hyperv.o
> CC  x86_64-softmmu/hw/hyperv/hyperv_testdev.o
> CC  x86_64-softmmu/hw/hyperv/vmbus.o
>   /home/rtrk/Build/qemu-master/hw/hyperv/vmbus.c: In function ‘gpadl_iter_io’:
>   /home/rtrk/Build/qemu-master/hw/hyperv/vmbus.c:386:13: error: cast to 
> pointer from integer of different size [-Werror=int-to-pointer-cast]
>p = (void *)(((uintptr_t)iter->map & TARGET_PAGE_MASK) | 
> off_in_page);
>^
>   cc1: all warnings being treated as errors
>   make[1]: *** [/home/rtrk/Build/qemu-master/rules.mak:69: hw/hyperv/vmbus.o] 
> Error 1
>   make: *** [Makefile:527: x86_64-softmmu/all] Error 2
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/qemu/+bug/1885247/+subscriptions
>



[Bug 1885247] [NEW] Build error in Intel 32-bit hosts

2020-06-26 Thread Aleksandar Markovic
Public bug reported:

The code base is on master, checked out on Thursday June25th 2020,
0250c595c9d. The build procedure:

$ mkdir build-gcc
$ cd build-gcc
$ ../configure
$ make

The build error message is:

  CC  x86_64-softmmu/hw/hyperv/hyperv.o
  CC  x86_64-softmmu/hw/hyperv/hyperv_testdev.o
  CC  x86_64-softmmu/hw/hyperv/vmbus.o
/home/rtrk/Build/qemu-master/hw/hyperv/vmbus.c: In function ‘gpadl_iter_io’:
/home/rtrk/Build/qemu-master/hw/hyperv/vmbus.c:386:13: error: cast to pointer 
from integer of different size [-Werror=int-to-pointer-cast]
 p = (void *)(((uintptr_t)iter->map & TARGET_PAGE_MASK) | off_in_page);
 ^
cc1: all warnings being treated as errors
make[1]: *** [/home/rtrk/Build/qemu-master/rules.mak:69: hw/hyperv/vmbus.o] 
Error 1
make: *** [Makefile:527: x86_64-softmmu/all] Error 2

** Affects: qemu
 Importance: Undecided
 Status: New

-- 
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1885247

Title:
  Build error in Intel 32-bit hosts

Status in QEMU:
  New

Bug description:
  The code base is on master, checked out on Thursday June25th 2020,
  0250c595c9d. The build procedure:

  $ mkdir build-gcc
  $ cd build-gcc
  $ ../configure
  $ make

  The build error message is:

CC  x86_64-softmmu/hw/hyperv/hyperv.o
CC  x86_64-softmmu/hw/hyperv/hyperv_testdev.o
CC  x86_64-softmmu/hw/hyperv/vmbus.o
  /home/rtrk/Build/qemu-master/hw/hyperv/vmbus.c: In function ‘gpadl_iter_io’:
  /home/rtrk/Build/qemu-master/hw/hyperv/vmbus.c:386:13: error: cast to pointer 
from integer of different size [-Werror=int-to-pointer-cast]
   p = (void *)(((uintptr_t)iter->map & TARGET_PAGE_MASK) | 
off_in_page);
   ^
  cc1: all warnings being treated as errors
  make[1]: *** [/home/rtrk/Build/qemu-master/rules.mak:69: hw/hyperv/vmbus.o] 
Error 1
  make: *** [Makefile:527: x86_64-softmmu/all] Error 2

To manage notifications about this bug go to:
https://bugs.launchpad.net/qemu/+bug/1885247/+subscriptions