Re: [PATCH-for-5.2 2/3] gitlab-ci: Add a job to cover the --without-default-devices config
On 05/11/20 03:48, Stefano Stabellini wrote: I repeated all the steps to make sure. The first time I was using Samurai because Alpine Linux comes with it and not Ninja. Then, I removed Samurai and built and installed Ninja by hand from https://github.com/ninja-build/ninja and that actually works. Yesterday it was late and I was distracted by global events -- I must have failed to update Ninja appropriately. Sorry for the confusion. FWIW I sent an Alpine merge request to support "ninja -t query". We should add an Alpine container and pipeline once it's merged. Paolo
Re: [PATCH-for-5.2 2/3] gitlab-ci: Add a job to cover the --without-default-devices config
Le jeu. 5 nov. 2020 05:28, Stefano Stabellini a écrit : > On Wed, 4 Nov 2020, Thomas Huth wrote: > > On 04/11/2020 03.27, Stefano Stabellini wrote: > > [...] > > > Actually I care about Xen and 9pfs support, it is one of the few > > > combinations that I use regularly and it is even enabled in the Xilinx > > > product I look after. But admittedly I don't test QEMU master as much > as > > > I should. With the recent changes to the build system it is not very > > > suprising that there are some issues. It would be great to have a Xen > > > and 9pfs test in the gitlab CI-loop. > > > > > > > > > FYI I tried to build the latest QEMU on Alpine Linux 3.12 ARM64 and I > > > get: > > > > > > ninja: unknown tool 'query' > > > > > > Even after rebuilding ninja master by hand. Any ideas? I don't know > much > > > about ninja. > > > > > > > > > So I gave up on that and I spinned up a Debian Buster x86 container for > > > this build. That one got past the "ninja: unknown tool 'query'" error. > > > The build completed without problems to the end. > > > > > > Either way I can't reproduce the build error above. > > > > Did you run "configure" with "--without-default-devices" ? > > Yes, and still I can't repro the issue, strange. Anyway, I saw that > Philippe managed to find and fix the issue with "hw/9pfs: Fix Kconfig > dependency problem between 9pfs and Xen", so all sorted :) > Paolo figured the problem and sent a diff, I just forwarded it as a formal patch ;) >
Re: [PATCH-for-5.2 2/3] gitlab-ci: Add a job to cover the --without-default-devices config
On Wed, 4 Nov 2020, Thomas Huth wrote: > On 04/11/2020 03.27, Stefano Stabellini wrote: > [...] > > Actually I care about Xen and 9pfs support, it is one of the few > > combinations that I use regularly and it is even enabled in the Xilinx > > product I look after. But admittedly I don't test QEMU master as much as > > I should. With the recent changes to the build system it is not very > > suprising that there are some issues. It would be great to have a Xen > > and 9pfs test in the gitlab CI-loop. > > > > > > FYI I tried to build the latest QEMU on Alpine Linux 3.12 ARM64 and I > > get: > > > > ninja: unknown tool 'query' > > > > Even after rebuilding ninja master by hand. Any ideas? I don't know much > > about ninja. > > > > > > So I gave up on that and I spinned up a Debian Buster x86 container for > > this build. That one got past the "ninja: unknown tool 'query'" error. > > The build completed without problems to the end. > > > > Either way I can't reproduce the build error above. > > Did you run "configure" with "--without-default-devices" ? Yes, and still I can't repro the issue, strange. Anyway, I saw that Philippe managed to find and fix the issue with "hw/9pfs: Fix Kconfig dependency problem between 9pfs and Xen", so all sorted :)
Re: [PATCH-for-5.2 2/3] gitlab-ci: Add a job to cover the --without-default-devices config
On Wed, 4 Nov 2020, Paolo Bonzini wrote: > Il mer 4 nov 2020, 03:27 Stefano Stabellini ha > scritto: > FYI I tried to build the latest QEMU on Alpine Linux 3.12 ARM64 and I > get: > > ninja: unknown tool 'query' > > Even after rebuilding ninja master by hand. Any ideas? I don't know much > about ninja. > > > Are you sure you have ninja installed and not its clone samurai (yes, I am > serious)? I have contributed query support to samurai but it > hasn't made it to a release yet. > > What is the output of "ninja -t list"? I repeated all the steps to make sure. The first time I was using Samurai because Alpine Linux comes with it and not Ninja. Then, I removed Samurai and built and installed Ninja by hand from https://github.com/ninja-build/ninja and that actually works. Yesterday it was late and I was distracted by global events -- I must have failed to update Ninja appropriately. Sorry for the confusion.
Re: [PATCH-for-5.2 2/3] gitlab-ci: Add a job to cover the --without-default-devices config
On 04/11/2020 09.32, Philippe Mathieu-Daudé wrote: > On 11/4/20 7:21 AM, Thomas Huth wrote: >> On 03/11/2020 21.41, Philippe Mathieu-Daudé wrote: >>> On 11/3/20 7:43 PM, Thomas Huth wrote: On 03/11/2020 17.46, Philippe Mathieu-Daudé wrote: >> [...] > diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml > index 3b15ae5c302..6ee098ec53c 100644 > --- a/.gitlab-ci.yml > +++ b/.gitlab-ci.yml > @@ -262,6 +262,17 @@ build-user-plugins: > MAKE_CHECK_ARGS: check-tcg >timeout: 1h 30m > > +build-system-ubuntu-without-default-devices: > + <<: *native_build_job_definition > + variables: > +IMAGE: ubuntu2004 > +CONFIGURE_ARGS: --without-default-devices --disable-user > --disable-xen --disable-tools --disable-docs > +MAKE_CHECK_ARGS: check-build AFAIK "check-build" is pretty much a no-op since the convertion to meson ... could you maybe replace with a set of qtest targets that work, to make sure that we do not regress here? E.g.: MAKE_CHECK_ARGS: check-qtest-avr check-qtestcris check-qtest-m68k check-qtest-microblaze check-qtest-mipsel check-qtest-moxie ... >>> >>> qtests don't work with --without-default-devices, as we don't check >>> for (un-)available devices. >> >> Sure, "make check-qtest" does not work, I know. But some targets work fine, >> e.g. "make check-qtest-avr", and that's what I've suggested. > > Yes, I tested that successfully yesterday late. > >> By testing >> those targets, we can make sure that the qtests don't regress any further >> with --without-default-devices. > > Yes, but I'm being wary to use it with the sole AVR target, because > I don't want this target development to be limited by unrelated > technical debts (in case we add optional device on an AVR board). If you feel uncomfortable with check-qtest-avr, you could also use check-qtest-m68k instead - I think that's fine for me (and hopefully also Laurent). Thomas
Re: [PATCH-for-5.2 2/3] gitlab-ci: Add a job to cover the --without-default-devices config
On 11/3/20 10:12 PM, Paolo Bonzini wrote: > On 03/11/20 22:07, Philippe Mathieu-Daudé wrote: >>> diff --git a/accel/Kconfig b/accel/Kconfig >>> index 2ad94a3839..d24664d736 100644 >>> --- a/accel/Kconfig >>> +++ b/accel/Kconfig >>> @@ -7,3 +7,4 @@ config KVM >>> config XEN >>> bool >>> select FSDEV_9P if VIRTFS >>> + select 9PFS if VIRTFS >> Without this line ^ it works! Thanks :* > > Without which line? Not adding "select 9PFS if VIRTFS" (keeping the current "select FSDEV_9P if VIRTFS"). > > (Also if both work I prefer the other one). > > Paolo >
Re: [PATCH-for-5.2 2/3] gitlab-ci: Add a job to cover the --without-default-devices config
On 11/4/20 7:21 AM, Thomas Huth wrote: > On 03/11/2020 21.41, Philippe Mathieu-Daudé wrote: >> On 11/3/20 7:43 PM, Thomas Huth wrote: >>> On 03/11/2020 17.46, Philippe Mathieu-Daudé wrote: > [...] diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 3b15ae5c302..6ee098ec53c 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -262,6 +262,17 @@ build-user-plugins: MAKE_CHECK_ARGS: check-tcg timeout: 1h 30m +build-system-ubuntu-without-default-devices: + <<: *native_build_job_definition + variables: +IMAGE: ubuntu2004 +CONFIGURE_ARGS: --without-default-devices --disable-user --disable-xen --disable-tools --disable-docs +MAKE_CHECK_ARGS: check-build >>> >>> AFAIK "check-build" is pretty much a no-op since the convertion to meson ... >>> could you maybe replace with a set of qtest targets that work, to make sure >>> that we do not regress here? E.g.: >>> >>> MAKE_CHECK_ARGS: check-qtest-avr check-qtestcris check-qtest-m68k >>> check-qtest-microblaze check-qtest-mipsel check-qtest-moxie ... >> >> qtests don't work with --without-default-devices, as we don't check >> for (un-)available devices. > > Sure, "make check-qtest" does not work, I know. But some targets work fine, > e.g. "make check-qtest-avr", and that's what I've suggested. Yes, I tested that successfully yesterday late. > By testing > those targets, we can make sure that the qtests don't regress any further > with --without-default-devices. Yes, but I'm being wary to use it with the sole AVR target, because I don't want this target development to be limited by unrelated technical debts (in case we add optional device on an AVR board). > >> I'll try check-unit. > > I think that does not have much benefit since it should be independent of > the devices and is tested in the other pipelines already? Ah, good point. Regards, Phil.
Re: [PATCH-for-5.2 2/3] gitlab-ci: Add a job to cover the --without-default-devices config
Il mer 4 nov 2020, 03:27 Stefano Stabellini ha scritto: > FYI I tried to build the latest QEMU on Alpine Linux 3.12 ARM64 and I > get: > > ninja: unknown tool 'query' > > Even after rebuilding ninja master by hand. Any ideas? I don't know much > about ninja. > Are you sure you have ninja installed and not its clone samurai (yes, I am serious)? I have contributed query support to samurai but it hasn't made it to a release yet. What is the output of "ninja -t list"? Paolo > > So I gave up on that and I spinned up a Debian Buster x86 container for > this build. That one got past the "ninja: unknown tool 'query'" error. > The build completed without problems to the end. > > Either way I can't reproduce the build error above.
Re: [PATCH-for-5.2 2/3] gitlab-ci: Add a job to cover the --without-default-devices config
On 03/11/2020 21.41, Philippe Mathieu-Daudé wrote: > On 11/3/20 7:43 PM, Thomas Huth wrote: >> On 03/11/2020 17.46, Philippe Mathieu-Daudé wrote: [...] >>> diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml >>> index 3b15ae5c302..6ee098ec53c 100644 >>> --- a/.gitlab-ci.yml >>> +++ b/.gitlab-ci.yml >>> @@ -262,6 +262,17 @@ build-user-plugins: >>> MAKE_CHECK_ARGS: check-tcg >>>timeout: 1h 30m >>> >>> +build-system-ubuntu-without-default-devices: >>> + <<: *native_build_job_definition >>> + variables: >>> +IMAGE: ubuntu2004 >>> +CONFIGURE_ARGS: --without-default-devices --disable-user --disable-xen >>> --disable-tools --disable-docs >>> +MAKE_CHECK_ARGS: check-build >> >> AFAIK "check-build" is pretty much a no-op since the convertion to meson ... >> could you maybe replace with a set of qtest targets that work, to make sure >> that we do not regress here? E.g.: >> >> MAKE_CHECK_ARGS: check-qtest-avr check-qtestcris check-qtest-m68k >> check-qtest-microblaze check-qtest-mipsel check-qtest-moxie ... > > qtests don't work with --without-default-devices, as we don't check > for (un-)available devices. Sure, "make check-qtest" does not work, I know. But some targets work fine, e.g. "make check-qtest-avr", and that's what I've suggested. By testing those targets, we can make sure that the qtests don't regress any further with --without-default-devices. > I'll try check-unit. I think that does not have much benefit since it should be independent of the devices and is tested in the other pipelines already? Thomas
Re: [PATCH-for-5.2 2/3] gitlab-ci: Add a job to cover the --without-default-devices config
On 04/11/2020 03.27, Stefano Stabellini wrote: [...] > Actually I care about Xen and 9pfs support, it is one of the few > combinations that I use regularly and it is even enabled in the Xilinx > product I look after. But admittedly I don't test QEMU master as much as > I should. With the recent changes to the build system it is not very > suprising that there are some issues. It would be great to have a Xen > and 9pfs test in the gitlab CI-loop. > > > FYI I tried to build the latest QEMU on Alpine Linux 3.12 ARM64 and I > get: > > ninja: unknown tool 'query' > > Even after rebuilding ninja master by hand. Any ideas? I don't know much > about ninja. > > > So I gave up on that and I spinned up a Debian Buster x86 container for > this build. That one got past the "ninja: unknown tool 'query'" error. > The build completed without problems to the end. > > Either way I can't reproduce the build error above. Did you run "configure" with "--without-default-devices" ? Thomas
Re: [PATCH-for-5.2 2/3] gitlab-ci: Add a job to cover the --without-default-devices config
On Tue, 3 Nov 2020, Philippe Mathieu-Daudé wrote: > I forgot to Cc the 9pfs & Xen maintainers, doing it now ;) > > On 11/3/20 6:01 PM, Philippe Mathieu-Daudé wrote: > > On 11/3/20 5:52 PM, Daniel P. Berrangé wrote: > >> On Tue, Nov 03, 2020 at 05:46:03PM +0100, Philippe Mathieu-Daudé wrote: > >>> We test './configure --without-default-devices' since commit > >>> 20885b5b169 (".travis.yml: test that no-default-device builds > >>> do not regress") in Travis-CI. > >>> > >>> As we prefer to use GitLab-CI, add the equivalent job there. > >>> > >>> One minor difference: the GitLab Ubuntu docker image has the > >>> Xen devel packages installed. As it is automatically selected, > >>> we need to disable it with the --disable-xen option, else the > >>> build fails: > >>> > >>> /usr/bin/ld: libcommon.fa.p/hw_xen_xen-legacy-backend.c.o: in function > >>> `xen_be_register_common': > >>> hw/xen/xen-legacy-backend.c:754: undefined reference to `xen_9pfs_ops' > >>> /usr/bin/ld: libcommon.fa.p/fsdev_qemu-fsdev.c.o:(.data.rel+0x8): > >>> undefined reference to `local_ops' > >>> /usr/bin/ld: libcommon.fa.p/fsdev_qemu-fsdev.c.o:(.data.rel+0x20): > >>> undefined reference to `synth_ops' > >>> /usr/bin/ld: libcommon.fa.p/fsdev_qemu-fsdev.c.o:(.data.rel+0x38): > >>> undefined reference to `proxy_ops' > >>> collect2: error: ld returned 1 exit status > >> > >> Surely this is a build bug we need to fix rather than ignore in CI ? > > > > Well it predates this series, so nobody really cared > > (thus I wonder if it makes sense to invest resources > > there). > > > > Anyway I can have a look after 5.2-rc1. Actually I care about Xen and 9pfs support, it is one of the few combinations that I use regularly and it is even enabled in the Xilinx product I look after. But admittedly I don't test QEMU master as much as I should. With the recent changes to the build system it is not very suprising that there are some issues. It would be great to have a Xen and 9pfs test in the gitlab CI-loop. FYI I tried to build the latest QEMU on Alpine Linux 3.12 ARM64 and I get: ninja: unknown tool 'query' Even after rebuilding ninja master by hand. Any ideas? I don't know much about ninja. So I gave up on that and I spinned up a Debian Buster x86 container for this build. That one got past the "ninja: unknown tool 'query'" error. The build completed without problems to the end. Either way I can't reproduce the build error above.
Re: [PATCH-for-5.2 2/3] gitlab-ci: Add a job to cover the --without-default-devices config
On 03/11/20 22:07, Philippe Mathieu-Daudé wrote: diff --git a/accel/Kconfig b/accel/Kconfig index 2ad94a3839..d24664d736 100644 --- a/accel/Kconfig +++ b/accel/Kconfig @@ -7,3 +7,4 @@ config KVM config XEN bool select FSDEV_9P if VIRTFS +select 9PFS if VIRTFS Without this line ^ it works! Thanks :* Without which line? (Also if both work I prefer the other one). Paolo
Re: [PATCH-for-5.2 2/3] gitlab-ci: Add a job to cover the --without-default-devices config
On 11/3/20 9:57 PM, Paolo Bonzini wrote: > On Tue, Nov 3, 2020 at 6:01 PM Philippe Mathieu-Daudé > wrote: >> On 11/3/20 5:52 PM, Daniel P. Berrangé wrote: >>> On Tue, Nov 03, 2020 at 05:46:03PM +0100, Philippe Mathieu-Daudé wrote: We test './configure --without-default-devices' since commit 20885b5b169 (".travis.yml: test that no-default-device builds do not regress") in Travis-CI. One minor difference: the GitLab Ubuntu docker image has the Xen devel packages installed. As it is automatically selected, we need to disable it with the --disable-xen option, else the build fails: /usr/bin/ld: libcommon.fa.p/hw_xen_xen-legacy-backend.c.o: in function `xen_be_register_common': hw/xen/xen-legacy-backend.c:754: undefined reference to `xen_9pfs_ops' /usr/bin/ld: libcommon.fa.p/fsdev_qemu-fsdev.c.o:(.data.rel+0x8): undefined reference to `local_ops' /usr/bin/ld: libcommon.fa.p/fsdev_qemu-fsdev.c.o:(.data.rel+0x20): undefined reference to `synth_ops' /usr/bin/ld: libcommon.fa.p/fsdev_qemu-fsdev.c.o:(.data.rel+0x38): undefined reference to `proxy_ops' > > All these symbols are defined in hw/9pfs/meson.build's fs_ss, which is > conditional on CONFIG_9PFS. So: > > diff --git a/accel/Kconfig b/accel/Kconfig > index 2ad94a3839..d24664d736 100644 > --- a/accel/Kconfig > +++ b/accel/Kconfig > @@ -7,3 +7,4 @@ config KVM > config XEN > bool > select FSDEV_9P if VIRTFS > +select 9PFS if VIRTFS Without this line ^ it works! Thanks :* Can you reply with your S-o-b? :) > > or alternatively (and I think better): > > diff --git a/hw/9pfs/Kconfig b/hw/9pfs/Kconfig > index d3ebd73730..3ae5749661 100644 > --- a/hw/9pfs/Kconfig > +++ b/hw/9pfs/Kconfig > @@ -2,12 +2,8 @@ config FSDEV_9P > bool > depends on VIRTFS > > -config 9PFS > -bool > - > config VIRTIO_9P > bool > default y > depends on VIRTFS && VIRTIO > select FSDEV_9P > -select 9PFS > diff --git a/hw/9pfs/meson.build b/hw/9pfs/meson.build > index cc09426212..99be5d9119 100644 > --- a/hw/9pfs/meson.build > +++ b/hw/9pfs/meson.build > @@ -15,6 +15,6 @@ fs_ss.add(files( >'coxattr.c', > )) > fs_ss.add(when: 'CONFIG_XEN', if_true: files('xen-9p-backend.c')) > -softmmu_ss.add_all(when: 'CONFIG_9PFS', if_true: fs_ss) > +softmmu_ss.add_all(when: 'CONFIG_FSDEV_9P', if_true: fs_ss) > > specific_ss.add(when: 'CONFIG_VIRTIO_9P', if_true: > files('virtio-9p-device.c')) > > Paolo >
Re: [PATCH-for-5.2 2/3] gitlab-ci: Add a job to cover the --without-default-devices config
On Tue, Nov 3, 2020 at 6:01 PM Philippe Mathieu-Daudé wrote: > On 11/3/20 5:52 PM, Daniel P. Berrangé wrote: > > On Tue, Nov 03, 2020 at 05:46:03PM +0100, Philippe Mathieu-Daudé wrote: > >> We test './configure --without-default-devices' since commit > >> 20885b5b169 (".travis.yml: test that no-default-device builds > >> do not regress") in Travis-CI. > >> > >> One minor difference: the GitLab Ubuntu docker image has the > >> Xen devel packages installed. As it is automatically selected, > >> we need to disable it with the --disable-xen option, else the > >> build fails: > >> > >> /usr/bin/ld: libcommon.fa.p/hw_xen_xen-legacy-backend.c.o: in function > >> `xen_be_register_common': > >> hw/xen/xen-legacy-backend.c:754: undefined reference to `xen_9pfs_ops' > >> /usr/bin/ld: libcommon.fa.p/fsdev_qemu-fsdev.c.o:(.data.rel+0x8): > >> undefined reference to `local_ops' > >> /usr/bin/ld: libcommon.fa.p/fsdev_qemu-fsdev.c.o:(.data.rel+0x20): > >> undefined reference to `synth_ops' > >> /usr/bin/ld: libcommon.fa.p/fsdev_qemu-fsdev.c.o:(.data.rel+0x38): > >> undefined reference to `proxy_ops' All these symbols are defined in hw/9pfs/meson.build's fs_ss, which is conditional on CONFIG_9PFS. So: diff --git a/accel/Kconfig b/accel/Kconfig index 2ad94a3839..d24664d736 100644 --- a/accel/Kconfig +++ b/accel/Kconfig @@ -7,3 +7,4 @@ config KVM config XEN bool select FSDEV_9P if VIRTFS +select 9PFS if VIRTFS or alternatively (and I think better): diff --git a/hw/9pfs/Kconfig b/hw/9pfs/Kconfig index d3ebd73730..3ae5749661 100644 --- a/hw/9pfs/Kconfig +++ b/hw/9pfs/Kconfig @@ -2,12 +2,8 @@ config FSDEV_9P bool depends on VIRTFS -config 9PFS -bool - config VIRTIO_9P bool default y depends on VIRTFS && VIRTIO select FSDEV_9P -select 9PFS diff --git a/hw/9pfs/meson.build b/hw/9pfs/meson.build index cc09426212..99be5d9119 100644 --- a/hw/9pfs/meson.build +++ b/hw/9pfs/meson.build @@ -15,6 +15,6 @@ fs_ss.add(files( 'coxattr.c', )) fs_ss.add(when: 'CONFIG_XEN', if_true: files('xen-9p-backend.c')) -softmmu_ss.add_all(when: 'CONFIG_9PFS', if_true: fs_ss) +softmmu_ss.add_all(when: 'CONFIG_FSDEV_9P', if_true: fs_ss) specific_ss.add(when: 'CONFIG_VIRTIO_9P', if_true: files('virtio-9p-device.c')) Paolo
Re: [PATCH-for-5.2 2/3] gitlab-ci: Add a job to cover the --without-default-devices config
On 11/3/20 7:43 PM, Thomas Huth wrote: > On 03/11/2020 17.46, Philippe Mathieu-Daudé wrote: >> We test './configure --without-default-devices' since commit >> 20885b5b169 (".travis.yml: test that no-default-device builds >> do not regress") in Travis-CI. >> >> As we prefer to use GitLab-CI, add the equivalent job there. >> >> One minor difference: the GitLab Ubuntu docker image has the >> Xen devel packages installed. As it is automatically selected, >> we need to disable it with the --disable-xen option, else the >> build fails: >> >> /usr/bin/ld: libcommon.fa.p/hw_xen_xen-legacy-backend.c.o: in function >> `xen_be_register_common': >> hw/xen/xen-legacy-backend.c:754: undefined reference to `xen_9pfs_ops' >> /usr/bin/ld: libcommon.fa.p/fsdev_qemu-fsdev.c.o:(.data.rel+0x8): >> undefined reference to `local_ops' >> /usr/bin/ld: libcommon.fa.p/fsdev_qemu-fsdev.c.o:(.data.rel+0x20): >> undefined reference to `synth_ops' >> /usr/bin/ld: libcommon.fa.p/fsdev_qemu-fsdev.c.o:(.data.rel+0x38): >> undefined reference to `proxy_ops' >> collect2: error: ld returned 1 exit status >> >> Signed-off-by: Philippe Mathieu-Daudé >> --- >> .gitlab-ci.yml | 11 +++ >> 1 file changed, 11 insertions(+) >> >> diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml >> index 3b15ae5c302..6ee098ec53c 100644 >> --- a/.gitlab-ci.yml >> +++ b/.gitlab-ci.yml >> @@ -262,6 +262,17 @@ build-user-plugins: >> MAKE_CHECK_ARGS: check-tcg >>timeout: 1h 30m >> >> +build-system-ubuntu-without-default-devices: >> + <<: *native_build_job_definition >> + variables: >> +IMAGE: ubuntu2004 >> +CONFIGURE_ARGS: --without-default-devices --disable-user --disable-xen >> --disable-tools --disable-docs >> +MAKE_CHECK_ARGS: check-build > > AFAIK "check-build" is pretty much a no-op since the convertion to meson ... > could you maybe replace with a set of qtest targets that work, to make sure > that we do not regress here? E.g.: > > MAKE_CHECK_ARGS: check-qtest-avr check-qtestcris check-qtest-m68k > check-qtest-microblaze check-qtest-mipsel check-qtest-moxie ... qtests don't work with --without-default-devices, as we don't check for (un-)available devices. I'll try check-unit. Thanks, Phil.
Re: [PATCH-for-5.2 2/3] gitlab-ci: Add a job to cover the --without-default-devices config
On 03/11/2020 17.46, Philippe Mathieu-Daudé wrote: > We test './configure --without-default-devices' since commit > 20885b5b169 (".travis.yml: test that no-default-device builds > do not regress") in Travis-CI. > > As we prefer to use GitLab-CI, add the equivalent job there. > > One minor difference: the GitLab Ubuntu docker image has the > Xen devel packages installed. As it is automatically selected, > we need to disable it with the --disable-xen option, else the > build fails: > > /usr/bin/ld: libcommon.fa.p/hw_xen_xen-legacy-backend.c.o: in function > `xen_be_register_common': > hw/xen/xen-legacy-backend.c:754: undefined reference to `xen_9pfs_ops' > /usr/bin/ld: libcommon.fa.p/fsdev_qemu-fsdev.c.o:(.data.rel+0x8): undefined > reference to `local_ops' > /usr/bin/ld: libcommon.fa.p/fsdev_qemu-fsdev.c.o:(.data.rel+0x20): > undefined reference to `synth_ops' > /usr/bin/ld: libcommon.fa.p/fsdev_qemu-fsdev.c.o:(.data.rel+0x38): > undefined reference to `proxy_ops' > collect2: error: ld returned 1 exit status > > Signed-off-by: Philippe Mathieu-Daudé > --- > .gitlab-ci.yml | 11 +++ > 1 file changed, 11 insertions(+) > > diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml > index 3b15ae5c302..6ee098ec53c 100644 > --- a/.gitlab-ci.yml > +++ b/.gitlab-ci.yml > @@ -262,6 +262,17 @@ build-user-plugins: > MAKE_CHECK_ARGS: check-tcg >timeout: 1h 30m > > +build-system-ubuntu-without-default-devices: > + <<: *native_build_job_definition > + variables: > +IMAGE: ubuntu2004 > +CONFIGURE_ARGS: --without-default-devices --disable-user --disable-xen > --disable-tools --disable-docs > +MAKE_CHECK_ARGS: check-build AFAIK "check-build" is pretty much a no-op since the convertion to meson ... could you maybe replace with a set of qtest targets that work, to make sure that we do not regress here? E.g.: MAKE_CHECK_ARGS: check-qtest-avr check-qtestcris check-qtest-m68k check-qtest-microblaze check-qtest-mipsel check-qtest-moxie ... Thomas
Re: [PATCH-for-5.2 2/3] gitlab-ci: Add a job to cover the --without-default-devices config
On 11/3/20 5:46 PM, Philippe Mathieu-Daudé wrote: > We test './configure --without-default-devices' since commit > 20885b5b169 (".travis.yml: test that no-default-device builds > do not regress") in Travis-CI. > > As we prefer to use GitLab-CI, add the equivalent job there. > > One minor difference: the GitLab Ubuntu docker image has the > Xen devel packages installed. As it is automatically selected, > we need to disable it with the --disable-xen option, else the > build fails: > > /usr/bin/ld: libcommon.fa.p/hw_xen_xen-legacy-backend.c.o: in function > `xen_be_register_common': > hw/xen/xen-legacy-backend.c:754: undefined reference to `xen_9pfs_ops' > /usr/bin/ld: libcommon.fa.p/fsdev_qemu-fsdev.c.o:(.data.rel+0x8): undefined > reference to `local_ops' > /usr/bin/ld: libcommon.fa.p/fsdev_qemu-fsdev.c.o:(.data.rel+0x20): > undefined reference to `synth_ops' > /usr/bin/ld: libcommon.fa.p/fsdev_qemu-fsdev.c.o:(.data.rel+0x38): > undefined reference to `proxy_ops' > collect2: error: ld returned 1 exit status > > Signed-off-by: Philippe Mathieu-Daudé > --- > .gitlab-ci.yml | 11 +++ > 1 file changed, 11 insertions(+) > > diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml > index 3b15ae5c302..6ee098ec53c 100644 > --- a/.gitlab-ci.yml > +++ b/.gitlab-ci.yml > @@ -262,6 +262,17 @@ build-user-plugins: > MAKE_CHECK_ARGS: check-tcg >timeout: 1h 30m > > +build-system-ubuntu-without-default-devices: > + <<: *native_build_job_definition > + variables: > +IMAGE: ubuntu2004 > +CONFIGURE_ARGS: --without-default-devices --disable-user --disable-xen > --disable-tools --disable-docs > +MAKE_CHECK_ARGS: check-build The part below is pointless, as no job consume these artifacts. I'll remove it in the next iteration. > + artifacts: > +expire_in: 2 days > +paths: > + - build > + > build-clang: ><<: *native_build_job_definition >variables: >
Re: [PATCH-for-5.2 2/3] gitlab-ci: Add a job to cover the --without-default-devices config
I forgot to Cc the 9pfs & Xen maintainers, doing it now ;) On 11/3/20 6:01 PM, Philippe Mathieu-Daudé wrote: > On 11/3/20 5:52 PM, Daniel P. Berrangé wrote: >> On Tue, Nov 03, 2020 at 05:46:03PM +0100, Philippe Mathieu-Daudé wrote: >>> We test './configure --without-default-devices' since commit >>> 20885b5b169 (".travis.yml: test that no-default-device builds >>> do not regress") in Travis-CI. >>> >>> As we prefer to use GitLab-CI, add the equivalent job there. >>> >>> One minor difference: the GitLab Ubuntu docker image has the >>> Xen devel packages installed. As it is automatically selected, >>> we need to disable it with the --disable-xen option, else the >>> build fails: >>> >>> /usr/bin/ld: libcommon.fa.p/hw_xen_xen-legacy-backend.c.o: in function >>> `xen_be_register_common': >>> hw/xen/xen-legacy-backend.c:754: undefined reference to `xen_9pfs_ops' >>> /usr/bin/ld: libcommon.fa.p/fsdev_qemu-fsdev.c.o:(.data.rel+0x8): >>> undefined reference to `local_ops' >>> /usr/bin/ld: libcommon.fa.p/fsdev_qemu-fsdev.c.o:(.data.rel+0x20): >>> undefined reference to `synth_ops' >>> /usr/bin/ld: libcommon.fa.p/fsdev_qemu-fsdev.c.o:(.data.rel+0x38): >>> undefined reference to `proxy_ops' >>> collect2: error: ld returned 1 exit status >> >> Surely this is a build bug we need to fix rather than ignore in CI ? > > Well it predates this series, so nobody really cared > (thus I wonder if it makes sense to invest resources > there). > > Anyway I can have a look after 5.2-rc1. >
Re: [PATCH-for-5.2 2/3] gitlab-ci: Add a job to cover the --without-default-devices config
On 11/3/20 5:52 PM, Daniel P. Berrangé wrote: > On Tue, Nov 03, 2020 at 05:46:03PM +0100, Philippe Mathieu-Daudé wrote: >> We test './configure --without-default-devices' since commit >> 20885b5b169 (".travis.yml: test that no-default-device builds >> do not regress") in Travis-CI. >> >> As we prefer to use GitLab-CI, add the equivalent job there. >> >> One minor difference: the GitLab Ubuntu docker image has the >> Xen devel packages installed. As it is automatically selected, >> we need to disable it with the --disable-xen option, else the >> build fails: >> >> /usr/bin/ld: libcommon.fa.p/hw_xen_xen-legacy-backend.c.o: in function >> `xen_be_register_common': >> hw/xen/xen-legacy-backend.c:754: undefined reference to `xen_9pfs_ops' >> /usr/bin/ld: libcommon.fa.p/fsdev_qemu-fsdev.c.o:(.data.rel+0x8): >> undefined reference to `local_ops' >> /usr/bin/ld: libcommon.fa.p/fsdev_qemu-fsdev.c.o:(.data.rel+0x20): >> undefined reference to `synth_ops' >> /usr/bin/ld: libcommon.fa.p/fsdev_qemu-fsdev.c.o:(.data.rel+0x38): >> undefined reference to `proxy_ops' >> collect2: error: ld returned 1 exit status > > Surely this is a build bug we need to fix rather than ignore in CI ? Well it predates this series, so nobody really cared (thus I wonder if it makes sense to invest resources there). Anyway I can have a look after 5.2-rc1.
Re: [PATCH-for-5.2 2/3] gitlab-ci: Add a job to cover the --without-default-devices config
On Tue, Nov 03, 2020 at 06:01:12PM +0100, Philippe Mathieu-Daudé wrote: > On 11/3/20 5:52 PM, Daniel P. Berrangé wrote: > > On Tue, Nov 03, 2020 at 05:46:03PM +0100, Philippe Mathieu-Daudé wrote: > >> We test './configure --without-default-devices' since commit > >> 20885b5b169 (".travis.yml: test that no-default-device builds > >> do not regress") in Travis-CI. > >> > >> As we prefer to use GitLab-CI, add the equivalent job there. > >> > >> One minor difference: the GitLab Ubuntu docker image has the > >> Xen devel packages installed. As it is automatically selected, > >> we need to disable it with the --disable-xen option, else the > >> build fails: > >> > >> /usr/bin/ld: libcommon.fa.p/hw_xen_xen-legacy-backend.c.o: in function > >> `xen_be_register_common': > >> hw/xen/xen-legacy-backend.c:754: undefined reference to `xen_9pfs_ops' > >> /usr/bin/ld: libcommon.fa.p/fsdev_qemu-fsdev.c.o:(.data.rel+0x8): > >> undefined reference to `local_ops' > >> /usr/bin/ld: libcommon.fa.p/fsdev_qemu-fsdev.c.o:(.data.rel+0x20): > >> undefined reference to `synth_ops' > >> /usr/bin/ld: libcommon.fa.p/fsdev_qemu-fsdev.c.o:(.data.rel+0x38): > >> undefined reference to `proxy_ops' > >> collect2: error: ld returned 1 exit status > > > > Surely this is a build bug we need to fix rather than ignore in CI ? > > Well it predates this series, so nobody really cared > (thus I wonder if it makes sense to invest resources > there). > > Anyway I can have a look after 5.2-rc1. Can you just put a comment in the .gitlab-ci.yml file stating that the --disable-xen arg is a short term workaround that needs to be fixed properly Regards, Daniel -- |: https://berrange.com -o-https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o-https://fstop138.berrange.com :| |: https://entangle-photo.org-o-https://www.instagram.com/dberrange :|
Re: [PATCH-for-5.2 2/3] gitlab-ci: Add a job to cover the --without-default-devices config
On Tue, Nov 03, 2020 at 05:46:03PM +0100, Philippe Mathieu-Daudé wrote: > We test './configure --without-default-devices' since commit > 20885b5b169 (".travis.yml: test that no-default-device builds > do not regress") in Travis-CI. > > As we prefer to use GitLab-CI, add the equivalent job there. > > One minor difference: the GitLab Ubuntu docker image has the > Xen devel packages installed. As it is automatically selected, > we need to disable it with the --disable-xen option, else the > build fails: > > /usr/bin/ld: libcommon.fa.p/hw_xen_xen-legacy-backend.c.o: in function > `xen_be_register_common': > hw/xen/xen-legacy-backend.c:754: undefined reference to `xen_9pfs_ops' > /usr/bin/ld: libcommon.fa.p/fsdev_qemu-fsdev.c.o:(.data.rel+0x8): undefined > reference to `local_ops' > /usr/bin/ld: libcommon.fa.p/fsdev_qemu-fsdev.c.o:(.data.rel+0x20): > undefined reference to `synth_ops' > /usr/bin/ld: libcommon.fa.p/fsdev_qemu-fsdev.c.o:(.data.rel+0x38): > undefined reference to `proxy_ops' > collect2: error: ld returned 1 exit status Surely this is a build bug we need to fix rather than ignore in CI ? Regards, Daniel -- |: https://berrange.com -o-https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o-https://fstop138.berrange.com :| |: https://entangle-photo.org-o-https://www.instagram.com/dberrange :|
[PATCH-for-5.2 2/3] gitlab-ci: Add a job to cover the --without-default-devices config
We test './configure --without-default-devices' since commit 20885b5b169 (".travis.yml: test that no-default-device builds do not regress") in Travis-CI. As we prefer to use GitLab-CI, add the equivalent job there. One minor difference: the GitLab Ubuntu docker image has the Xen devel packages installed. As it is automatically selected, we need to disable it with the --disable-xen option, else the build fails: /usr/bin/ld: libcommon.fa.p/hw_xen_xen-legacy-backend.c.o: in function `xen_be_register_common': hw/xen/xen-legacy-backend.c:754: undefined reference to `xen_9pfs_ops' /usr/bin/ld: libcommon.fa.p/fsdev_qemu-fsdev.c.o:(.data.rel+0x8): undefined reference to `local_ops' /usr/bin/ld: libcommon.fa.p/fsdev_qemu-fsdev.c.o:(.data.rel+0x20): undefined reference to `synth_ops' /usr/bin/ld: libcommon.fa.p/fsdev_qemu-fsdev.c.o:(.data.rel+0x38): undefined reference to `proxy_ops' collect2: error: ld returned 1 exit status Signed-off-by: Philippe Mathieu-Daudé --- .gitlab-ci.yml | 11 +++ 1 file changed, 11 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 3b15ae5c302..6ee098ec53c 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -262,6 +262,17 @@ build-user-plugins: MAKE_CHECK_ARGS: check-tcg timeout: 1h 30m +build-system-ubuntu-without-default-devices: + <<: *native_build_job_definition + variables: +IMAGE: ubuntu2004 +CONFIGURE_ARGS: --without-default-devices --disable-user --disable-xen --disable-tools --disable-docs +MAKE_CHECK_ARGS: check-build + artifacts: +expire_in: 2 days +paths: + - build + build-clang: <<: *native_build_job_definition variables: -- 2.26.2