mbox

[PULL,0/2] M68k for 7.2 patches

Message ID 20221014072356.2075517-1-laurent@vivier.eu (mailing list archive)
State New, archived
Headers show

Pull-request

https://github.com/vivier/qemu-m68k.git tags/m68k-for-7.2-pull-request

Message

Laurent Vivier Oct. 14, 2022, 7:23 a.m. UTC
The following changes since commit f1d33f55c47dfdaf8daacd618588ad3ae4c452d1:

  Merge tag 'pull-testing-gdbstub-plugins-gitdm-061022-3' of https://github.com/stsquad/qemu into staging (2022-10-06 07:11:56 -0400)

are available in the Git repository at:

  https://github.com/vivier/qemu-m68k.git tags/m68k-for-7.2-pull-request

for you to fetch changes up to fa327be58280f76d2565ff0bdb9b0010ac97c3b0:

  m68k: write bootinfo as rom section and re-randomize on reboot (2022-10-11 23:02:46 +0200)

----------------------------------------------------------------
Pull request m68k branch 20221014

Update rng seed boot parameter

----------------------------------------------------------------

Jason A. Donenfeld (2):
  m68k: rework BI_VIRT_RNG_SEED as BI_RNG_SEED
  m68k: write bootinfo as rom section and re-randomize on reboot

 hw/m68k/bootinfo.h                            | 48 ++++++------
 .../standard-headers/asm-m68k/bootinfo-virt.h |  4 +-
 include/standard-headers/asm-m68k/bootinfo.h  |  8 +-
 hw/m68k/q800.c                                | 76 ++++++++++++++-----
 hw/m68k/virt.c                                | 57 +++++++++-----
 5 files changed, 130 insertions(+), 63 deletions(-)

Comments

Stefan Hajnoczi Oct. 16, 2022, 7:50 p.m. UTC | #1
On Fri, 14 Oct 2022 at 03:26, Laurent Vivier <laurent@vivier.eu> wrote:
>
> The following changes since commit f1d33f55c47dfdaf8daacd618588ad3ae4c452d1:
>
>   Merge tag 'pull-testing-gdbstub-plugins-gitdm-061022-3' of https://github.com/stsquad/qemu into staging (2022-10-06 07:11:56 -0400)
>
> are available in the Git repository at:
>
>   https://github.com/vivier/qemu-m68k.git tags/m68k-for-7.2-pull-request
>
> for you to fetch changes up to fa327be58280f76d2565ff0bdb9b0010ac97c3b0:
>
>   m68k: write bootinfo as rom section and re-randomize on reboot (2022-10-11 23:02:46 +0200)
>
> ----------------------------------------------------------------
> Pull request m68k branch 20221014
>
> Update rng seed boot parameter
>
> ----------------------------------------------------------------
>
> Jason A. Donenfeld (2):
>   m68k: rework BI_VIRT_RNG_SEED as BI_RNG_SEED
>   m68k: write bootinfo as rom section and re-randomize on reboot

This commit breaks mingw64 due to the Windows LLP64 data model where
pointers don't fit into unsigned long
(https://en.wikipedia.org/wiki/LP64#64-bit_data_models). Please use
uintptr_t instead of unsigned long:

x86_64-w64-mingw32-gcc -m64 -mcx16 -Ilibqemu-m68k-softmmu.fa.p -I.
-I.. -Itarget/m68k -I../target/m68k -Iqapi -Itrace -Iui -Iui/shader
-I/usr/x86_64-w64-mingw32/sys-root/mingw/include/pixman-1
-I/usr/x86_64-w64-mingw32/sys-root/mingw/include/glib-2.0
-I/usr/x86_64-w64-mingw32/sys-root/mingw/lib/glib-2.0/include
-fdiagnostics-color=auto -Wall -Winvalid-pch -Werror -std=gnu11 -O2 -g
-iquote . -iquote /builds/qemu-project/qemu -iquote
/builds/qemu-project/qemu/include -iquote
/builds/qemu-project/qemu/tcg/i386 -mms-bitfields -U_FORTIFY_SOURCE
-D_FORTIFY_SOURCE=2 -fno-pie -no-pie -D_GNU_SOURCE
-D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes
-Wredundant-decls -Wundef -Wwrite-strings -Wmissing-prototypes
-fno-strict-aliasing -fno-common -fwrapv -Wold-style-declaration
-Wold-style-definition -Wtype-limits -Wformat-security -Wformat-y2k
-Winit-self -Wignored-qualifiers -Wempty-body -Wnested-externs
-Wendif-labels -Wexpansion-to-defined -Wimplicit-fallthrough=2
-Wno-missing-include-dirs -Wno-shift-negative-value -Wno-psabi
-fstack-protector-strong -DNEED_CPU_H
'-DCONFIG_TARGET="m68k-softmmu-config-target.h"'
'-DCONFIG_DEVICES="m68k-softmmu-config-devices.h"' -MD -MQ
libqemu-m68k-softmmu.fa.p/hw_m68k_virt.c.obj -MF
libqemu-m68k-softmmu.fa.p/hw_m68k_virt.c.obj.d -o
libqemu-m68k-softmmu.fa.p/hw_m68k_virt.c.obj -c ../hw/m68k/virt.c
In file included from ../hw/m68k/virt.c:23:
../hw/m68k/virt.c: In function 'virt_init':
../hw/m68k/bootinfo.h:58:26: error: cast from pointer to integer of
different size [-Werror=pointer-to-int-cast]
58 | base = (void *)(((unsigned long)base + 3) & ~3); \
| ^
../hw/m68k/virt.c:261:13: note: in expansion of macro 'BOOTINFOSTR'
261 | BOOTINFOSTR(param_ptr, BI_COMMAND_LINE,
| ^~~~~~~~~~~
../hw/m68k/bootinfo.h:58:16: error: cast to pointer from integer of
different size [-Werror=int-to-pointer-cast]
58 | base = (void *)(((unsigned long)base + 3) & ~3); \
| ^
../hw/m68k/virt.c:261:13: note: in expansion of macro 'BOOTINFOSTR'
261 | BOOTINFOSTR(param_ptr, BI_COMMAND_LINE,
| ^~~~~~~~~~~
../hw/m68k/bootinfo.h:75:26: error: cast from pointer to integer of
different size [-Werror=pointer-to-int-cast]
75 | base = (void *)(((unsigned long)base + 3) & ~3); \
| ^
../hw/m68k/virt.c:268:9: note: in expansion of macro 'BOOTINFODATA'
268 | BOOTINFODATA(param_ptr, BI_RNG_SEED,
| ^~~~~~~~~~~~
../hw/m68k/bootinfo.h:75:16: error: cast to pointer from integer of
different size [-Werror=int-to-pointer-cast]
75 | base = (void *)(((unsigned long)base + 3) & ~3); \
| ^
../hw/m68k/virt.c:268:9: note: in expansion of macro 'BOOTINFODATA'
268 | BOOTINFODATA(param_ptr, BI_RNG_SEED,
| ^~~~~~~~~~~~
cc1: all warnings being treated as errors

https://gitlab.com/qemu-project/qemu/-/jobs/3179717070

>
>  hw/m68k/bootinfo.h                            | 48 ++++++------
>  .../standard-headers/asm-m68k/bootinfo-virt.h |  4 +-
>  include/standard-headers/asm-m68k/bootinfo.h  |  8 +-
>  hw/m68k/q800.c                                | 76 ++++++++++++++-----
>  hw/m68k/virt.c                                | 57 +++++++++-----
>  5 files changed, 130 insertions(+), 63 deletions(-)
>
> --
> 2.37.3
>
>
Xingtao Yao (Fujitsu)" via Oct. 17, 2022, 3:56 a.m. UTC | #2
On Sun, Oct 16, 2022 at 03:50:54PM -0400, Stefan Hajnoczi wrote:
> On Fri, 14 Oct 2022 at 03:26, Laurent Vivier <laurent@vivier.eu> wrote:
> >
> > The following changes since commit f1d33f55c47dfdaf8daacd618588ad3ae4c452d1:
> >
> >   Merge tag 'pull-testing-gdbstub-plugins-gitdm-061022-3' of https://github.com/stsquad/qemu into staging (2022-10-06 07:11:56 -0400)
> >
> > are available in the Git repository at:
> >
> >   https://github.com/vivier/qemu-m68k.git tags/m68k-for-7.2-pull-request
> >
> > for you to fetch changes up to fa327be58280f76d2565ff0bdb9b0010ac97c3b0:
> >
> >   m68k: write bootinfo as rom section and re-randomize on reboot (2022-10-11 23:02:46 +0200)
> >
> > ----------------------------------------------------------------
> > Pull request m68k branch 20221014
> >
> > Update rng seed boot parameter
> >
> > ----------------------------------------------------------------
> >
> > Jason A. Donenfeld (2):
> >   m68k: rework BI_VIRT_RNG_SEED as BI_RNG_SEED
> >   m68k: write bootinfo as rom section and re-randomize on reboot
> 
> This commit breaks mingw64 due to the Windows LLP64 data model where
> pointers don't fit into unsigned long
> (https://en.wikipedia.org/wiki/LP64#64-bit_data_models). Please use
> uintptr_t instead of unsigned long:

Holy smokes; I didn't realize that qemu was ever compiled this way.

Laurent - do you want me to send you a follow-up commit fixing that, a
new commit fixing that, or do you want to adjust the current commit
yourself? Any choice is fine with me.

Jason

> 
> x86_64-w64-mingw32-gcc -m64 -mcx16 -Ilibqemu-m68k-softmmu.fa.p -I.
> -I.. -Itarget/m68k -I../target/m68k -Iqapi -Itrace -Iui -Iui/shader
> -I/usr/x86_64-w64-mingw32/sys-root/mingw/include/pixman-1
> -I/usr/x86_64-w64-mingw32/sys-root/mingw/include/glib-2.0
> -I/usr/x86_64-w64-mingw32/sys-root/mingw/lib/glib-2.0/include
> -fdiagnostics-color=auto -Wall -Winvalid-pch -Werror -std=gnu11 -O2 -g
> -iquote . -iquote /builds/qemu-project/qemu -iquote
> /builds/qemu-project/qemu/include -iquote
> /builds/qemu-project/qemu/tcg/i386 -mms-bitfields -U_FORTIFY_SOURCE
> -D_FORTIFY_SOURCE=2 -fno-pie -no-pie -D_GNU_SOURCE
> -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes
> -Wredundant-decls -Wundef -Wwrite-strings -Wmissing-prototypes
> -fno-strict-aliasing -fno-common -fwrapv -Wold-style-declaration
> -Wold-style-definition -Wtype-limits -Wformat-security -Wformat-y2k
> -Winit-self -Wignored-qualifiers -Wempty-body -Wnested-externs
> -Wendif-labels -Wexpansion-to-defined -Wimplicit-fallthrough=2
> -Wno-missing-include-dirs -Wno-shift-negative-value -Wno-psabi
> -fstack-protector-strong -DNEED_CPU_H
> '-DCONFIG_TARGET="m68k-softmmu-config-target.h"'
> '-DCONFIG_DEVICES="m68k-softmmu-config-devices.h"' -MD -MQ
> libqemu-m68k-softmmu.fa.p/hw_m68k_virt.c.obj -MF
> libqemu-m68k-softmmu.fa.p/hw_m68k_virt.c.obj.d -o
> libqemu-m68k-softmmu.fa.p/hw_m68k_virt.c.obj -c ../hw/m68k/virt.c
> In file included from ../hw/m68k/virt.c:23:
> ../hw/m68k/virt.c: In function 'virt_init':
> ../hw/m68k/bootinfo.h:58:26: error: cast from pointer to integer of
> different size [-Werror=pointer-to-int-cast]
> 58 | base = (void *)(((unsigned long)base + 3) & ~3); \
> | ^
> ../hw/m68k/virt.c:261:13: note: in expansion of macro 'BOOTINFOSTR'
> 261 | BOOTINFOSTR(param_ptr, BI_COMMAND_LINE,
> | ^~~~~~~~~~~
> ../hw/m68k/bootinfo.h:58:16: error: cast to pointer from integer of
> different size [-Werror=int-to-pointer-cast]
> 58 | base = (void *)(((unsigned long)base + 3) & ~3); \
> | ^
> ../hw/m68k/virt.c:261:13: note: in expansion of macro 'BOOTINFOSTR'
> 261 | BOOTINFOSTR(param_ptr, BI_COMMAND_LINE,
> | ^~~~~~~~~~~
> ../hw/m68k/bootinfo.h:75:26: error: cast from pointer to integer of
> different size [-Werror=pointer-to-int-cast]
> 75 | base = (void *)(((unsigned long)base + 3) & ~3); \
> | ^
> ../hw/m68k/virt.c:268:9: note: in expansion of macro 'BOOTINFODATA'
> 268 | BOOTINFODATA(param_ptr, BI_RNG_SEED,
> | ^~~~~~~~~~~~
> ../hw/m68k/bootinfo.h:75:16: error: cast to pointer from integer of
> different size [-Werror=int-to-pointer-cast]
> 75 | base = (void *)(((unsigned long)base + 3) & ~3); \
> | ^
> ../hw/m68k/virt.c:268:9: note: in expansion of macro 'BOOTINFODATA'
> 268 | BOOTINFODATA(param_ptr, BI_RNG_SEED,
> | ^~~~~~~~~~~~
> cc1: all warnings being treated as errors
> 
> https://gitlab.com/qemu-project/qemu/-/jobs/3179717070
> 
> >
> >  hw/m68k/bootinfo.h                            | 48 ++++++------
> >  .../standard-headers/asm-m68k/bootinfo-virt.h |  4 +-
> >  include/standard-headers/asm-m68k/bootinfo.h  |  8 +-
> >  hw/m68k/q800.c                                | 76 ++++++++++++++-----
> >  hw/m68k/virt.c                                | 57 +++++++++-----
> >  5 files changed, 130 insertions(+), 63 deletions(-)
> >
> > --
> > 2.37.3
> >
> >
>
Laurent Vivier Oct. 17, 2022, 7:25 a.m. UTC | #3
Le 17/10/2022 à 05:56, Jason A. Donenfeld via a écrit :
> On Sun, Oct 16, 2022 at 03:50:54PM -0400, Stefan Hajnoczi wrote:
>> On Fri, 14 Oct 2022 at 03:26, Laurent Vivier <laurent@vivier.eu> wrote:
>>>
>>> The following changes since commit f1d33f55c47dfdaf8daacd618588ad3ae4c452d1:
>>>
>>>    Merge tag 'pull-testing-gdbstub-plugins-gitdm-061022-3' of https://github.com/stsquad/qemu into staging (2022-10-06 07:11:56 -0400)
>>>
>>> are available in the Git repository at:
>>>
>>>    https://github.com/vivier/qemu-m68k.git tags/m68k-for-7.2-pull-request
>>>
>>> for you to fetch changes up to fa327be58280f76d2565ff0bdb9b0010ac97c3b0:
>>>
>>>    m68k: write bootinfo as rom section and re-randomize on reboot (2022-10-11 23:02:46 +0200)
>>>
>>> ----------------------------------------------------------------
>>> Pull request m68k branch 20221014
>>>
>>> Update rng seed boot parameter
>>>
>>> ----------------------------------------------------------------
>>>
>>> Jason A. Donenfeld (2):
>>>    m68k: rework BI_VIRT_RNG_SEED as BI_RNG_SEED
>>>    m68k: write bootinfo as rom section and re-randomize on reboot
>>
>> This commit breaks mingw64 due to the Windows LLP64 data model where
>> pointers don't fit into unsigned long
>> (https://en.wikipedia.org/wiki/LP64#64-bit_data_models). Please use
>> uintptr_t instead of unsigned long:
> 
> Holy smokes; I didn't realize that qemu was ever compiled this way.
> 
> Laurent - do you want me to send you a follow-up commit fixing that, a
> new commit fixing that, or do you want to adjust the current commit
> yourself? Any choice is fine with me.

Please update the current patch to fix that and resend.

Thanks,
Laurent