Re: [PATCH v2 4/6] docs/about/deprecated: Deprecate the qemu-system-arm binary

2023-03-02 Thread Thomas Huth
On 02/03/2023 23.16, Philippe Mathieu-Daudé wrote: On 2/3/23 17:31, Thomas Huth wrote: qemu-system-aarch64 is a proper superset of qemu-system-arm, and the latter was mainly still required for 32-bit KVM support. But this 32-bit KVM arm support has been dropped in the Linux kernel a couple of

Re: [PATCH] security: Add support for SUSE edk2 firmware paths

2023-03-02 Thread Jim Fehlig
On 3/2/23 07:43, Andrea Bolognani wrote: On Thu, Feb 23, 2023 at 11:13:28AM -0700, Jim Fehlig wrote: +++ b/src/security/apparmor/libvirt-qemu @@ -91,7 +91,7 @@ /usr/share/proll/** r, /usr/share/qemu-efi/** r, /usr/share/qemu-kvm/** r, - /usr/share/qemu/** r, + /usr/share/qemu/**

Re: [PATCH v2 4/6] docs/about/deprecated: Deprecate the qemu-system-arm binary

2023-03-02 Thread Philippe Mathieu-Daudé
On 2/3/23 17:31, Thomas Huth wrote: qemu-system-aarch64 is a proper superset of qemu-system-arm, and the latter was mainly still required for 32-bit KVM support. But this 32-bit KVM arm support has been dropped in the Linux kernel a couple of years ago already, so we don't really need

Re: [PATCH v2 0/6] Deprecate support for 32-bit x86 and arm hosts

2023-03-02 Thread Philippe Mathieu-Daudé
On 2/3/23 17:31, Thomas Huth wrote: We're struggling quite badly with our CI minutes on the shared gitlab runners, so we urgently need to think of ways to cut down our supported build and target environments. qemu-system-i386 and qemu-system-arm are not really required anymore, since nobody uses

Re: [PATCH v2 6/6] gitlab-ci.d/crossbuilds: Drop the 32-bit arm system emulation jobs

2023-03-02 Thread Philippe Mathieu-Daudé
On 2/3/23 17:31, Thomas Huth wrote: Hardly anybody still uses 32-bit arm environments for running QEMU, so let's stop wasting our scarce CI minutes with these jobs. Signed-off-by: Thomas Huth --- .gitlab-ci.d/crossbuilds.yml | 14 -- 1 file changed, 14 deletions(-)

Re: [libvirt PATCH 17/20] ci: build.sh: Make the script executable

2023-03-02 Thread Daniel P . Berrangé
On Mon, Feb 06, 2023 at 02:53:14PM +0100, Erik Skultety wrote: > Unless we run it as 'sh ci/build.sh' in .gitlab-ci.yml recipes and > instead opt into doing 'chmod +x && ci/build.sh' it will cause meson > dist build to fail with a fatal error about having uncommitted changes > in the repo.

Re: [libvirt PATCH 09/20] ci: build.sh: Join MESON_ARGS and MESON_OPTS

2023-03-02 Thread Daniel P . Berrangé
On Mon, Feb 06, 2023 at 02:53:06PM +0100, Erik Skultety wrote: > It is quite confusing seeing these two in a call like this one: > $ meson build $MESON_OPTS $MESON_ARGS > > One has to ask 'how are they different' and 'shouldn't these be > merged'. In fact, these variables hold very different

Re: [libvirt PATCH 07/20] ci: build.sh: Drop the CI prefix from the CI_{MESON, NINJA}_ARGS vars

2023-03-02 Thread Daniel P . Berrangé
On Mon, Feb 06, 2023 at 02:53:04PM +0100, Erik Skultety wrote: > Although it is currently consistent with the other variables we define > when running ci in a local container environment, it isn't consistent > with the variable naming we use in GitLab recipes. Since the idea is > to unite the two,

Re: [libvirt PATCH 06/20] ci: build.sh: Always assume -Dsystem=true

2023-03-02 Thread Daniel P . Berrangé
On Mon, Feb 06, 2023 at 02:53:03PM +0100, Erik Skultety wrote: > There's no harm in always building in system mode, i.e. setting the > right paths. > > Signed-off-by: Erik Skultety > --- > ci/build.sh | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) Reviewed-by: Daniel P. Berrangé

Re: [libvirt PATCH 05/20] ci: build.sh: Use 'meson setup' explicitly

2023-03-02 Thread Daniel P . Berrangé
On Mon, Feb 06, 2023 at 02:53:02PM +0100, Erik Skultety wrote: > Even though 'setup' is assumed when no other command is given, we're > being explicit in our GitLab recipes, so do the same for the local > build.sh script too. It is actually gouing to become mandatory soon based on the warnings

Re: [libvirt PATCH 04/20] ci: build.sh: Drop the commentary about CI_BUILD_SCRIPT

2023-03-02 Thread Daniel P . Berrangé
On Mon, Feb 06, 2023 at 02:53:01PM +0100, Erik Skultety wrote: > build.sh is not the place where this should be mentioned as the > official entrypoint for this script locally is ci/helper which can > download the right image from our upstream CI registry. Since the idea > is to ultimately drop the

Re: [libvirt PATCH 03/20] gitlab-ci.yml: Use $HOME for rpmbuild's topdir instead of PWD

2023-03-02 Thread Daniel P . Berrangé
On Mon, Feb 06, 2023 at 02:53:00PM +0100, Erik Skultety wrote: > Signed-off-by: Erik Skultety > --- > .gitlab-ci.yml | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) Reviewed-by: Daniel P. Berrangé With regards, Daniel -- |: https://berrange.com -o-

Re: [libvirt PATCH 02/20] gitlab-ci.yml: potfile: Consolidate the meson compile calls

2023-03-02 Thread Daniel P . Berrangé
On Mon, Feb 06, 2023 at 02:52:59PM +0100, Erik Skultety wrote: > You can specify multiple targets at once for the 'compile' command. > > Signed-off-by: Erik Skultety > --- > .gitlab-ci.yml | 3 +-- > 1 file changed, 1 insertion(+), 2 deletions(-) > > diff --git a/.gitlab-ci.yml

Re: [libvirt PATCH 01/20] gitlab-ci.yml: Replace all explicit calls to ninja with meson commands

2023-03-02 Thread Daniel P . Berrangé
On Mon, Feb 06, 2023 at 02:52:58PM +0100, Erik Skultety wrote: > This is continuation of what commit b56e2be68e3 started. If we stick to > only calling meson commands directly, we can achieve much better > consistency in passing arguments to meson especially if we unify the > recipes run in gitlab

Re: [PATCH v2 6/6] gitlab-ci.d/crossbuilds: Drop the 32-bit arm system emulation jobs

2023-03-02 Thread Daniel P . Berrangé
On Thu, Mar 02, 2023 at 05:31:06PM +0100, Thomas Huth wrote: > Hardly anybody still uses 32-bit arm environments for running QEMU, > so let's stop wasting our scarce CI minutes with these jobs. > > Signed-off-by: Thomas Huth > --- > .gitlab-ci.d/crossbuilds.yml | 14 -- > 1 file

Re: [PATCH v2 5/6] docs/about/deprecated: Deprecate 32-bit arm hosts

2023-03-02 Thread Daniel P . Berrangé
On Thu, Mar 02, 2023 at 05:31:05PM +0100, Thomas Huth wrote: > For running QEMU in system emulation mode, the user needs a rather > strong host system, i.e. not only an embedded low-frequency controller. > All recent beefy arm host machines should support 64-bit now, it's > unlikely that anybody

Re: [PATCH v2 3/6] gitlab-ci.d/crossbuilds: Drop the i386 jobs

2023-03-02 Thread Daniel P . Berrangé
On Thu, Mar 02, 2023 at 05:31:03PM +0100, Thomas Huth wrote: > Hardly anybody still uses 32-bit x86 environments for running QEMU, > so let's stop wasting our scarce CI minutes with these jobs. > > Signed-off-by: Thomas Huth > --- > .gitlab-ci.d/crossbuilds.yml | 16 > 1 file

Re: [PATCH v2 4/6] docs/about/deprecated: Deprecate the qemu-system-arm binary

2023-03-02 Thread Daniel P . Berrangé
On Thu, Mar 02, 2023 at 05:31:04PM +0100, Thomas Huth wrote: > qemu-system-aarch64 is a proper superset of qemu-system-arm, > and the latter was mainly still required for 32-bit KVM support. > But this 32-bit KVM arm support has been dropped in the Linux > kernel a couple of years ago already, so

Re: [PATCH v2 2/6] docs/about/deprecated: Deprecate 32-bit x86 hosts

2023-03-02 Thread Daniel P . Berrangé
On Thu, Mar 02, 2023 at 05:31:02PM +0100, Thomas Huth wrote: > Hardly anybody still uses 32-bit x86 hosts today, so we should start > deprecating them to stop wasting our time and CI minutes here. > For example, there are also still some unresolved problems with these: > When emulating 64-bit

Re: [PATCH v2 1/6] docs/about/deprecated: Deprecate the qemu-system-i386 binary

2023-03-02 Thread Daniel P . Berrangé
On Thu, Mar 02, 2023 at 05:31:01PM +0100, Thomas Huth wrote: > Hardly anybody really requires the i386 binary anymore, since the > qemu-system-x86_64 binary is a proper superset. So let's deprecate > the 32-bit variant now, so that we can finally stop wasting our time > and CI minutes with this.

[PATCH v2 4/6] docs/about/deprecated: Deprecate the qemu-system-arm binary

2023-03-02 Thread Thomas Huth
qemu-system-aarch64 is a proper superset of qemu-system-arm, and the latter was mainly still required for 32-bit KVM support. But this 32-bit KVM arm support has been dropped in the Linux kernel a couple of years ago already, so we don't really need qemu-system-arm anymore, thus deprecated it now.

[PATCH v2 3/6] gitlab-ci.d/crossbuilds: Drop the i386 jobs

2023-03-02 Thread Thomas Huth
Hardly anybody still uses 32-bit x86 environments for running QEMU, so let's stop wasting our scarce CI minutes with these jobs. Signed-off-by: Thomas Huth --- .gitlab-ci.d/crossbuilds.yml | 16 1 file changed, 16 deletions(-) diff --git a/.gitlab-ci.d/crossbuilds.yml

[PATCH v2 5/6] docs/about/deprecated: Deprecate 32-bit arm hosts

2023-03-02 Thread Thomas Huth
For running QEMU in system emulation mode, the user needs a rather strong host system, i.e. not only an embedded low-frequency controller. All recent beefy arm host machines should support 64-bit now, it's unlikely that anybody is still seriously using QEMU on a 32-bit arm CPU, so we deprecate the

[PATCH v2 6/6] gitlab-ci.d/crossbuilds: Drop the 32-bit arm system emulation jobs

2023-03-02 Thread Thomas Huth
Hardly anybody still uses 32-bit arm environments for running QEMU, so let's stop wasting our scarce CI minutes with these jobs. Signed-off-by: Thomas Huth --- .gitlab-ci.d/crossbuilds.yml | 14 -- 1 file changed, 14 deletions(-) diff --git a/.gitlab-ci.d/crossbuilds.yml

[PATCH v2 2/6] docs/about/deprecated: Deprecate 32-bit x86 hosts

2023-03-02 Thread Thomas Huth
Hardly anybody still uses 32-bit x86 hosts today, so we should start deprecating them to stop wasting our time and CI minutes here. For example, there are also still some unresolved problems with these: When emulating 64-bit binaries in user mode, TCG does not honor atomicity for 64-bit accesses,

[PATCH v2 0/6] Deprecate support for 32-bit x86 and arm hosts

2023-03-02 Thread Thomas Huth
We're struggling quite badly with our CI minutes on the shared gitlab runners, so we urgently need to think of ways to cut down our supported build and target environments. qemu-system-i386 and qemu-system-arm are not really required anymore, since nobody uses KVM on the corresponding systems for

[PATCH v2 1/6] docs/about/deprecated: Deprecate the qemu-system-i386 binary

2023-03-02 Thread Thomas Huth
Hardly anybody really requires the i386 binary anymore, since the qemu-system-x86_64 binary is a proper superset. So let's deprecate the 32-bit variant now, so that we can finally stop wasting our time and CI minutes with this. With regards to 32-bit KVM support in the x86 Linux kernel, the

Re: [libvirt PATCH 10/33] qemu: Introduce qemuDomainDefBootPostParse()

2023-03-02 Thread Michal Prívozník
On 2/15/23 11:42, Andrea Bolognani wrote: > Move all the boot related parts of qemuDomainDefPostParse() > to a separate helper. > > Signed-off-by: Andrea Bolognani > --- > src/qemu/qemu_domain.c | 37 - > 1 file changed, 24 insertions(+), 13 deletions(-) > >

Re: [libvirt PATCH 00/33] qemu: Move firmware selection to postparse and add support for QCOW2 firmware

2023-03-02 Thread Michal Prívozník
On 2/15/23 11:41, Andrea Bolognani wrote: > Motivation for these changes can be found in the commit message > for patch 20 ("qemu: Move firmware selection from startup to > postparse") as well as [RHBZ#2161965]. > > > Patches 01-17 are preparatory fixes/improvements/cleanups. > > Patches 19-20

Re: [PATCH 13/21] qemu: capabilities: Retire unused QEMU_CAPS_IOTHREAD_POLLING

2023-03-02 Thread Ján Tomko
On a Thursday in 2023, Peter Krempa wrote: We now always assume support for polling mode of iothreads. Signed-off-by: Peter Krempa --- src/qemu/qemu_capabilities.c | 3 +-- src/qemu/qemu_capabilities.h | 2 +-

Re: [libvirt PATCH] qemu: Remove duplicate user/group lookup

2023-03-02 Thread Peter Krempa
On Wed, Mar 01, 2023 at 19:04:42 +0100, Andrea Bolognani wrote: > Commit 068efae5b1a9 created a copy of this code instead of > simply moving it. > > Signed-off-by: Andrea Bolognani > --- > src/qemu/qemu_conf.c | 6 -- > 1 file changed, 6 deletions(-) Reviewed-by: Peter Krempa

Re: [PATCH RFCv2 0/5] qemu: Handle deprecation of '-no-acpi'

2023-03-02 Thread Ján Tomko
On a Wednesday in 2023, Peter Krempa wrote: This new version doesn't bother looking for properties of -machine but uses data added to output of 'query-machines' to do proper decision when to use -machine acpi and also adds validation. Required qemu patch:

Re: [PATCH] security: Add support for SUSE edk2 firmware paths

2023-03-02 Thread Andrea Bolognani
On Thu, Feb 23, 2023 at 11:13:28AM -0700, Jim Fehlig wrote: > +++ b/src/security/apparmor/libvirt-qemu > @@ -91,7 +91,7 @@ >/usr/share/proll/** r, >/usr/share/qemu-efi/** r, >/usr/share/qemu-kvm/** r, > - /usr/share/qemu/** r, > + /usr/share/qemu/** rk, >/usr/share/seabios/** r,

[PATCH 11/21] qemu: capabilities: Retire unused QEMU_CAPS_OBJECT_IOTHREAD

2023-03-02 Thread Peter Krempa
Signed-off-by: Peter Krempa --- src/qemu/qemu_capabilities.c | 3 +-- src/qemu/qemu_capabilities.h | 2 +- tests/qemucapabilitiesdata/caps_4.2.0.aarch64.xml | 1 - tests/qemucapabilitiesdata/caps_4.2.0.ppc64.xml | 1 -

[PATCH RFC 20/21] conf: Add possibility to configure multiple iothreads per disk

2023-03-02 Thread Peter Krempa
Introduce a new sub-element of disk's which will allow configuring multiple iothreads and also map them to specific virt-queues of virtio devices. Signed-off-by: Peter Krempa --- docs/formatdomain.rst | 23 +- src/conf/domain_conf.c| 76

[PATCH 09/21] tests: qemuxml2argvdata: Remove irrelevant from 'iothread-*' cases

2023-03-02 Thread Peter Krempa
Remove disks which are not necessary to demonstrate iothread config. Signed-off-by: Peter Krempa --- tests/qemuxml2argvdata/iothreads-disk.x86_64-latest.args| 5 + tests/qemuxml2argvdata/iothreads-disk.xml | 6 -- .../iothreads-ids-partial.x86_64-latest.args

[PATCH 12/21] qemu: Always assume support for QEMU_CAPS_IOTHREAD_POLLING

2023-03-02 Thread Peter Krempa
iothread polling mode and the corresponding properties were added in qemu-2.9 ( 0d9d86fb4df4882b ). We can always assume that qemu supports them. Signed-off-by: Peter Krempa --- src/qemu/qemu_driver.c | 6 -- 1 file changed, 6 deletions(-) diff --git a/src/qemu/qemu_driver.c

[PATCH 15/21] qemu: Use configured iothread poll parameters on startup

2023-03-02 Thread Peter Krempa
Implement the support for the persisted poll parameters and remove restrictions on saving config when modifying them during runtime. Signed-off-by: Peter Krempa --- src/qemu/qemu_command.c | 18 +++ src/qemu/qemu_driver.c| 30

[PATCH RFC 21/21] qemu: Implement support for configuring iothread to virtqueue mapping for disks

2023-03-02 Thread Peter Krempa
Add validation and formatting of the commandline. Note that this is based on Stefan's RFC series which only adds the qemu interface: https://lists.gnu.org/archive/html/qemu-devel/2023-01/msg04090.html --- src/qemu/qemu_command.c | 45 +++ src/qemu/qemu_validate.c

[PATCH RFC 18/21] qemucapabilitiesdata: Bump qemu-8.0 caps for virtqeueues

2023-03-02 Thread Peter Krempa
--- .../caps_8.0.0.x86_64.replies | 197 +- .../caps_8.0.0.x86_64.xml | 2 +- 2 files changed, 102 insertions(+), 97 deletions(-) diff --git a/tests/qemucapabilitiesdata/caps_8.0.0.x86_64.replies

[PATCH RFC 17/21] util: xml: Introduce virXMLNodeGetSubelement

2023-03-02 Thread Peter Krempa
The new helper is similar to virXPathNode list but for cases where we want to get subelements directly rather than using XPath. Signed-off-by: Peter Krempa --- src/libvirt_private.syms | 1 + src/util/virxml.c| 29 + src/util/virxml.h| 4 3

[PATCH 03/21] qemuxml2(argv|xml)test: Remove 'iothreads' case

2023-03-02 Thread Peter Krempa
'iothreads-disk' covers everything that 'iothreads' did in addition to actually using the iothread. Signed-off-by: Peter Krempa --- tests/qemuxml2argvdata/iothreads.args | 35 - tests/qemuxml2argvdata/iothreads.xml | 31 -- tests/qemuxml2argvtest.c

[PATCH 07/21] qemuxml2(argv|xmltest): Simplify testing of scheduler settings

2023-03-02 Thread Peter Krempa
Remove the cputune-iothreads, cputune-iothreadsched-zeropriority, cputune-iothreadsched test files by moving the relevant elements into the cputune case as we can setup scheduler settings for multiple objects and thus test everything in one go. Signed-off-by: Peter Krempa ---

[PATCH RFC 19/21] qemu: capabilities: Introduce QEMU_CAPS_VIRTIO_BLK_IOTHREAD_MAPPING

2023-03-02 Thread Peter Krempa
The capability represents the support for mapping virtqueues to iothreads for the 'virtio-blk' device. Signed-off-by: Peter Krempa --- src/qemu/qemu_capabilities.c | 2 ++ src/qemu/qemu_capabilities.h | 1 +

[PATCH 14/21] conf: Store the iothread 'poll' settings in the XML

2023-03-02 Thread Peter Krempa
Currently we allow configuring the 'poll-max-ns', 'poll-grow', and 'poll-shrink' parameters of qemu iothreads only during runtime and they are not persisted. Add XML machinery to persist them. Signed-off-by: Peter Krempa --- docs/formatdomain.rst | 11 -

[PATCH 16/21] docs: formatdomain: Properly indent example XML for setting 'metadata_cache'

2023-03-02 Thread Peter Krempa
Indent the example XML block so that it belongs to the paragraph talking about it. Signed-off-by: Peter Krempa --- docs/formatdomain.rst | 42 -- 1 file changed, 20 insertions(+), 22 deletions(-) diff --git a/docs/formatdomain.rst b/docs/formatdomain.rst

[PATCH 13/21] qemu: capabilities: Retire unused QEMU_CAPS_IOTHREAD_POLLING

2023-03-02 Thread Peter Krempa
We now always assume support for polling mode of iothreads. Signed-off-by: Peter Krempa --- src/qemu/qemu_capabilities.c | 3 +-- src/qemu/qemu_capabilities.h | 2 +- tests/qemucapabilitiesdata/caps_4.2.0.aarch64.xml | 1 -

[PATCH 08/21] qemuxml2argvtest: Modernize negative cputune-* cases

2023-03-02 Thread Peter Krempa
Use latest caps for the tests even though the original test case didn't need any capabilities. Signed-off-by: Peter Krempa --- ...ch.err => cputune-iothreadsched-toomuch.x86_64-latest.err} | 0 ...verlap.err => cputune-vcpusched-overlap.x86_64-latest.err} | 0 tests/qemuxml2argvtest.c

[PATCH 10/21] qemu: Always assume support for iothreads

2023-03-02 Thread Peter Krempa
iothreads were introduced in qemu-2.0 and can't be compiled out thus we can always assume qemu supports them. Signed-off-by: Peter Krempa --- src/qemu/qemu_capabilities.c | 2 +- src/qemu/qemu_driver.c | 21 + src/qemu/qemu_process.c | 23 ---

[PATCH 06/21] qemuxml2(argv|xml)test: Modernize 'cputune' test cases

2023-03-02 Thread Peter Krempa
Use DO_TEST_CAPS_LATEST for cputune-numatune, cputune-zero-shares, cputune, and vcpu-placement-static cases. Do the necessary tweaks to work with actual data. Signed-off-by: Peter Krempa --- ...gs => cputune-numatune.x86_64-latest.args} | 13 --- ...=>

[PATCH 05/21] qemuxml2xmltest: Modernize iothread CWW/SCSI test cases

2023-03-02 Thread Peter Krempa
The argv counterparts are already modernized. Signed-off-by: Peter Krempa --- ...ccw.xml => iothreads-disk-virtio-ccw.s390x-latest.xml} | 4 ...ccw.xml => iothreads-virtio-scsi-ccw.s390x-latest.xml} | 4 ...ci.xml => iothreads-virtio-scsi-pci.x86_64-latest.xml} | 5 -

[PATCH 04/21] qemuxml2argvtest: Modernize the rest of 'iohtreads-*'

2023-03-02 Thread Peter Krempa
Use DO_TEST_CAPS_LATEST for the basic tests. The emulator needed to be tweaked to work with the real caps data. Signed-off-by: Peter Krempa --- ...args => iothreads-disk.x86_64-latest.args} | 21 +++ tests/qemuxml2argvdata/iothreads-disk.xml | 4 ++-- ...

[PATCH 02/21] qemuxml2argvtest: Remove 'iothreads-nocap'

2023-03-02 Thread Peter Krempa
All supported QEMU versions now support iothreads thus upcoming patches will be removing the capability checks. Remove the 'iothreads-nocap' case which will become invalid. Signed-off-by: Peter Krempa --- tests/qemuxml2argvdata/iothreads-nocap.err | 1 -

[PATCH 00/21] qemu: IOthread setting changes

2023-03-02 Thread Peter Krempa
This series: 0) cleans up various things (patches 1, 16) 1) Fixes and modernizes testing of iothreads (patches 2-9) 2) Cleans up unneeded iothread capabilities (patches 10 - 13) 3) Adds XML and commandline support for iothread polling attributes (patches 14-15) 4) Contains a RFC for adding

[PATCH 01/21] conf: virDomainDiskDefDriverParseXML: Drop unused XPath infrastructure

2023-03-02 Thread Peter Krempa
The function doesn't use XPath at all. Don't pass the context to it. Signed-off-by: Peter Krempa --- src/conf/domain_conf.c | 9 ++--- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 39ddfb7db0..ad2b44b610 100644 ---

Re: [PATCH] security: Add support for SUSE edk2 firmware paths

2023-03-02 Thread Michal Prívozník
On 2/23/23 19:13, Jim Fehlig wrote: > SUSE installs edk2 firmwares for both x86_64 and aarch64 in /usr/share/qemu. > Add support for this path in virt-aa-helper and allow locking files within > the path in the libvirt qemu abstraction. > > Signed-off-by: Jim Fehlig > --- > > FYI, I'm fine