* FAILED: libqemu-arm-bsd-user.fa.p/bsd-user_signal.c.o @ 2022-10-10 6:18 Dennis Clarke 2022-10-10 7:13 ` Thomas Huth 0 siblings, 1 reply; 4+ messages in thread From: Dennis Clarke @ 2022-10-10 6:18 UTC (permalink / raw) To: qemu-devel On FreeBSD 14.0 CURRENT amd64 everything seems to go swimmingly until : [5679/6848] Compiling C object libqemu-arm-bsd-user.fa.p/bsd-user_mmap.c.o [5680/6848] Compiling C object libqemu-arm-bsd-user.fa.p/bsd-user_signal.c.o FAILED: libqemu-arm-bsd-user.fa.p/bsd-user_signal.c.o /usr/bin/cc -m64 -mcx16 -Ilibqemu-arm-bsd-user.fa.p -I. -I.. -Itarget/arm -I../target/arm -I../common-user/host/x86_64 -I../bsd-user/include -Ibsd-user/freebsd -I../bsd-user/freebsd -I../bsd-user/host/x86_64 -Ibsd-user -I../bsd-user -I../bsd-user/arm -Iqapi -Itrace -Iui -Iui/shader -I/usr/local/include -I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include -fcolor-diagnostics -Wall -Winvalid-pch -std=gnu11 -O0 -g -iquote . -iquote /opt/bw/build/qemu -iquote /opt/bw/build/qemu/include -iquote /opt/bw/build/qemu/tcg/i386 -pthread -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-definition -Wtype-limits -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wempty-body -Wnested-externs -Wendif-labels -Wexpansion-to-defined -Wno-initializer-overrides -Wno-missing-include-dirs -Wno-shift-negative-value -Wno-string-plus-int -Wno-typedef-redefinition -Wno-tautological-type-limit-compare -Wno-psabi -Wno-gnu-variable-sized-type-not-at-end -fstack-protector-strong -m64 -g -O0 -fno-builtin -fPIE -DNEED_CPU_H '-DCONFIG_TARGET="arm-bsd-user-config-target.h"' '-DCONFIG_DEVICES="arm-bsd-user-config-devices.h"' -MD -MQ libqemu-arm-bsd-user.fa.p/bsd-user_signal.c.o -MF libqemu-arm-bsd-user.fa.p/bsd-user_signal.c.o.d -o libqemu-arm-bsd-user.fa.p/bsd-user_signal.c.o -c ../bsd-user/signal.c In file included from ../bsd-user/signal.c:27: In file included from ../bsd-user/host/x86_64/host-signal.h:14: In file included from /usr/include/vm/pmap.h:92: /usr/include/machine/pmap.h:452:2: error: fields must have a constant size: 'variable length array in structure' extension will never be supported PV_CHUNK_HEADER ^ /usr/include/machine/pmap.h:448:12: note: expanded from macro 'PV_CHUNK_HEADER' uint64_t pc_map[_NPCM]; /* bitmap; 1 = free */ \ ^ /usr/include/machine/pmap.h:456:2: error: fields must have a constant size: 'variable length array in structure' extension will never be supported PV_CHUNK_HEADER ^ /usr/include/machine/pmap.h:448:12: note: expanded from macro 'PV_CHUNK_HEADER' uint64_t pc_map[_NPCM]; /* bitmap; 1 = free */ \ ^ 2 errors generated. ninja: build stopped: subcommand failed. gmake[1]: *** [Makefile:165: run-ninja] Error 1 gmake[1]: Leaving directory '/opt/bw/build/qemu/build' gmake: *** [GNUmakefile:11: all] Error 2 phobos# Is there a trivial patch ? Or perhaps try again using GCC and not LLVM/Clang? -- Dennis Clarke RISC-V/SPARC/PPC/ARM/CISC UNIX and Linux spoken GreyBeard and suspenders optional ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: FAILED: libqemu-arm-bsd-user.fa.p/bsd-user_signal.c.o 2022-10-10 6:18 FAILED: libqemu-arm-bsd-user.fa.p/bsd-user_signal.c.o Dennis Clarke @ 2022-10-10 7:13 ` Thomas Huth 2022-10-10 17:01 ` Warner Losh 0 siblings, 1 reply; 4+ messages in thread From: Thomas Huth @ 2022-10-10 7:13 UTC (permalink / raw) To: Dennis Clarke, qemu-devel; +Cc: Ed Maste, Li-Wen Hsu, Warner Losh, Kyle Evans On 10/10/2022 08.18, Dennis Clarke wrote: > > On FreeBSD 14.0 CURRENT amd64 everything seems to go swimmingly until : > > [5679/6848] Compiling C object libqemu-arm-bsd-user.fa.p/bsd-user_mmap.c.o > [5680/6848] Compiling C object libqemu-arm-bsd-user.fa.p/bsd-user_signal.c.o > FAILED: libqemu-arm-bsd-user.fa.p/bsd-user_signal.c.o > /usr/bin/cc -m64 -mcx16 -Ilibqemu-arm-bsd-user.fa.p -I. -I.. -Itarget/arm > -I../target/arm -I../common-user/host/x86_64 -I../bsd-user/include > -Ibsd-user/freebsd -I../bsd-user/freebsd -I../bsd-user/host/x86_64 > -Ibsd-user -I../bsd-user -I../bsd-user/arm -Iqapi -Itrace -Iui -Iui/shader > -I/usr/local/include -I/usr/local/include/glib-2.0 > -I/usr/local/lib/glib-2.0/include -fcolor-diagnostics -Wall -Winvalid-pch > -std=gnu11 -O0 -g -iquote . -iquote /opt/bw/build/qemu -iquote > /opt/bw/build/qemu/include -iquote /opt/bw/build/qemu/tcg/i386 -pthread > -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-definition > -Wtype-limits -Wformat-security -Wformat-y2k -Winit-self > -Wignored-qualifiers -Wempty-body -Wnested-externs -Wendif-labels > -Wexpansion-to-defined -Wno-initializer-overrides -Wno-missing-include-dirs > -Wno-shift-negative-value -Wno-string-plus-int -Wno-typedef-redefinition > -Wno-tautological-type-limit-compare -Wno-psabi > -Wno-gnu-variable-sized-type-not-at-end -fstack-protector-strong -m64 -g -O0 > -fno-builtin -fPIE -DNEED_CPU_H > '-DCONFIG_TARGET="arm-bsd-user-config-target.h"' > '-DCONFIG_DEVICES="arm-bsd-user-config-devices.h"' -MD -MQ > libqemu-arm-bsd-user.fa.p/bsd-user_signal.c.o -MF > libqemu-arm-bsd-user.fa.p/bsd-user_signal.c.o.d -o > libqemu-arm-bsd-user.fa.p/bsd-user_signal.c.o -c ../bsd-user/signal.c > In file included from ../bsd-user/signal.c:27: > In file included from ../bsd-user/host/x86_64/host-signal.h:14: > In file included from /usr/include/vm/pmap.h:92: > /usr/include/machine/pmap.h:452:2: error: fields must have a constant size: > 'variable length array in structure' extension will never be supported > PV_CHUNK_HEADER > ^ > /usr/include/machine/pmap.h:448:12: note: expanded from macro 'PV_CHUNK_HEADER' > uint64_t pc_map[_NPCM]; /* bitmap; 1 = free */ \ > ^ > /usr/include/machine/pmap.h:456:2: error: fields must have a constant size: > 'variable length array in structure' extension will never be supported > PV_CHUNK_HEADER > ^ > /usr/include/machine/pmap.h:448:12: note: expanded from macro 'PV_CHUNK_HEADER' > uint64_t pc_map[_NPCM]; /* bitmap; 1 = free */ \ > ^ > 2 errors generated. > ninja: build stopped: subcommand failed. > gmake[1]: *** [Makefile:165: run-ninja] Error 1 > gmake[1]: Leaving directory '/opt/bw/build/qemu/build' > gmake: *** [GNUmakefile:11: all] Error 2 > > phobos# > > Is there a trivial patch ? Or perhaps try again using GCC and not LLVM/Clang? I'm not using FreeBSD, so no real clue, but this pretty much sounds like _NPCM is not properly defined by your system headers anymore, so I assume this is a problem on the FreeBSD side ... I'd suggest to report it on the FreeBSD mailing list. Thomas ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: FAILED: libqemu-arm-bsd-user.fa.p/bsd-user_signal.c.o 2022-10-10 7:13 ` Thomas Huth @ 2022-10-10 17:01 ` Warner Losh 2022-10-13 5:10 ` Warner Losh 0 siblings, 1 reply; 4+ messages in thread From: Warner Losh @ 2022-10-10 17:01 UTC (permalink / raw) To: Thomas Huth; +Cc: Dennis Clarke, qemu-devel, Ed Maste, Li-Wen Hsu, Kyle Evans [-- Attachment #1: Type: text/plain, Size: 4372 bytes --] On Mon, Oct 10, 2022 at 1:13 AM Thomas Huth <thuth@redhat.com> wrote: > On 10/10/2022 08.18, Dennis Clarke wrote: > > > > On FreeBSD 14.0 CURRENT amd64 everything seems to go swimmingly until : > > > > [5679/6848] Compiling C object > libqemu-arm-bsd-user.fa.p/bsd-user_mmap.c.o > > [5680/6848] Compiling C object > libqemu-arm-bsd-user.fa.p/bsd-user_signal.c.o > > FAILED: libqemu-arm-bsd-user.fa.p/bsd-user_signal.c.o > > /usr/bin/cc -m64 -mcx16 -Ilibqemu-arm-bsd-user.fa.p -I. -I.. > -Itarget/arm > > -I../target/arm -I../common-user/host/x86_64 -I../bsd-user/include > > -Ibsd-user/freebsd -I../bsd-user/freebsd -I../bsd-user/host/x86_64 > > -Ibsd-user -I../bsd-user -I../bsd-user/arm -Iqapi -Itrace -Iui > -Iui/shader > > -I/usr/local/include -I/usr/local/include/glib-2.0 > > -I/usr/local/lib/glib-2.0/include -fcolor-diagnostics -Wall > -Winvalid-pch > > -std=gnu11 -O0 -g -iquote . -iquote /opt/bw/build/qemu -iquote > > /opt/bw/build/qemu/include -iquote /opt/bw/build/qemu/tcg/i386 -pthread > > -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-definition > > -Wtype-limits -Wformat-security -Wformat-y2k -Winit-self > > -Wignored-qualifiers -Wempty-body -Wnested-externs -Wendif-labels > > -Wexpansion-to-defined -Wno-initializer-overrides > -Wno-missing-include-dirs > > -Wno-shift-negative-value -Wno-string-plus-int -Wno-typedef-redefinition > > -Wno-tautological-type-limit-compare -Wno-psabi > > -Wno-gnu-variable-sized-type-not-at-end -fstack-protector-strong -m64 -g > -O0 > > -fno-builtin -fPIE -DNEED_CPU_H > > '-DCONFIG_TARGET="arm-bsd-user-config-target.h"' > > '-DCONFIG_DEVICES="arm-bsd-user-config-devices.h"' -MD -MQ > > libqemu-arm-bsd-user.fa.p/bsd-user_signal.c.o -MF > > libqemu-arm-bsd-user.fa.p/bsd-user_signal.c.o.d -o > > libqemu-arm-bsd-user.fa.p/bsd-user_signal.c.o -c ../bsd-user/signal.c > > In file included from ../bsd-user/signal.c:27: > > In file included from ../bsd-user/host/x86_64/host-signal.h:14: > > In file included from /usr/include/vm/pmap.h:92: > > /usr/include/machine/pmap.h:452:2: error: fields must have a constant > size: > > 'variable length array in structure' extension will never be supported > > PV_CHUNK_HEADER > > ^ > > /usr/include/machine/pmap.h:448:12: note: expanded from macro > 'PV_CHUNK_HEADER' > > uint64_t pc_map[_NPCM]; /* bitmap; 1 = free */ > \ > > ^ > > /usr/include/machine/pmap.h:456:2: error: fields must have a constant > size: > > 'variable length array in structure' extension will never be supported > > PV_CHUNK_HEADER > > ^ > > /usr/include/machine/pmap.h:448:12: note: expanded from macro > 'PV_CHUNK_HEADER' > > uint64_t pc_map[_NPCM]; /* bitmap; 1 = free */ > \ > > ^ > > 2 errors generated. > > ninja: build stopped: subcommand failed. > > gmake[1]: *** [Makefile:165: run-ninja] Error 1 > > gmake[1]: Leaving directory '/opt/bw/build/qemu/build' > > gmake: *** [GNUmakefile:11: all] Error 2 > > > > phobos# > > > > Is there a trivial patch ? Or perhaps try again using GCC and not > LLVM/Clang? > > I'm not using FreeBSD, so no real clue, but this pretty much sounds like > _NPCM is not properly defined by your system headers anymore, so I assume > this is a problem on the FreeBSD side ... I'd suggest to report it on the > FreeBSD mailing list. > Actually, it is properly defined. The real problem is that it depends on howmany, which is defined in sys/param.h, which isn't included in sys/_pv_entry.h, leading to the problem. This makes it look like a variable length array which compilers hate in this context. diff --git a/bsd-user/host/x86_64/host-signal.h b/bsd-user/host/x86_64/host-signal.h index 47ca19f8814..32ac4e41803 100644 --- a/bsd-user/host/x86_64/host-signal.h +++ b/bsd-user/host/x86_64/host-signal.h @@ -9,6 +9,7 @@ #ifndef X86_64_HOST_SIGNAL_H #define X86_64_HOST_SIGNAL_H +#include <sys/param.h> #include <sys/ucontext.h> #include <machine/trap.h> #include <vm/pmap.h> fixes it. It's unclear to me if this should be added to sys/_pv_entry.h (this was just committed to FreeBSD in the last week), or if I need to upstream this patch. Warner [-- Attachment #2: Type: text/html, Size: 5450 bytes --] ^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: FAILED: libqemu-arm-bsd-user.fa.p/bsd-user_signal.c.o 2022-10-10 17:01 ` Warner Losh @ 2022-10-13 5:10 ` Warner Losh 0 siblings, 0 replies; 4+ messages in thread From: Warner Losh @ 2022-10-13 5:10 UTC (permalink / raw) To: Thomas Huth; +Cc: Dennis Clarke, qemu-devel, Ed Maste, Li-Wen Hsu, Kyle Evans [-- Attachment #1: Type: text/plain, Size: 4785 bytes --] On Mon, Oct 10, 2022 at 11:01 AM Warner Losh <imp@bsdimp.com> wrote: > > > On Mon, Oct 10, 2022 at 1:13 AM Thomas Huth <thuth@redhat.com> wrote: > >> On 10/10/2022 08.18, Dennis Clarke wrote: >> > >> > On FreeBSD 14.0 CURRENT amd64 everything seems to go swimmingly until : >> > >> > [5679/6848] Compiling C object >> libqemu-arm-bsd-user.fa.p/bsd-user_mmap.c.o >> > [5680/6848] Compiling C object >> libqemu-arm-bsd-user.fa.p/bsd-user_signal.c.o >> > FAILED: libqemu-arm-bsd-user.fa.p/bsd-user_signal.c.o >> > /usr/bin/cc -m64 -mcx16 -Ilibqemu-arm-bsd-user.fa.p -I. -I.. >> -Itarget/arm >> > -I../target/arm -I../common-user/host/x86_64 -I../bsd-user/include >> > -Ibsd-user/freebsd -I../bsd-user/freebsd -I../bsd-user/host/x86_64 >> > -Ibsd-user -I../bsd-user -I../bsd-user/arm -Iqapi -Itrace -Iui >> -Iui/shader >> > -I/usr/local/include -I/usr/local/include/glib-2.0 >> > -I/usr/local/lib/glib-2.0/include -fcolor-diagnostics -Wall >> -Winvalid-pch >> > -std=gnu11 -O0 -g -iquote . -iquote /opt/bw/build/qemu -iquote >> > /opt/bw/build/qemu/include -iquote /opt/bw/build/qemu/tcg/i386 -pthread >> > -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-definition >> > -Wtype-limits -Wformat-security -Wformat-y2k -Winit-self >> > -Wignored-qualifiers -Wempty-body -Wnested-externs -Wendif-labels >> > -Wexpansion-to-defined -Wno-initializer-overrides >> -Wno-missing-include-dirs >> > -Wno-shift-negative-value -Wno-string-plus-int >> -Wno-typedef-redefinition >> > -Wno-tautological-type-limit-compare -Wno-psabi >> > -Wno-gnu-variable-sized-type-not-at-end -fstack-protector-strong -m64 >> -g -O0 >> > -fno-builtin -fPIE -DNEED_CPU_H >> > '-DCONFIG_TARGET="arm-bsd-user-config-target.h"' >> > '-DCONFIG_DEVICES="arm-bsd-user-config-devices.h"' -MD -MQ >> > libqemu-arm-bsd-user.fa.p/bsd-user_signal.c.o -MF >> > libqemu-arm-bsd-user.fa.p/bsd-user_signal.c.o.d -o >> > libqemu-arm-bsd-user.fa.p/bsd-user_signal.c.o -c ../bsd-user/signal.c >> > In file included from ../bsd-user/signal.c:27: >> > In file included from ../bsd-user/host/x86_64/host-signal.h:14: >> > In file included from /usr/include/vm/pmap.h:92: >> > /usr/include/machine/pmap.h:452:2: error: fields must have a constant >> size: >> > 'variable length array in structure' extension will never be supported >> > PV_CHUNK_HEADER >> > ^ >> > /usr/include/machine/pmap.h:448:12: note: expanded from macro >> 'PV_CHUNK_HEADER' >> > uint64_t pc_map[_NPCM]; /* bitmap; 1 = free >> */ \ >> > ^ >> > /usr/include/machine/pmap.h:456:2: error: fields must have a constant >> size: >> > 'variable length array in structure' extension will never be supported >> > PV_CHUNK_HEADER >> > ^ >> > /usr/include/machine/pmap.h:448:12: note: expanded from macro >> 'PV_CHUNK_HEADER' >> > uint64_t pc_map[_NPCM]; /* bitmap; 1 = free >> */ \ >> > ^ >> > 2 errors generated. >> > ninja: build stopped: subcommand failed. >> > gmake[1]: *** [Makefile:165: run-ninja] Error 1 >> > gmake[1]: Leaving directory '/opt/bw/build/qemu/build' >> > gmake: *** [GNUmakefile:11: all] Error 2 >> > >> > phobos# >> > >> > Is there a trivial patch ? Or perhaps try again using GCC and not >> LLVM/Clang? >> >> I'm not using FreeBSD, so no real clue, but this pretty much sounds like >> _NPCM is not properly defined by your system headers anymore, so I assume >> this is a problem on the FreeBSD side ... I'd suggest to report it on the >> FreeBSD mailing list. >> > > Actually, it is properly defined. The real problem is that it depends on > howmany, which is defined > in sys/param.h, which isn't included in sys/_pv_entry.h, leading to the > problem. This makes it look > like a variable length array which compilers hate in this context. > > diff --git a/bsd-user/host/x86_64/host-signal.h > b/bsd-user/host/x86_64/host-signal.h > index 47ca19f8814..32ac4e41803 100644 > --- a/bsd-user/host/x86_64/host-signal.h > +++ b/bsd-user/host/x86_64/host-signal.h > @@ -9,6 +9,7 @@ > #ifndef X86_64_HOST_SIGNAL_H > #define X86_64_HOST_SIGNAL_H > > +#include <sys/param.h> > #include <sys/ucontext.h> > #include <machine/trap.h> > #include <vm/pmap.h> > > fixes it. It's unclear to me if this should be added to sys/_pv_entry.h > (this was just committed to > FreeBSD in the last week), or if I need to upstream this patch. > I posted a patch here (i386 needed it too). I also fixed it in FreeBSD, but the breakage was around for long enough we kinda need both. I'll submit a pull request if somebody else doesn't beat me to it. :). Warner [-- Attachment #2: Type: text/html, Size: 6095 bytes --] ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2022-10-13 5:11 UTC | newest] Thread overview: 4+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2022-10-10 6:18 FAILED: libqemu-arm-bsd-user.fa.p/bsd-user_signal.c.o Dennis Clarke 2022-10-10 7:13 ` Thomas Huth 2022-10-10 17:01 ` Warner Losh 2022-10-13 5:10 ` Warner Losh
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).