Devel
Threads by month
- ----- 2025 -----
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2006 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2005 -----
- December
March 2025
- 46 participants
- 117 discussions

[PATCH] conf: parse interface/source/@dev for all interface types (with backend type='passt')
by Laine Stump 10 Mar '25
by Laine Stump 10 Mar '25
10 Mar '25
The original implementation of the passt backend for vhost-user
interfaces erroneously forgot to parse:
<source dev='blah'/>
for interface type='vhostuser', so it wasn't being added to the passt
commandline, and also wasn't being saved to the domain config. Now we
parse it no matter what the interface type, and then throw an error
during validation if source/@dev was specified and backend type !=
'passt' (or if interface type != 'user|vhostuser').
Fixes: 1e9054b9c79d721a55f413c2983c5370044f8f60
Resolves: https://issues.redhat.com/browse/RHEL-82539
Signed-off-by: Laine Stump <laine(a)redhat.com>
---
src/conf/domain_conf.c | 10 +++++++---
src/conf/domain_validate.c | 5 +++++
.../net-vhostuser-passt.x86_64-latest.xml | 2 ++
3 files changed, 14 insertions(+), 3 deletions(-)
diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
index d555873848..5daa1f89e8 100644
--- a/src/conf/domain_conf.c
+++ b/src/conf/domain_conf.c
@@ -9938,14 +9938,18 @@ virDomainNetDefParseXML(virDomainXMLOption *xmlopt,
break;
case VIR_DOMAIN_NET_TYPE_USER:
- def->sourceDev = virXMLPropString(source_node, "dev");
- break;
-
case VIR_DOMAIN_NET_TYPE_NULL:
case VIR_DOMAIN_NET_TYPE_LAST:
break;
}
+ /* source/@dev is used for two different interface types and *not*
+ * stored inside the union, so we can parse it out always, and
+ * then log an error during validation if it was specified for one
+ * of the interface types that doesn't support it.
+ */
+ def->sourceDev = virXMLPropString(source_node, "dev");
+
if ((virtualport_node = virXPathNode("./virtualport", ctxt))) {
if (virtualport_flags == 0) {
virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
diff --git a/src/conf/domain_validate.c b/src/conf/domain_validate.c
index f2a98f143d..9de442d7d7 100644
--- a/src/conf/domain_validate.c
+++ b/src/conf/domain_validate.c
@@ -2196,6 +2196,11 @@ virDomainNetDefValidate(const virDomainNetDef *net)
}
}
+ if (net->sourceDev && net->backend.type != VIR_DOMAIN_NET_BACKEND_PASST) {
+ virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
+ _("The 'dev' attribute of the <source> element can only be used with interface type='user' or type='vhostuser' and backend='passt'."));
+ }
+
if (net->nPortForwards > 0) {
size_t p;
diff --git a/tests/qemuxmlconfdata/net-vhostuser-passt.x86_64-latest.xml b/tests/qemuxmlconfdata/net-vhostuser-passt.x86_64-latest.xml
index a1f9366722..529aff11f8 100644
--- a/tests/qemuxmlconfdata/net-vhostuser-passt.x86_64-latest.xml
+++ b/tests/qemuxmlconfdata/net-vhostuser-passt.x86_64-latest.xml
@@ -33,6 +33,7 @@
<controller type='pci' index='0' model='pci-root'/>
<interface type='vhostuser'>
<mac address='00:11:22:33:44:55'/>
+ <source dev='eth42'/>
<ip address='172.17.2.0' family='ipv4' prefix='24'/>
<ip address='2001:db8:ac10:fd01::feed' family='ipv6'/>
<portForward proto='tcp' address='2001:db8:ac10:fd01::1:10'>
@@ -63,6 +64,7 @@
</interface>
<interface type='vhostuser'>
<mac address='00:11:22:33:44:11'/>
+ <source dev='eth43'/>
<model type='virtio'/>
<backend type='passt'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
--
2.48.1
2
2
This version introduces virStringFormatHex method and uses this method while sending host_data to cloud-hypervisor.
Praveen K Paladugu (2):
util: Introduce virStringFormatHex
ch: Enable SEV SNP support
src/ch/ch_monitor.c | 65 ++++++++++++++++++++++++++++++++--------
src/libvirt_private.syms | 1 +
src/util/virstring.c | 19 ++++++++++++
src/util/virstring.h | 1 +
4 files changed, 74 insertions(+), 12 deletions(-)
--
2.47.0
2
6

[PATCH 0/4] hw/s390x: Alias @dump-skeys -> @dump-s390-skey and deprecate
by Philippe Mathieu-Daudé 10 Mar '25
by Philippe Mathieu-Daudé 10 Mar '25
10 Mar '25
We are trying to unify all qemu-system-FOO to a single binary.
In order to do that we need to remove QAPI target specific code.
@dump-skeys is only available on qemu-system-s390x. This series
rename it as @dump-s390-skey, making it available on other
binaries. We take care of backward compatibility via deprecation.
Philippe Mathieu-Daudé (4):
hw/s390x: Introduce the @dump-s390-skeys QMP command
hw/s390x: Introduce the 'dump_s390_skeys' HMP command
hw/s390x: Deprecate the HMP 'dump_skeys' command
hw/s390x: Deprecate the QMP @dump-skeys command
docs/about/deprecated.rst | 5 +++++
qapi/misc-target.json | 5 +++++
qapi/misc.json | 18 ++++++++++++++++++
include/monitor/hmp.h | 1 +
hw/s390x/s390-skeys-stub.c | 24 ++++++++++++++++++++++++
hw/s390x/s390-skeys.c | 19 +++++++++++++++++--
hmp-commands.hx | 17 +++++++++++++++--
hw/s390x/meson.build | 5 +++++
8 files changed, 90 insertions(+), 4 deletions(-)
create mode 100644 hw/s390x/s390-skeys-stub.c
--
2.41.0
7
24

[PATCH 00/16] qemu: Bump minimum qemu to qemu-6.2.0 and clean up capabilities
by Peter Krempa 10 Mar '25
by Peter Krempa 10 Mar '25
10 Mar '25
Summary:
This series was originally just meant to clean up non-release
capabilities but it grew since we dropped debian-11 and Michal asked me
to add dev-version for amdsev variant.
Some of the long patches were truncated, fetch the proper patches at
git fetch https://gitlab.com/pipo.sk/libvirt.git qemu_caps
Note that this series also drops caps dumps which were not updated from
the development version after final version was released. This includes:
- caps_6.2.0_aarch64
- caps_7.0.0_aarch64
- caps_8.0.0_riscv64
If anyone cares enough I'll accept a replacement patch updating the caps
but as outlined in the commit message I don't think we need to do
archaeology for these as we have newer versions.
I also pinged the original author of caps_9.2.0_s390x who promised to
update the caps.
This series also contains current git caps for the 'amdsev' variant per
Michal's request.
Peter Krempa (16):
conf: Drop support for 'sheepdog' disks
qemuxmlconftest: Drop tests pinned to qemu-5.2
qemuxmlconftest: Drop tests pinned to qemu-6.0
qemuxmlconftest: Drop tests pinned to qemu-6.1
qemucapabilitiestest: Drop qemu-5.2 data
qemucapabilitiestest: Drop qemu-6.0 data
qemucapabilitiestest: Drop qemu-6.1 data
qemucapabilitiestest: Add 'qemu_9.2.0.aarch64+hvf' test data
qemucapabilitiestest: Drop unused fake data 'caps_7.0.0_aarch64+hvf'
qemucapabilitiesdata: Drop un-updated 'qemu_6.2.0_aarch64' data
qemucapabilitiesdata: Drop un-updated 'caps_7.0.0_aarch64' data
qemucapabilitiesdata: Drop un-updated 'qemu_8.0.0_riscv64' data
qemu: capabilities: Bump minimum qemu to qemu-6.2
qemu: block: Drop 'sheepdog' protocol support
qemucapabilitiestest: Update 'caps_10.0.0_x86_64' to
'v9.2.0-2369-g98c7362b1e'
qemucapabilitiestest: Add data for the qemu-10.0 dev cycle on x86_64
for the '+amdsev' variant
src/conf/domain_validate.c | 7 +
src/qemu/qemu_block.c | 44 +-
src/qemu/qemu_capabilities.c | 2 +-
....xml => qemu_10.0.0-q35.x86_64+amdsev.xml} | 870 +-
....xml => qemu_10.0.0-tcg.x86_64+amdsev.xml} | 1245 +-
...6_64.xml => qemu_10.0.0.x86_64+amdsev.xml} | 868 +-
.../qemu_5.2.0-tcg-virt.riscv64.xml | 163 -
.../domaincapsdata/qemu_5.2.0-tcg.x86_64.xml | 1643 -
.../qemu_5.2.0-virt.aarch64.xml | 221 -
.../qemu_5.2.0-virt.riscv64.xml | 166 -
tests/domaincapsdata/qemu_5.2.0.aarch64.xml | 221 -
tests/domaincapsdata/qemu_5.2.0.ppc64.xml | 187 -
tests/domaincapsdata/qemu_5.2.0.s390x.xml | 288 -
.../domaincapsdata/qemu_6.0.0-q35.x86_64.xml | 1047 -
.../domaincapsdata/qemu_6.0.0-tcg.x86_64.xml | 1744 -
.../qemu_6.0.0-virt.aarch64.xml | 227 -
tests/domaincapsdata/qemu_6.0.0.aarch64.xml | 227 -
tests/domaincapsdata/qemu_6.0.0.s390x.xml | 293 -
tests/domaincapsdata/qemu_6.0.0.x86_64.xml | 1047 -
.../domaincapsdata/qemu_6.1.0-q35.x86_64.xml | 1139 -
tests/domaincapsdata/qemu_6.1.0.x86_64.xml | 1139 -
.../qemu_6.2.0-virt.aarch64.xml | 234 -
tests/domaincapsdata/qemu_6.2.0.aarch64.xml | 234 -
.../qemu_7.0.0-virt.aarch64.xml | 233 -
tests/domaincapsdata/qemu_7.0.0.aarch64.xml | 233 -
.../qemu_8.0.0-tcg-virt.riscv64.xml | 174 -
.../qemu_8.0.0-virt.riscv64.xml | 177 -
...hvf.xml => qemu_9.2.0-hvf.aarch64+hvf.xml} | 26 +-
...lies => caps_10.0.0_x86_64+amdsev.replies} | 26336 +++++++++----
...6_64.xml => caps_10.0.0_x86_64+amdsev.xml} | 2994 +-
.../caps_10.0.0_x86_64.replies | 388 +-
.../caps_10.0.0_x86_64.xml | 70 +-
.../caps_5.2.0_aarch64.replies | 24859 ------------
.../caps_5.2.0_aarch64.xml | 428 -
.../caps_5.2.0_ppc64.replies | 28246 -------------
.../qemucapabilitiesdata/caps_5.2.0_ppc64.xml | 1081 -
.../caps_5.2.0_riscv64.replies | 20531 ----------
.../caps_5.2.0_riscv64.xml | 131 -
.../caps_5.2.0_s390x.replies | 25181 ------------
.../qemucapabilitiesdata/caps_5.2.0_s390x.xml | 3221 --
.../caps_5.2.0_x86_64.replies | 30637 ---------------
.../caps_5.2.0_x86_64.xml | 3113 --
.../caps_6.0.0_aarch64.replies | 26869 -------------
.../caps_6.0.0_aarch64.xml | 454 -
.../caps_6.0.0_s390x.replies | 26878 -------------
.../qemucapabilitiesdata/caps_6.0.0_s390x.xml | 3235 --
.../caps_6.0.0_x86_64.replies | 32715 ----------------
.../caps_6.0.0_x86_64.xml | 3261 --
.../caps_6.2.0_aarch64.replies | 28023 -------------
.../caps_6.2.0_aarch64.xml | 485 -
.../caps_7.0.0_aarch64.replies | 31776 ---------------
.../caps_7.0.0_aarch64.xml | 501 -
.../caps_8.0.0_riscv64.replies | 27913 -------------
.../caps_8.0.0_riscv64.xml | 157 -
...replies => caps_9.2.0_aarch64+hvf.replies} | 27603 +++++++------
...h64+hvf.xml => caps_9.2.0_aarch64+hvf.xml} | 647 +-
tests/qemusecuritytest.c | 1 -
.../cpu-fallback.x86_64-5.2.0.args | 34 -
.../cpu-fallback.x86_64-5.2.0.xml | 40 -
...-host-model-fallback-kvm.x86_64-5.2.0.args | 34 -
...u-host-model-fallback-kvm.x86_64-5.2.0.xml | 29 -
...-host-model-fallback-kvm.x86_64-6.0.0.args | 34 -
...u-host-model-fallback-kvm.x86_64-6.0.0.xml | 29 -
...-host-model-fallback-kvm.x86_64-6.1.0.args | 34 -
...u-host-model-fallback-kvm.x86_64-6.1.0.xml | 29 -
...-host-model-fallback-tcg.x86_64-5.2.0.args | 34 -
...u-host-model-fallback-tcg.x86_64-5.2.0.xml | 29 -
...-host-model-fallback-tcg.x86_64-6.0.0.args | 34 -
...u-host-model-fallback-tcg.x86_64-6.0.0.xml | 29 -
...-host-model-fallback-tcg.x86_64-6.1.0.args | 34 -
...u-host-model-fallback-tcg.x86_64-6.1.0.xml | 29 -
.../cpu-host-model-kvm.x86_64-5.2.0.args | 39 -
.../cpu-host-model-kvm.x86_64-5.2.0.xml | 48 -
.../cpu-host-model-kvm.x86_64-6.0.0.args | 39 -
.../cpu-host-model-kvm.x86_64-6.0.0.xml | 48 -
.../cpu-host-model-kvm.x86_64-6.1.0.args | 39 -
.../cpu-host-model-kvm.x86_64-6.1.0.xml | 48 -
...ost-model-nofallback-kvm.x86_64-5.2.0.args | 34 -
...host-model-nofallback-kvm.x86_64-5.2.0.xml | 29 -
...ost-model-nofallback-kvm.x86_64-6.0.0.args | 34 -
...host-model-nofallback-kvm.x86_64-6.0.0.xml | 29 -
...ost-model-nofallback-kvm.x86_64-6.1.0.args | 34 -
...host-model-nofallback-kvm.x86_64-6.1.0.xml | 29 -
...ost-model-nofallback-tcg.x86_64-5.2.0.args | 34 -
...host-model-nofallback-tcg.x86_64-5.2.0.xml | 29 -
...ost-model-nofallback-tcg.x86_64-6.0.0.args | 34 -
...host-model-nofallback-tcg.x86_64-6.0.0.xml | 29 -
...ost-model-nofallback-tcg.x86_64-6.1.0.args | 34 -
...host-model-nofallback-tcg.x86_64-6.1.0.xml | 29 -
.../cpu-host-model-tcg.x86_64-5.2.0.args | 39 -
.../cpu-host-model-tcg.x86_64-5.2.0.xml | 48 -
.../cpu-host-model-tcg.x86_64-6.0.0.args | 39 -
.../cpu-host-model-tcg.x86_64-6.0.0.xml | 48 -
.../cpu-host-model-tcg.x86_64-6.1.0.args | 39 -
.../cpu-host-model-tcg.x86_64-6.1.0.xml | 48 -
.../cpu-nofallback.x86_64-5.2.0.err | 1 -
.../cpu-nofallback.x86_64-5.2.0.xml | 40 -
...sk-network-rbd-encryption.x86_64-6.0.0.err | 1 -
.../disk-network-sheepdog.x86_64-6.0.0.args | 39 -
.../disk-network-sheepdog.x86_64-6.0.0.xml | 46 -
.../disk-network-sheepdog.x86_64-latest.err | 1 +
...disk-network-tlsx509-nbd.x86_64-5.2.0.args | 38 -
.../disk-network-tlsx509-nbd.x86_64-5.2.0.xml | 37 -
...virtio-scsi-reservations.x86_64-5.2.0.args | 43 -
...-virtio-scsi-reservations.x86_64-5.2.0.xml | 53 -
.../graphics-vnc-tls-secret.x86_64-5.2.0.args | 37 -
.../graphics-vnc-tls-secret.x86_64-5.2.0.xml | 39 -
...ch64-virt-headless.aarch64-latest+hvf.args | 8 +-
.../hyperv-passthrough.x86_64-6.1.0.args | 32 -
.../hyperv-passthrough.x86_64-6.1.0.xml | 34 -
...othreads-virtio-scsi-pci.x86_64-5.2.0.args | 42 -
...iothreads-virtio-scsi-pci.x86_64-5.2.0.xml | 49 -
...ev-missing-platform-info.x86_64-6.0.0.args | 37 -
...sev-missing-platform-info.x86_64-6.0.0.xml | 43 -
.../launch-security-sev.x86_64-6.0.0.args | 37 -
.../launch-security-sev.x86_64-6.0.0.xml | 45 -
.../luks-disks-source-qcow2.x86_64-5.2.0.args | 62 -
.../luks-disks-source-qcow2.x86_64-5.2.0.xml | 107 -
...ory-hotplug-nvdimm-align.x86_64-5.2.0.args | 40 -
...mory-hotplug-nvdimm-align.x86_64-5.2.0.xml | 60 -
...ory-hotplug-nvdimm-label.x86_64-5.2.0.args | 40 -
...mory-hotplug-nvdimm-label.x86_64-5.2.0.xml | 62 -
...mory-hotplug-nvdimm-pmem.x86_64-5.2.0.args | 40 -
...emory-hotplug-nvdimm-pmem.x86_64-5.2.0.xml | 60 -
...-hotplug-nvdimm-readonly.x86_64-5.2.0.args | 40 -
...y-hotplug-nvdimm-readonly.x86_64-5.2.0.xml | 60 -
...mory-hotplug-virtio-pmem.x86_64-5.2.0.args | 40 -
...emory-hotplug-virtio-pmem.x86_64-5.2.0.xml | 55 -
.../misc-no-reboot.x86_64-5.2.0.args | 36 -
.../misc-no-reboot.x86_64-5.2.0.xml | 38 -
.../numatune-memnode.x86_64-5.2.0.args | 39 -
.../numatune-memnode.x86_64-5.2.0.xml | 41 -
...0-async-teardown-disabled.s390x-6.0.0.args | 35 -
...90-async-teardown-disabled.s390x-6.0.0.xml | 36 -
.../s390-async-teardown.s390x-6.0.0.err | 1 -
.../virtio-iommu-x86_64.x86_64-6.1.0.err | 1 -
.../virtio-rng-builtin.x86_64-5.2.0.args | 36 -
.../virtio-rng-builtin.x86_64-5.2.0.xml | 35 -
.../virtio-rng-egd-unix.x86_64-5.2.0.args | 37 -
.../virtio-rng-egd-unix.x86_64-5.2.0.xml | 37 -
tests/qemuxmlconftest.c | 47 +-
141 files changed, 37729 insertions(+), 357243 deletions(-)
rename tests/domaincapsdata/{qemu_5.2.0-q35.x86_64.xml => qemu_10.0.0-q35.x86_64+amdsev.xml} (51%)
rename tests/domaincapsdata/{qemu_6.1.0-tcg.x86_64.xml => qemu_10.0.0-tcg.x86_64+amdsev.xml} (67%)
rename tests/domaincapsdata/{qemu_5.2.0.x86_64.xml => qemu_10.0.0.x86_64+amdsev.xml} (51%)
delete mode 100644 tests/domaincapsdata/qemu_5.2.0-tcg-virt.riscv64.xml
delete mode 100644 tests/domaincapsdata/qemu_5.2.0-tcg.x86_64.xml
delete mode 100644 tests/domaincapsdata/qemu_5.2.0-virt.aarch64.xml
delete mode 100644 tests/domaincapsdata/qemu_5.2.0-virt.riscv64.xml
delete mode 100644 tests/domaincapsdata/qemu_5.2.0.aarch64.xml
delete mode 100644 tests/domaincapsdata/qemu_5.2.0.ppc64.xml
delete mode 100644 tests/domaincapsdata/qemu_5.2.0.s390x.xml
delete mode 100644 tests/domaincapsdata/qemu_6.0.0-q35.x86_64.xml
delete mode 100644 tests/domaincapsdata/qemu_6.0.0-tcg.x86_64.xml
delete mode 100644 tests/domaincapsdata/qemu_6.0.0-virt.aarch64.xml
delete mode 100644 tests/domaincapsdata/qemu_6.0.0.aarch64.xml
delete mode 100644 tests/domaincapsdata/qemu_6.0.0.s390x.xml
delete mode 100644 tests/domaincapsdata/qemu_6.0.0.x86_64.xml
delete mode 100644 tests/domaincapsdata/qemu_6.1.0-q35.x86_64.xml
delete mode 100644 tests/domaincapsdata/qemu_6.1.0.x86_64.xml
delete mode 100644 tests/domaincapsdata/qemu_6.2.0-virt.aarch64.xml
delete mode 100644 tests/domaincapsdata/qemu_6.2.0.aarch64.xml
delete mode 100644 tests/domaincapsdata/qemu_7.0.0-virt.aarch64.xml
delete mode 100644 tests/domaincapsdata/qemu_7.0.0.aarch64.xml
delete mode 100644 tests/domaincapsdata/qemu_8.0.0-tcg-virt.riscv64.xml
delete mode 100644 tests/domaincapsdata/qemu_8.0.0-virt.riscv64.xml
rename tests/domaincapsdata/{qemu_7.0.0-hvf.aarch64+hvf.xml => qemu_9.2.0-hvf.aarch64+hvf.xml} (91%)
rename tests/qemucapabilitiesdata/{caps_6.1.0_x86_64.replies => caps_10.0.0_x86_64+amdsev.replies} (68%)
rename tests/qemucapabilitiesdata/{caps_6.1.0_x86_64.xml => caps_10.0.0_x86_64+amdsev.xml} (63%)
delete mode 100644 tests/qemucapabilitiesdata/caps_5.2.0_aarch64.replies
delete mode 100644 tests/qemucapabilitiesdata/caps_5.2.0_aarch64.xml
delete mode 100644 tests/qemucapabilitiesdata/caps_5.2.0_ppc64.replies
delete mode 100644 tests/qemucapabilitiesdata/caps_5.2.0_ppc64.xml
delete mode 100644 tests/qemucapabilitiesdata/caps_5.2.0_riscv64.replies
delete mode 100644 tests/qemucapabilitiesdata/caps_5.2.0_riscv64.xml
delete mode 100644 tests/qemucapabilitiesdata/caps_5.2.0_s390x.replies
delete mode 100644 tests/qemucapabilitiesdata/caps_5.2.0_s390x.xml
delete mode 100644 tests/qemucapabilitiesdata/caps_5.2.0_x86_64.replies
delete mode 100644 tests/qemucapabilitiesdata/caps_5.2.0_x86_64.xml
delete mode 100644 tests/qemucapabilitiesdata/caps_6.0.0_aarch64.replies
delete mode 100644 tests/qemucapabilitiesdata/caps_6.0.0_aarch64.xml
delete mode 100644 tests/qemucapabilitiesdata/caps_6.0.0_s390x.replies
delete mode 100644 tests/qemucapabilitiesdata/caps_6.0.0_s390x.xml
delete mode 100644 tests/qemucapabilitiesdata/caps_6.0.0_x86_64.replies
delete mode 100644 tests/qemucapabilitiesdata/caps_6.0.0_x86_64.xml
delete mode 100644 tests/qemucapabilitiesdata/caps_6.2.0_aarch64.replies
delete mode 100644 tests/qemucapabilitiesdata/caps_6.2.0_aarch64.xml
delete mode 100644 tests/qemucapabilitiesdata/caps_7.0.0_aarch64.replies
delete mode 100644 tests/qemucapabilitiesdata/caps_7.0.0_aarch64.xml
delete mode 100644 tests/qemucapabilitiesdata/caps_8.0.0_riscv64.replies
delete mode 100644 tests/qemucapabilitiesdata/caps_8.0.0_riscv64.xml
rename tests/qemucapabilitiesdata/{caps_7.0.0_aarch64+hvf.replies => caps_9.2.0_aarch64+hvf.replies} (82%)
rename tests/qemucapabilitiesdata/{caps_7.0.0_aarch64+hvf.xml => caps_9.2.0_aarch64+hvf.xml} (58%)
delete mode 100644 tests/qemuxmlconfdata/cpu-fallback.x86_64-5.2.0.args
delete mode 100644 tests/qemuxmlconfdata/cpu-fallback.x86_64-5.2.0.xml
delete mode 100644 tests/qemuxmlconfdata/cpu-host-model-fallback-kvm.x86_64-5.2.0.args
delete mode 100644 tests/qemuxmlconfdata/cpu-host-model-fallback-kvm.x86_64-5.2.0.xml
delete mode 100644 tests/qemuxmlconfdata/cpu-host-model-fallback-kvm.x86_64-6.0.0.args
delete mode 100644 tests/qemuxmlconfdata/cpu-host-model-fallback-kvm.x86_64-6.0.0.xml
delete mode 100644 tests/qemuxmlconfdata/cpu-host-model-fallback-kvm.x86_64-6.1.0.args
delete mode 100644 tests/qemuxmlconfdata/cpu-host-model-fallback-kvm.x86_64-6.1.0.xml
delete mode 100644 tests/qemuxmlconfdata/cpu-host-model-fallback-tcg.x86_64-5.2.0.args
delete mode 100644 tests/qemuxmlconfdata/cpu-host-model-fallback-tcg.x86_64-5.2.0.xml
delete mode 100644 tests/qemuxmlconfdata/cpu-host-model-fallback-tcg.x86_64-6.0.0.args
delete mode 100644 tests/qemuxmlconfdata/cpu-host-model-fallback-tcg.x86_64-6.0.0.xml
delete mode 100644 tests/qemuxmlconfdata/cpu-host-model-fallback-tcg.x86_64-6.1.0.args
delete mode 100644 tests/qemuxmlconfdata/cpu-host-model-fallback-tcg.x86_64-6.1.0.xml
delete mode 100644 tests/qemuxmlconfdata/cpu-host-model-kvm.x86_64-5.2.0.args
delete mode 100644 tests/qemuxmlconfdata/cpu-host-model-kvm.x86_64-5.2.0.xml
delete mode 100644 tests/qemuxmlconfdata/cpu-host-model-kvm.x86_64-6.0.0.args
delete mode 100644 tests/qemuxmlconfdata/cpu-host-model-kvm.x86_64-6.0.0.xml
delete mode 100644 tests/qemuxmlconfdata/cpu-host-model-kvm.x86_64-6.1.0.args
delete mode 100644 tests/qemuxmlconfdata/cpu-host-model-kvm.x86_64-6.1.0.xml
delete mode 100644 tests/qemuxmlconfdata/cpu-host-model-nofallback-kvm.x86_64-5.2.0.args
delete mode 100644 tests/qemuxmlconfdata/cpu-host-model-nofallback-kvm.x86_64-5.2.0.xml
delete mode 100644 tests/qemuxmlconfdata/cpu-host-model-nofallback-kvm.x86_64-6.0.0.args
delete mode 100644 tests/qemuxmlconfdata/cpu-host-model-nofallback-kvm.x86_64-6.0.0.xml
delete mode 100644 tests/qemuxmlconfdata/cpu-host-model-nofallback-kvm.x86_64-6.1.0.args
delete mode 100644 tests/qemuxmlconfdata/cpu-host-model-nofallback-kvm.x86_64-6.1.0.xml
delete mode 100644 tests/qemuxmlconfdata/cpu-host-model-nofallback-tcg.x86_64-5.2.0.args
delete mode 100644 tests/qemuxmlconfdata/cpu-host-model-nofallback-tcg.x86_64-5.2.0.xml
delete mode 100644 tests/qemuxmlconfdata/cpu-host-model-nofallback-tcg.x86_64-6.0.0.args
delete mode 100644 tests/qemuxmlconfdata/cpu-host-model-nofallback-tcg.x86_64-6.0.0.xml
delete mode 100644 tests/qemuxmlconfdata/cpu-host-model-nofallback-tcg.x86_64-6.1.0.args
delete mode 100644 tests/qemuxmlconfdata/cpu-host-model-nofallback-tcg.x86_64-6.1.0.xml
delete mode 100644 tests/qemuxmlconfdata/cpu-host-model-tcg.x86_64-5.2.0.args
delete mode 100644 tests/qemuxmlconfdata/cpu-host-model-tcg.x86_64-5.2.0.xml
delete mode 100644 tests/qemuxmlconfdata/cpu-host-model-tcg.x86_64-6.0.0.args
delete mode 100644 tests/qemuxmlconfdata/cpu-host-model-tcg.x86_64-6.0.0.xml
delete mode 100644 tests/qemuxmlconfdata/cpu-host-model-tcg.x86_64-6.1.0.args
delete mode 100644 tests/qemuxmlconfdata/cpu-host-model-tcg.x86_64-6.1.0.xml
delete mode 100644 tests/qemuxmlconfdata/cpu-nofallback.x86_64-5.2.0.err
delete mode 100644 tests/qemuxmlconfdata/cpu-nofallback.x86_64-5.2.0.xml
delete mode 100644 tests/qemuxmlconfdata/disk-network-rbd-encryption.x86_64-6.0.0.err
delete mode 100644 tests/qemuxmlconfdata/disk-network-sheepdog.x86_64-6.0.0.args
delete mode 100644 tests/qemuxmlconfdata/disk-network-sheepdog.x86_64-6.0.0.xml
create mode 100644 tests/qemuxmlconfdata/disk-network-sheepdog.x86_64-latest.err
delete mode 100644 tests/qemuxmlconfdata/disk-network-tlsx509-nbd.x86_64-5.2.0.args
delete mode 100644 tests/qemuxmlconfdata/disk-network-tlsx509-nbd.x86_64-5.2.0.xml
delete mode 100644 tests/qemuxmlconfdata/disk-virtio-scsi-reservations.x86_64-5.2.0.args
delete mode 100644 tests/qemuxmlconfdata/disk-virtio-scsi-reservations.x86_64-5.2.0.xml
delete mode 100644 tests/qemuxmlconfdata/graphics-vnc-tls-secret.x86_64-5.2.0.args
delete mode 100644 tests/qemuxmlconfdata/graphics-vnc-tls-secret.x86_64-5.2.0.xml
delete mode 100644 tests/qemuxmlconfdata/hyperv-passthrough.x86_64-6.1.0.args
delete mode 100644 tests/qemuxmlconfdata/hyperv-passthrough.x86_64-6.1.0.xml
delete mode 100644 tests/qemuxmlconfdata/iothreads-virtio-scsi-pci.x86_64-5.2.0.args
delete mode 100644 tests/qemuxmlconfdata/iothreads-virtio-scsi-pci.x86_64-5.2.0.xml
delete mode 100644 tests/qemuxmlconfdata/launch-security-sev-missing-platform-info.x86_64-6.0.0.args
delete mode 100644 tests/qemuxmlconfdata/launch-security-sev-missing-platform-info.x86_64-6.0.0.xml
delete mode 100644 tests/qemuxmlconfdata/launch-security-sev.x86_64-6.0.0.args
delete mode 100644 tests/qemuxmlconfdata/launch-security-sev.x86_64-6.0.0.xml
delete mode 100644 tests/qemuxmlconfdata/luks-disks-source-qcow2.x86_64-5.2.0.args
delete mode 100644 tests/qemuxmlconfdata/luks-disks-source-qcow2.x86_64-5.2.0.xml
delete mode 100644 tests/qemuxmlconfdata/memory-hotplug-nvdimm-align.x86_64-5.2.0.args
delete mode 100644 tests/qemuxmlconfdata/memory-hotplug-nvdimm-align.x86_64-5.2.0.xml
delete mode 100644 tests/qemuxmlconfdata/memory-hotplug-nvdimm-label.x86_64-5.2.0.args
delete mode 100644 tests/qemuxmlconfdata/memory-hotplug-nvdimm-label.x86_64-5.2.0.xml
delete mode 100644 tests/qemuxmlconfdata/memory-hotplug-nvdimm-pmem.x86_64-5.2.0.args
delete mode 100644 tests/qemuxmlconfdata/memory-hotplug-nvdimm-pmem.x86_64-5.2.0.xml
delete mode 100644 tests/qemuxmlconfdata/memory-hotplug-nvdimm-readonly.x86_64-5.2.0.args
delete mode 100644 tests/qemuxmlconfdata/memory-hotplug-nvdimm-readonly.x86_64-5.2.0.xml
delete mode 100644 tests/qemuxmlconfdata/memory-hotplug-virtio-pmem.x86_64-5.2.0.args
delete mode 100644 tests/qemuxmlconfdata/memory-hotplug-virtio-pmem.x86_64-5.2.0.xml
delete mode 100644 tests/qemuxmlconfdata/misc-no-reboot.x86_64-5.2.0.args
delete mode 100644 tests/qemuxmlconfdata/misc-no-reboot.x86_64-5.2.0.xml
delete mode 100644 tests/qemuxmlconfdata/numatune-memnode.x86_64-5.2.0.args
delete mode 100644 tests/qemuxmlconfdata/numatune-memnode.x86_64-5.2.0.xml
delete mode 100644 tests/qemuxmlconfdata/s390-async-teardown-disabled.s390x-6.0.0.args
delete mode 100644 tests/qemuxmlconfdata/s390-async-teardown-disabled.s390x-6.0.0.xml
delete mode 100644 tests/qemuxmlconfdata/s390-async-teardown.s390x-6.0.0.err
delete mode 100644 tests/qemuxmlconfdata/virtio-iommu-x86_64.x86_64-6.1.0.err
delete mode 100644 tests/qemuxmlconfdata/virtio-rng-builtin.x86_64-5.2.0.args
delete mode 100644 tests/qemuxmlconfdata/virtio-rng-builtin.x86_64-5.2.0.xml
delete mode 100644 tests/qemuxmlconfdata/virtio-rng-egd-unix.x86_64-5.2.0.args
delete mode 100644 tests/qemuxmlconfdata/virtio-rng-egd-unix.x86_64-5.2.0.xml
--
2.48.1
3
18
Hi,
i just playing around with the "new" backup API for switching from the old way and simply want
to do full backup's in push mode. If i do so,
virsh backup-begin <domain>
the backup-Image files are always created in the image directory
As the place on the fast nvme's, where the images are lying is very limited, i want to place the
backup-image files to be on another harddisk on an mounted dir whithout temporary save them
in the image directory.
To do so, an --targetdir option on backup-begin would be very useful.
best regards
Michael
2
1

[PATCH RESEND 0/6] Add support for configuring PCI high memory MMIO size
by Matthew R. Ochs 07 Mar '25
by Matthew R. Ochs 07 Mar '25
07 Mar '25
Resending this series since it appears my first attempt was not sent to
the list due to the "first post" manual moderation delay. =)
This patch series adds support for configuring the PCI high memory MMIO
window size for aarch64 virt machine types. This feature was recently merged
into the QEMU upstream master branch [1] and will be available in QEMU 10.0.
It allows users to configure the size of the high memory MMIO window above
4GB, which is particularly useful for systems with large amounts of PCI
memory requirements.
The feature is exposed through the domain XML as a new PCI feature:
<features>
<pci>
<highmem-mmio-size unit='G'>512</highmem-mmio-size>
</pci>
</features>
When enabled, this configures the size of the PCI high memory MMIO window
via QEMU's highmem-mmio-size machine property. The feature is only
available for aarch64 virt machine types and requires QEMU support.
This series depends on [2] and should be applied on top of those patches.
For your convenience, this series is also available on Github [3].
[1] https://github.com/qemu/qemu/commit/f10104aeae3a17f181d5bb37b7fd7dad7fe86cba
[2] https://lists.libvirt.org/archives/list/devel@lists.libvirt.org/thread/Z4NQ…
[3] git fetch https://github.com/nvmochs/libvirt.git pci_highmem_mmio_size
Signed-off-by: Matthew R. Ochs <mochs(a)nvidia.com>
Matthew R. Ochs (6):
domain: Add PCI configuration feature infrastructure
schema: Add PCI configuration feature schema
conf: Add PCI configuration XML parsing and formatting
qemu: Add capability for PCI high memory MMIO size
qemu: Add command line support for PCI high memory MMIO size
tests: Add tests for machine PCI features
src/conf/domain_conf.c | 103 ++++++++++++++++++
src/conf/domain_conf.h | 6 +
src/conf/schemas/domaincommon.rng | 9 ++
src/qemu/qemu_capabilities.c | 2 +
src/qemu/qemu_capabilities.h | 1 +
src/qemu/qemu_command.c | 6 +
src/qemu/qemu_validate.c | 15 +++
.../caps_10.0.0_aarch64.replies | 10 ++
.../caps_10.0.0_aarch64.xml | 1 +
...rch64-virt-machine-pci.aarch64-latest.args | 31 ++++++
...arch64-virt-machine-pci.aarch64-latest.xml | 30 +++++
.../aarch64-virt-machine-pci.xml | 20 ++++
tests/qemuxmlconftest.c | 2 +
13 files changed, 236 insertions(+)
create mode 100644 tests/qemuxmlconfdata/aarch64-virt-machine-pci.aarch64-latest.args
create mode 100644 tests/qemuxmlconfdata/aarch64-virt-machine-pci.aarch64-latest.xml
create mode 100644 tests/qemuxmlconfdata/aarch64-virt-machine-pci.xml
--
2.46.0
1
6
virNetDevBridgeSetupVlans() calls virNetlinkBridgeVlanFilterSet(),
which requires libnl. Use the function only when libnl is available
to avoid breaking builds.
Signed-off-by: Akihiko Odaki <akihiko.odaki(a)daynix.com>
---
src/util/virnetdevbridge.c | 122 ++++++++++++++++++++++-----------------------
1 file changed, 61 insertions(+), 61 deletions(-)
diff --git a/src/util/virnetdevbridge.c b/src/util/virnetdevbridge.c
index c79d0c79b7b16a0a070b5013ed7df9d0a63b1c38..70e82a0029634ddf44c2b933577bf783c89f035c 100644
--- a/src/util/virnetdevbridge.c
+++ b/src/util/virnetdevbridge.c
@@ -313,66 +313,6 @@ virNetDevBridgePortSetIsolated(const char *brname,
return virNetDevBridgePortSet(brname, ifname, "isolated", enable ? 1 : 0);
}
-static int
-virNetDevBridgeSetupVlans(const char *ifname, const virNetDevVlan *virtVlan)
-{
- int error = 0;
- unsigned short flags;
-
- if (!virtVlan || !virtVlan->nTags)
- return 0;
-
- // The interface will have been automatically added to vlan 1, so remove it
- if (virNetlinkBridgeVlanFilterSet(ifname, RTM_DELLINK, 0, 1, &error) < 0) {
- if (error != 0) {
- virReportSystemError(-error,
- _("error removing vlan filter from interface %1$s"),
- ifname);
- }
- return -1;
- }
-
- // If trunk mode, add the native VLAN then add the others, if any
- if (virtVlan->trunk) {
- size_t i;
-
- if (virtVlan->nativeTag) {
- flags = BRIDGE_VLAN_INFO_PVID;
- if (virtVlan->nativeMode == VIR_NATIVE_VLAN_MODE_UNTAGGED ||
- virtVlan->nativeMode == VIR_NATIVE_VLAN_MODE_DEFAULT) {
- flags |= BRIDGE_VLAN_INFO_UNTAGGED;
- }
-
- if (virNetlinkBridgeVlanFilterSet(ifname, RTM_SETLINK, flags,
- virtVlan->nativeTag, &error) < 0) {
- goto error;
- }
- }
-
- for (i = 0; i < virtVlan->nTags; i++) {
- if (virtVlan->tag[i] != virtVlan->nativeTag)
- if (virNetlinkBridgeVlanFilterSet(ifname, RTM_SETLINK, 0,
- virtVlan->tag[i], &error) < 0) {
- goto error;
- }
- }
- } else {
- // In native mode, add the single VLAN as pvid untagged
- flags = BRIDGE_VLAN_INFO_PVID | BRIDGE_VLAN_INFO_UNTAGGED;
- if (virNetlinkBridgeVlanFilterSet(ifname, RTM_SETLINK, flags,
- virtVlan->tag[0], &error) < 0) {
- goto error;
- }
- }
-
- return 0;
-
- error:
- if (error != 0)
- virReportSystemError(-error, _("error adding vlan filter to interface %1$s"), ifname);
- return -1;
-}
-
#else
int
@@ -651,7 +591,67 @@ int virNetDevBridgeDelete(const char *brname G_GNUC_UNUSED)
*
* Returns 0 in case of success or an errno code in case of failure.
*/
-#if defined(WITH_STRUCT_IFREQ) && defined(SIOCBRADDIF)
+#if defined(WITH_STRUCT_IFREQ) && defined(SIOCBRADDIF) && defined(WITH_LIBNL)
+static int
+virNetDevBridgeSetupVlans(const char *ifname, const virNetDevVlan *virtVlan)
+{
+ int error = 0;
+ unsigned short flags;
+
+ if (!virtVlan || !virtVlan->nTags)
+ return 0;
+
+ // The interface will have been automatically added to vlan 1, so remove it
+ if (virNetlinkBridgeVlanFilterSet(ifname, RTM_DELLINK, 0, 1, &error) < 0) {
+ if (error != 0) {
+ virReportSystemError(-error,
+ _("error removing vlan filter from interface %1$s"),
+ ifname);
+ }
+ return -1;
+ }
+
+ // If trunk mode, add the native VLAN then add the others, if any
+ if (virtVlan->trunk) {
+ size_t i;
+
+ if (virtVlan->nativeTag) {
+ flags = BRIDGE_VLAN_INFO_PVID;
+ if (virtVlan->nativeMode == VIR_NATIVE_VLAN_MODE_UNTAGGED ||
+ virtVlan->nativeMode == VIR_NATIVE_VLAN_MODE_DEFAULT) {
+ flags |= BRIDGE_VLAN_INFO_UNTAGGED;
+ }
+
+ if (virNetlinkBridgeVlanFilterSet(ifname, RTM_SETLINK, flags,
+ virtVlan->nativeTag, &error) < 0) {
+ goto error;
+ }
+ }
+
+ for (i = 0; i < virtVlan->nTags; i++) {
+ if (virtVlan->tag[i] != virtVlan->nativeTag)
+ if (virNetlinkBridgeVlanFilterSet(ifname, RTM_SETLINK, 0,
+ virtVlan->tag[i], &error) < 0) {
+ goto error;
+ }
+ }
+ } else {
+ // In native mode, add the single VLAN as pvid untagged
+ flags = BRIDGE_VLAN_INFO_PVID | BRIDGE_VLAN_INFO_UNTAGGED;
+ if (virNetlinkBridgeVlanFilterSet(ifname, RTM_SETLINK, flags,
+ virtVlan->tag[0], &error) < 0) {
+ goto error;
+ }
+ }
+
+ return 0;
+
+ error:
+ if (error != 0)
+ virReportSystemError(-error, _("error adding vlan filter to interface %1$s"), ifname);
+ return -1;
+}
+
int virNetDevBridgeAddPort(const char *brname,
const char *ifname,
const virNetDevVlan *virtVlan)
---
base-commit: e5299ddf86121d3c792ca271ffcb54900eb19dc3
change-id: 20250304-nl-605e05b8c5f2
Best regards,
--
Akihiko Odaki <akihiko.odaki(a)daynix.com>
2
3
= Overview =
This patch set introduces support for acpi-generic-initiator devices,
supported by QEMU [1].
The acpi-generic-initiator object is required to support Multi-Instance GPU
(MIG) configurations on NVIDIA GPUs [2]. MIG enables partitioning of GPU
resources into multiple isolated instances, each requiring a dedicated NUMA
node definition.
= Implementation =
This patch set implements the libvirt counterpart to the QEMU feature,
enabling users to configure acpi-generic-initiator objects within libvirt
domain XML.
This includes:
- adding XML syntax to define acpi-generic-initiator objects,
- adding a new qemu capability flag,
- resolving the acpi-generic-initiator definitions into the proper QEMU
command-line arguments,
- ensuring compatibility with existing NUMA configuration.
= Example =
- Domain XML:
```
...
<cpu mode='host-passthrough' check='none'>
<numa>
<cell id='0' cpus='0-15' memory='8388608' unit='KiB'/>
<cell id='1' memory='0' unit='KiB'/>
<cell id='2' memory='0' unit='KiB'/>
<cell id='3' memory='0' unit='KiB'/>
<cell id='4' memory='0' unit='KiB'/>
<cell id='5' memory='0' unit='KiB'/>
<cell id='6' memory='0' unit='KiB'/>
<cell id='7' memory='0' unit='KiB'/>
<cell id='8' memory='0' unit='KiB'/>
</numa>
</cpu>
...
<devices>
...
<acpi-generic-initiator>
<alias name="gi1" />
<pci-dev>hostdev0</pci-dev>
<numa-node>1</numa-node>
</acpi-generic-initiator>
<acpi-generic-initiator>
<alias name="gi2" />
<pci-dev>hostdev0</pci-dev>
<numa-node>2</numa-node>
</acpi-generic-initiator>
<acpi-generic-initiator>
<alias name="gi3" />
<pci-dev>hostdev0</pci-dev>
<numa-node>3</numa-node>
</acpi-generic-initiator>
<acpi-generic-initiator>
<alias name="gi4" />
<pci-dev>hostdev0</pci-dev>
<numa-node>4</numa-node>
</acpi-generic-initiator>
<acpi-generic-initiator>
<alias name="gi5" />
<pci-dev>hostdev0</pci-dev>
<numa-node>5</numa-node>
</acpi-generic-initiator>
<acpi-generic-initiator>
<alias name="gi6" />
<pci-dev>hostdev0</pci-dev>
<numa-node>6</numa-node>
</acpi-generic-initiator>
<acpi-generic-initiator>
<alias name="gi7" />
<pci-dev>hostdev0</pci-dev>
<numa-node>7</numa-node>
</acpi-generic-initiator>
<acpi-generic-initiator>
<alias name="gi8" />
<pci-dev>hostdev0</pci-dev>
<numa-node>8</numa-node>
</acpi-generic-initiator>
</devices>
```
- Generated QEMU command line options:
```
... /usr/bin/qemu-system-aarch64 \
...
-object '{"qom-type":"memory-backend-ram","id":"ram-node0","size":8589934592}' \
-numa node,nodeid=0,cpus=0-15,memdev=ram-node0 \
-numa node,nodeid=1 \
-numa node,nodeid=2 \
-numa node,nodeid=3 \
-numa node,nodeid=4 \
-numa node,nodeid=5 \
-numa node,nodeid=6 \
-numa node,nodeid=7 \
-numa node,nodeid=8 \
...
-object '{"qom-type":"acpi-generic-initiator","id":"gi1","pci-dev":"hostdev0","node":1}' \
-object '{"qom-type":"acpi-generic-initiator","id":"gi2","pci-dev":"hostdev0","node":2}' \
-object '{"qom-type":"acpi-generic-initiator","id":"gi3","pci-dev":"hostdev0","node":3}' \
-object '{"qom-type":"acpi-generic-initiator","id":"gi4","pci-dev":"hostdev0","node":4}' \
-object '{"qom-type":"acpi-generic-initiator","id":"gi5","pci-dev":"hostdev0","node":5}' \
-object '{"qom-type":"acpi-generic-initiator","id":"gi6","pci-dev":"hostdev0","node":6}' \
-object '{"qom-type":"acpi-generic-initiator","id":"gi7","pci-dev":"hostdev0","node":7}' \
-object '{"qom-type":"acpi-generic-initiator","id":"gi8","pci-dev":"hostdev0","node":8}'
```
= References =
[1] https://lore.kernel.org/all/20231225045603.7654-2-ankita@nvidia.com/
[2] https://www.nvidia.com/en-in/technologies/multi-instance-gpu/
ChangeLog v1 -> v2:
- split parser and driver changes in separate patches
- introduce a new qemu capability flag
- introduce test in qemuxmlconftest
Andrea Righi (6):
schema: Introduce acpi-generic-initiator definition
conf: Introduce acpi-generic-initiator device
qemu: Allow to define NUMA nodes without memory or CPUs assigned
qemu: capabilies: Introduce QEMU_CAPS_ACPI_GENERIC_INITIATOR
qemu: support acpi-generic-initiator
qemu: Add test case for acpi-generic-initiator
src/ch/ch_domain.c | 1 +
src/conf/domain_conf.c | 153 +++++++++++++++++++++
src/conf/domain_conf.h | 14 ++
src/conf/domain_postparse.c | 1 +
src/conf/domain_validate.c | 40 ++++++
src/conf/numa_conf.c | 3 +
src/conf/schemas/domaincommon.rng | 19 +++
src/conf/virconftypes.h | 2 +
src/libxl/libxl_driver.c | 6 +
src/lxc/lxc_driver.c | 6 +
src/qemu/qemu_capabilities.c | 2 +
src/qemu/qemu_capabilities.h | 1 +
src/qemu/qemu_command.c | 48 +++++--
src/qemu/qemu_domain.c | 2 +
src/qemu/qemu_domain_address.c | 4 +
src/qemu/qemu_driver.c | 3 +
src/qemu/qemu_hotplug.c | 5 +
src/qemu/qemu_postparse.c | 1 +
src/qemu/qemu_validate.c | 1 +
src/test/test_driver.c | 4 +
tests/qemucapabilitiesdata/caps_10.0.0_x86_64.xml | 1 +
tests/qemucapabilitiesdata/caps_9.0.0_x86_64.xml | 1 +
tests/qemucapabilitiesdata/caps_9.1.0_riscv64.xml | 1 +
tests/qemucapabilitiesdata/caps_9.1.0_x86_64.xml | 1 +
tests/qemucapabilitiesdata/caps_9.2.0_x86_64.xml | 1 +
.../acpi-generic-initiator.x86_64-latest.args | 55 ++++++++
.../acpi-generic-initiator.x86_64-latest.xml | 102 ++++++++++++++
tests/qemuxmlconfdata/acpi-generic-initiator.xml | 102 ++++++++++++++
tests/qemuxmlconftest.c | 1 +
29 files changed, 573 insertions(+), 8 deletions(-)
create mode 100644 tests/qemuxmlconfdata/acpi-generic-initiator.x86_64-latest.args
create mode 100644 tests/qemuxmlconfdata/acpi-generic-initiator.x86_64-latest.xml
create mode 100644 tests/qemuxmlconfdata/acpi-generic-initiator.xml
2
10
- Remove EOL Debian 11
Signed-off-by: Pavel Hrdina <phrdina(a)redhat.com>
---
This depends on this MR [1] to update libvirt-ci as well.
[1] <https://gitlab.com/libvirt/libvirt-ci/-/merge_requests/527>
ci/buildenv/debian-11-cross-aarch64.sh | 117 ----------------
ci/buildenv/debian-11-cross-armv6l.sh | 116 ----------------
ci/buildenv/debian-11-cross-armv7l.sh | 117 ----------------
ci/buildenv/debian-11-cross-i686.sh | 116 ----------------
ci/buildenv/debian-11-cross-mips64el.sh | 116 ----------------
ci/buildenv/debian-11-cross-mipsel.sh | 116 ----------------
ci/buildenv/debian-11-cross-ppc64le.sh | 116 ----------------
ci/buildenv/debian-11-cross-s390x.sh | 116 ----------------
ci/buildenv/debian-11.sh | 100 --------------
.../debian-11-cross-aarch64.Dockerfile | 123 -----------------
.../debian-11-cross-armv6l.Dockerfile | 122 -----------------
.../debian-11-cross-armv7l.Dockerfile | 123 -----------------
ci/containers/debian-11-cross-i686.Dockerfile | 122 -----------------
.../debian-11-cross-mips64el.Dockerfile | 122 -----------------
.../debian-11-cross-mipsel.Dockerfile | 122 -----------------
.../debian-11-cross-ppc64le.Dockerfile | 122 -----------------
.../debian-11-cross-s390x.Dockerfile | 122 -----------------
ci/containers/debian-11.Dockerfile | 103 --------------
ci/gitlab/builds.yml | 128 ------------------
ci/gitlab/containers.yml | 72 ----------
ci/manifest.yml | 40 ------
21 files changed, 2351 deletions(-)
delete mode 100644 ci/buildenv/debian-11-cross-aarch64.sh
delete mode 100644 ci/buildenv/debian-11-cross-armv6l.sh
delete mode 100644 ci/buildenv/debian-11-cross-armv7l.sh
delete mode 100644 ci/buildenv/debian-11-cross-i686.sh
delete mode 100644 ci/buildenv/debian-11-cross-mips64el.sh
delete mode 100644 ci/buildenv/debian-11-cross-mipsel.sh
delete mode 100644 ci/buildenv/debian-11-cross-ppc64le.sh
delete mode 100644 ci/buildenv/debian-11-cross-s390x.sh
delete mode 100644 ci/buildenv/debian-11.sh
delete mode 100644 ci/containers/debian-11-cross-aarch64.Dockerfile
delete mode 100644 ci/containers/debian-11-cross-armv6l.Dockerfile
delete mode 100644 ci/containers/debian-11-cross-armv7l.Dockerfile
delete mode 100644 ci/containers/debian-11-cross-i686.Dockerfile
delete mode 100644 ci/containers/debian-11-cross-mips64el.Dockerfile
delete mode 100644 ci/containers/debian-11-cross-mipsel.Dockerfile
delete mode 100644 ci/containers/debian-11-cross-ppc64le.Dockerfile
delete mode 100644 ci/containers/debian-11-cross-s390x.Dockerfile
delete mode 100644 ci/containers/debian-11.Dockerfile
diff --git a/ci/buildenv/debian-11-cross-aarch64.sh b/ci/buildenv/debian-11-cross-aarch64.sh
deleted file mode 100644
index a52164a851..0000000000
--- a/ci/buildenv/debian-11-cross-aarch64.sh
+++ /dev/null
@@ -1,117 +0,0 @@
-# THIS FILE WAS AUTO-GENERATED
-#
-# $ lcitool manifest ci/manifest.yml
-#
-# https://gitlab.com/libvirt/libvirt-ci
-
-function install_buildenv() {
- export DEBIAN_FRONTEND=noninteractive
- apt-get update
- apt-get dist-upgrade -y
- apt-get install --no-install-recommends -y \
- augeas-lenses \
- augeas-tools \
- bash-completion \
- black \
- ca-certificates \
- ccache \
- codespell \
- cpp \
- diffutils \
- dwarves \
- ebtables \
- flake8 \
- gettext \
- git \
- grep \
- iproute2 \
- iptables \
- kmod \
- libclang-dev \
- libxml2-utils \
- locales \
- lvm2 \
- make \
- meson \
- nfs-common \
- ninja-build \
- numad \
- open-iscsi \
- perl-base \
- pkgconf \
- policykit-1 \
- python3 \
- python3-docutils \
- python3-pytest \
- qemu-utils \
- sed \
- xsltproc
- sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
- dpkg-reconfigure locales
- rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
- export DEBIAN_FRONTEND=noninteractive
- dpkg --add-architecture arm64
- apt-get update
- apt-get dist-upgrade -y
- apt-get install --no-install-recommends -y dpkg-dev
- apt-get install --no-install-recommends -y \
- gcc-aarch64-linux-gnu \
- libacl1-dev:arm64 \
- libapparmor-dev:arm64 \
- libattr1-dev:arm64 \
- libaudit-dev:arm64 \
- libblkid-dev:arm64 \
- libc6-dev:arm64 \
- libcap-ng-dev:arm64 \
- libcurl4-gnutls-dev:arm64 \
- libdevmapper-dev:arm64 \
- libfuse-dev:arm64 \
- libglib2.0-dev:arm64 \
- libglusterfs-dev:arm64 \
- libgnutls28-dev:arm64 \
- libiscsi-dev:arm64 \
- libjson-c-dev:arm64 \
- libnl-3-dev:arm64 \
- libnl-route-3-dev:arm64 \
- libnuma-dev:arm64 \
- libparted-dev:arm64 \
- libpcap0.8-dev:arm64 \
- libpciaccess-dev:arm64 \
- librbd-dev:arm64 \
- libreadline-dev:arm64 \
- libsanlock-dev:arm64 \
- libsasl2-dev:arm64 \
- libselinux1-dev:arm64 \
- libssh-dev:arm64 \
- libssh2-1-dev:arm64 \
- libtirpc-dev:arm64 \
- libudev-dev:arm64 \
- libxen-dev:arm64 \
- libxml2-dev:arm64 \
- systemtap-sdt-dev:arm64
- mkdir -p /usr/local/share/meson/cross
- printf "[binaries]\n\
-c = '/usr/bin/aarch64-linux-gnu-gcc'\n\
-ar = '/usr/bin/aarch64-linux-gnu-gcc-ar'\n\
-strip = '/usr/bin/aarch64-linux-gnu-strip'\n\
-pkgconfig = '/usr/bin/aarch64-linux-gnu-pkg-config'\n\
-\n\
-[host_machine]\n\
-system = 'linux'\n\
-cpu_family = 'aarch64'\n\
-cpu = 'aarch64'\n\
-endian = 'little'\n" > /usr/local/share/meson/cross/aarch64-linux-gnu
- dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
- mkdir -p /usr/libexec/ccache-wrappers
- ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/aarch64-linux-gnu-cc
- ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/aarch64-linux-gnu-gcc
-}
-
-export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
-export LANG="en_US.UTF-8"
-export MAKE="/usr/bin/make"
-export NINJA="/usr/bin/ninja"
-export PYTHON="/usr/bin/python3"
-
-export ABI="aarch64-linux-gnu"
-export MESON_OPTS="--cross-file=aarch64-linux-gnu"
diff --git a/ci/buildenv/debian-11-cross-armv6l.sh b/ci/buildenv/debian-11-cross-armv6l.sh
deleted file mode 100644
index caef8e80a4..0000000000
--- a/ci/buildenv/debian-11-cross-armv6l.sh
+++ /dev/null
@@ -1,116 +0,0 @@
-# THIS FILE WAS AUTO-GENERATED
-#
-# $ lcitool manifest ci/manifest.yml
-#
-# https://gitlab.com/libvirt/libvirt-ci
-
-function install_buildenv() {
- export DEBIAN_FRONTEND=noninteractive
- apt-get update
- apt-get dist-upgrade -y
- apt-get install --no-install-recommends -y \
- augeas-lenses \
- augeas-tools \
- bash-completion \
- black \
- ca-certificates \
- ccache \
- codespell \
- cpp \
- diffutils \
- dwarves \
- ebtables \
- flake8 \
- gettext \
- git \
- grep \
- iproute2 \
- iptables \
- kmod \
- libclang-dev \
- libxml2-utils \
- locales \
- lvm2 \
- make \
- meson \
- nfs-common \
- ninja-build \
- numad \
- open-iscsi \
- perl-base \
- pkgconf \
- policykit-1 \
- python3 \
- python3-docutils \
- python3-pytest \
- qemu-utils \
- sed \
- xsltproc
- sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
- dpkg-reconfigure locales
- rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
- export DEBIAN_FRONTEND=noninteractive
- dpkg --add-architecture armel
- apt-get update
- apt-get dist-upgrade -y
- apt-get install --no-install-recommends -y dpkg-dev
- apt-get install --no-install-recommends -y \
- gcc-arm-linux-gnueabi \
- libacl1-dev:armel \
- libapparmor-dev:armel \
- libattr1-dev:armel \
- libaudit-dev:armel \
- libblkid-dev:armel \
- libc6-dev:armel \
- libcap-ng-dev:armel \
- libcurl4-gnutls-dev:armel \
- libdevmapper-dev:armel \
- libfuse-dev:armel \
- libglib2.0-dev:armel \
- libglusterfs-dev:armel \
- libgnutls28-dev:armel \
- libiscsi-dev:armel \
- libjson-c-dev:armel \
- libnl-3-dev:armel \
- libnl-route-3-dev:armel \
- libnuma-dev:armel \
- libparted-dev:armel \
- libpcap0.8-dev:armel \
- libpciaccess-dev:armel \
- librbd-dev:armel \
- libreadline-dev:armel \
- libsanlock-dev:armel \
- libsasl2-dev:armel \
- libselinux1-dev:armel \
- libssh-dev:armel \
- libssh2-1-dev:armel \
- libtirpc-dev:armel \
- libudev-dev:armel \
- libxml2-dev:armel \
- systemtap-sdt-dev:armel
- mkdir -p /usr/local/share/meson/cross
- printf "[binaries]\n\
-c = '/usr/bin/arm-linux-gnueabi-gcc'\n\
-ar = '/usr/bin/arm-linux-gnueabi-gcc-ar'\n\
-strip = '/usr/bin/arm-linux-gnueabi-strip'\n\
-pkgconfig = '/usr/bin/arm-linux-gnueabi-pkg-config'\n\
-\n\
-[host_machine]\n\
-system = 'linux'\n\
-cpu_family = 'arm'\n\
-cpu = 'arm'\n\
-endian = 'little'\n" > /usr/local/share/meson/cross/arm-linux-gnueabi
- dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
- mkdir -p /usr/libexec/ccache-wrappers
- ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/arm-linux-gnueabi-cc
- ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/arm-linux-gnueabi-gcc
-}
-
-export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
-export LANG="en_US.UTF-8"
-export MAKE="/usr/bin/make"
-export NINJA="/usr/bin/ninja"
-export PYTHON="/usr/bin/python3"
-
-export ABI="arm-linux-gnueabi"
-export MESON_OPTS="--cross-file=arm-linux-gnueabi"
diff --git a/ci/buildenv/debian-11-cross-armv7l.sh b/ci/buildenv/debian-11-cross-armv7l.sh
deleted file mode 100644
index 81d92e6386..0000000000
--- a/ci/buildenv/debian-11-cross-armv7l.sh
+++ /dev/null
@@ -1,117 +0,0 @@
-# THIS FILE WAS AUTO-GENERATED
-#
-# $ lcitool manifest ci/manifest.yml
-#
-# https://gitlab.com/libvirt/libvirt-ci
-
-function install_buildenv() {
- export DEBIAN_FRONTEND=noninteractive
- apt-get update
- apt-get dist-upgrade -y
- apt-get install --no-install-recommends -y \
- augeas-lenses \
- augeas-tools \
- bash-completion \
- black \
- ca-certificates \
- ccache \
- codespell \
- cpp \
- diffutils \
- dwarves \
- ebtables \
- flake8 \
- gettext \
- git \
- grep \
- iproute2 \
- iptables \
- kmod \
- libclang-dev \
- libxml2-utils \
- locales \
- lvm2 \
- make \
- meson \
- nfs-common \
- ninja-build \
- numad \
- open-iscsi \
- perl-base \
- pkgconf \
- policykit-1 \
- python3 \
- python3-docutils \
- python3-pytest \
- qemu-utils \
- sed \
- xsltproc
- sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
- dpkg-reconfigure locales
- rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
- export DEBIAN_FRONTEND=noninteractive
- dpkg --add-architecture armhf
- apt-get update
- apt-get dist-upgrade -y
- apt-get install --no-install-recommends -y dpkg-dev
- apt-get install --no-install-recommends -y \
- gcc-arm-linux-gnueabihf \
- libacl1-dev:armhf \
- libapparmor-dev:armhf \
- libattr1-dev:armhf \
- libaudit-dev:armhf \
- libblkid-dev:armhf \
- libc6-dev:armhf \
- libcap-ng-dev:armhf \
- libcurl4-gnutls-dev:armhf \
- libdevmapper-dev:armhf \
- libfuse-dev:armhf \
- libglib2.0-dev:armhf \
- libglusterfs-dev:armhf \
- libgnutls28-dev:armhf \
- libiscsi-dev:armhf \
- libjson-c-dev:armhf \
- libnl-3-dev:armhf \
- libnl-route-3-dev:armhf \
- libnuma-dev:armhf \
- libparted-dev:armhf \
- libpcap0.8-dev:armhf \
- libpciaccess-dev:armhf \
- librbd-dev:armhf \
- libreadline-dev:armhf \
- libsanlock-dev:armhf \
- libsasl2-dev:armhf \
- libselinux1-dev:armhf \
- libssh-dev:armhf \
- libssh2-1-dev:armhf \
- libtirpc-dev:armhf \
- libudev-dev:armhf \
- libxen-dev:armhf \
- libxml2-dev:armhf \
- systemtap-sdt-dev:armhf
- mkdir -p /usr/local/share/meson/cross
- printf "[binaries]\n\
-c = '/usr/bin/arm-linux-gnueabihf-gcc'\n\
-ar = '/usr/bin/arm-linux-gnueabihf-gcc-ar'\n\
-strip = '/usr/bin/arm-linux-gnueabihf-strip'\n\
-pkgconfig = '/usr/bin/arm-linux-gnueabihf-pkg-config'\n\
-\n\
-[host_machine]\n\
-system = 'linux'\n\
-cpu_family = 'arm'\n\
-cpu = 'armhf'\n\
-endian = 'little'\n" > /usr/local/share/meson/cross/arm-linux-gnueabihf
- dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
- mkdir -p /usr/libexec/ccache-wrappers
- ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/arm-linux-gnueabihf-cc
- ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/arm-linux-gnueabihf-gcc
-}
-
-export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
-export LANG="en_US.UTF-8"
-export MAKE="/usr/bin/make"
-export NINJA="/usr/bin/ninja"
-export PYTHON="/usr/bin/python3"
-
-export ABI="arm-linux-gnueabihf"
-export MESON_OPTS="--cross-file=arm-linux-gnueabihf"
diff --git a/ci/buildenv/debian-11-cross-i686.sh b/ci/buildenv/debian-11-cross-i686.sh
deleted file mode 100644
index 7ab7242654..0000000000
--- a/ci/buildenv/debian-11-cross-i686.sh
+++ /dev/null
@@ -1,116 +0,0 @@
-# THIS FILE WAS AUTO-GENERATED
-#
-# $ lcitool manifest ci/manifest.yml
-#
-# https://gitlab.com/libvirt/libvirt-ci
-
-function install_buildenv() {
- export DEBIAN_FRONTEND=noninteractive
- apt-get update
- apt-get dist-upgrade -y
- apt-get install --no-install-recommends -y \
- augeas-lenses \
- augeas-tools \
- bash-completion \
- black \
- ca-certificates \
- ccache \
- codespell \
- cpp \
- diffutils \
- dwarves \
- ebtables \
- flake8 \
- gettext \
- git \
- grep \
- iproute2 \
- iptables \
- kmod \
- libclang-dev \
- libxml2-utils \
- locales \
- lvm2 \
- make \
- meson \
- nfs-common \
- ninja-build \
- numad \
- open-iscsi \
- perl-base \
- pkgconf \
- policykit-1 \
- python3 \
- python3-docutils \
- python3-pytest \
- qemu-utils \
- sed \
- xsltproc
- sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
- dpkg-reconfigure locales
- rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
- export DEBIAN_FRONTEND=noninteractive
- dpkg --add-architecture i386
- apt-get update
- apt-get dist-upgrade -y
- apt-get install --no-install-recommends -y dpkg-dev
- apt-get install --no-install-recommends -y \
- gcc-i686-linux-gnu \
- libacl1-dev:i386 \
- libapparmor-dev:i386 \
- libattr1-dev:i386 \
- libaudit-dev:i386 \
- libblkid-dev:i386 \
- libc6-dev:i386 \
- libcap-ng-dev:i386 \
- libcurl4-gnutls-dev:i386 \
- libdevmapper-dev:i386 \
- libfuse-dev:i386 \
- libglib2.0-dev:i386 \
- libglusterfs-dev:i386 \
- libgnutls28-dev:i386 \
- libiscsi-dev:i386 \
- libjson-c-dev:i386 \
- libnl-3-dev:i386 \
- libnl-route-3-dev:i386 \
- libnuma-dev:i386 \
- libparted-dev:i386 \
- libpcap0.8-dev:i386 \
- libpciaccess-dev:i386 \
- librbd-dev:i386 \
- libreadline-dev:i386 \
- libsanlock-dev:i386 \
- libsasl2-dev:i386 \
- libselinux1-dev:i386 \
- libssh-dev:i386 \
- libssh2-1-dev:i386 \
- libtirpc-dev:i386 \
- libudev-dev:i386 \
- libxml2-dev:i386 \
- systemtap-sdt-dev:i386
- mkdir -p /usr/local/share/meson/cross
- printf "[binaries]\n\
-c = '/usr/bin/i686-linux-gnu-gcc'\n\
-ar = '/usr/bin/i686-linux-gnu-gcc-ar'\n\
-strip = '/usr/bin/i686-linux-gnu-strip'\n\
-pkgconfig = '/usr/bin/i686-linux-gnu-pkg-config'\n\
-\n\
-[host_machine]\n\
-system = 'linux'\n\
-cpu_family = 'x86'\n\
-cpu = 'i686'\n\
-endian = 'little'\n" > /usr/local/share/meson/cross/i686-linux-gnu
- dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
- mkdir -p /usr/libexec/ccache-wrappers
- ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/i686-linux-gnu-cc
- ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/i686-linux-gnu-gcc
-}
-
-export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
-export LANG="en_US.UTF-8"
-export MAKE="/usr/bin/make"
-export NINJA="/usr/bin/ninja"
-export PYTHON="/usr/bin/python3"
-
-export ABI="i686-linux-gnu"
-export MESON_OPTS="--cross-file=i686-linux-gnu"
diff --git a/ci/buildenv/debian-11-cross-mips64el.sh b/ci/buildenv/debian-11-cross-mips64el.sh
deleted file mode 100644
index f983ab2981..0000000000
--- a/ci/buildenv/debian-11-cross-mips64el.sh
+++ /dev/null
@@ -1,116 +0,0 @@
-# THIS FILE WAS AUTO-GENERATED
-#
-# $ lcitool manifest ci/manifest.yml
-#
-# https://gitlab.com/libvirt/libvirt-ci
-
-function install_buildenv() {
- export DEBIAN_FRONTEND=noninteractive
- apt-get update
- apt-get dist-upgrade -y
- apt-get install --no-install-recommends -y \
- augeas-lenses \
- augeas-tools \
- bash-completion \
- black \
- ca-certificates \
- ccache \
- codespell \
- cpp \
- diffutils \
- dwarves \
- ebtables \
- flake8 \
- gettext \
- git \
- grep \
- iproute2 \
- iptables \
- kmod \
- libclang-dev \
- libxml2-utils \
- locales \
- lvm2 \
- make \
- meson \
- nfs-common \
- ninja-build \
- numad \
- open-iscsi \
- perl-base \
- pkgconf \
- policykit-1 \
- python3 \
- python3-docutils \
- python3-pytest \
- qemu-utils \
- sed \
- xsltproc
- sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
- dpkg-reconfigure locales
- rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
- export DEBIAN_FRONTEND=noninteractive
- dpkg --add-architecture mips64el
- apt-get update
- apt-get dist-upgrade -y
- apt-get install --no-install-recommends -y dpkg-dev
- apt-get install --no-install-recommends -y \
- gcc-mips64el-linux-gnuabi64 \
- libacl1-dev:mips64el \
- libapparmor-dev:mips64el \
- libattr1-dev:mips64el \
- libaudit-dev:mips64el \
- libblkid-dev:mips64el \
- libc6-dev:mips64el \
- libcap-ng-dev:mips64el \
- libcurl4-gnutls-dev:mips64el \
- libdevmapper-dev:mips64el \
- libfuse-dev:mips64el \
- libglib2.0-dev:mips64el \
- libglusterfs-dev:mips64el \
- libgnutls28-dev:mips64el \
- libiscsi-dev:mips64el \
- libjson-c-dev:mips64el \
- libnl-3-dev:mips64el \
- libnl-route-3-dev:mips64el \
- libnuma-dev:mips64el \
- libparted-dev:mips64el \
- libpcap0.8-dev:mips64el \
- libpciaccess-dev:mips64el \
- librbd-dev:mips64el \
- libreadline-dev:mips64el \
- libsanlock-dev:mips64el \
- libsasl2-dev:mips64el \
- libselinux1-dev:mips64el \
- libssh-dev:mips64el \
- libssh2-1-dev:mips64el \
- libtirpc-dev:mips64el \
- libudev-dev:mips64el \
- libxml2-dev:mips64el \
- systemtap-sdt-dev:mips64el
- mkdir -p /usr/local/share/meson/cross
- printf "[binaries]\n\
-c = '/usr/bin/mips64el-linux-gnuabi64-gcc'\n\
-ar = '/usr/bin/mips64el-linux-gnuabi64-gcc-ar'\n\
-strip = '/usr/bin/mips64el-linux-gnuabi64-strip'\n\
-pkgconfig = '/usr/bin/mips64el-linux-gnuabi64-pkg-config'\n\
-\n\
-[host_machine]\n\
-system = 'linux'\n\
-cpu_family = 'mips64'\n\
-cpu = 'mips64el'\n\
-endian = 'little'\n" > /usr/local/share/meson/cross/mips64el-linux-gnuabi64
- dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
- mkdir -p /usr/libexec/ccache-wrappers
- ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/mips64el-linux-gnuabi64-cc
- ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/mips64el-linux-gnuabi64-gcc
-}
-
-export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
-export LANG="en_US.UTF-8"
-export MAKE="/usr/bin/make"
-export NINJA="/usr/bin/ninja"
-export PYTHON="/usr/bin/python3"
-
-export ABI="mips64el-linux-gnuabi64"
-export MESON_OPTS="--cross-file=mips64el-linux-gnuabi64"
diff --git a/ci/buildenv/debian-11-cross-mipsel.sh b/ci/buildenv/debian-11-cross-mipsel.sh
deleted file mode 100644
index 55a99b861f..0000000000
--- a/ci/buildenv/debian-11-cross-mipsel.sh
+++ /dev/null
@@ -1,116 +0,0 @@
-# THIS FILE WAS AUTO-GENERATED
-#
-# $ lcitool manifest ci/manifest.yml
-#
-# https://gitlab.com/libvirt/libvirt-ci
-
-function install_buildenv() {
- export DEBIAN_FRONTEND=noninteractive
- apt-get update
- apt-get dist-upgrade -y
- apt-get install --no-install-recommends -y \
- augeas-lenses \
- augeas-tools \
- bash-completion \
- black \
- ca-certificates \
- ccache \
- codespell \
- cpp \
- diffutils \
- dwarves \
- ebtables \
- flake8 \
- gettext \
- git \
- grep \
- iproute2 \
- iptables \
- kmod \
- libclang-dev \
- libxml2-utils \
- locales \
- lvm2 \
- make \
- meson \
- nfs-common \
- ninja-build \
- numad \
- open-iscsi \
- perl-base \
- pkgconf \
- policykit-1 \
- python3 \
- python3-docutils \
- python3-pytest \
- qemu-utils \
- sed \
- xsltproc
- sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
- dpkg-reconfigure locales
- rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
- export DEBIAN_FRONTEND=noninteractive
- dpkg --add-architecture mipsel
- apt-get update
- apt-get dist-upgrade -y
- apt-get install --no-install-recommends -y dpkg-dev
- apt-get install --no-install-recommends -y \
- gcc-mipsel-linux-gnu \
- libacl1-dev:mipsel \
- libapparmor-dev:mipsel \
- libattr1-dev:mipsel \
- libaudit-dev:mipsel \
- libblkid-dev:mipsel \
- libc6-dev:mipsel \
- libcap-ng-dev:mipsel \
- libcurl4-gnutls-dev:mipsel \
- libdevmapper-dev:mipsel \
- libfuse-dev:mipsel \
- libglib2.0-dev:mipsel \
- libglusterfs-dev:mipsel \
- libgnutls28-dev:mipsel \
- libiscsi-dev:mipsel \
- libjson-c-dev:mipsel \
- libnl-3-dev:mipsel \
- libnl-route-3-dev:mipsel \
- libnuma-dev:mipsel \
- libparted-dev:mipsel \
- libpcap0.8-dev:mipsel \
- libpciaccess-dev:mipsel \
- librbd-dev:mipsel \
- libreadline-dev:mipsel \
- libsanlock-dev:mipsel \
- libsasl2-dev:mipsel \
- libselinux1-dev:mipsel \
- libssh-dev:mipsel \
- libssh2-1-dev:mipsel \
- libtirpc-dev:mipsel \
- libudev-dev:mipsel \
- libxml2-dev:mipsel \
- systemtap-sdt-dev:mipsel
- mkdir -p /usr/local/share/meson/cross
- printf "[binaries]\n\
-c = '/usr/bin/mipsel-linux-gnu-gcc'\n\
-ar = '/usr/bin/mipsel-linux-gnu-gcc-ar'\n\
-strip = '/usr/bin/mipsel-linux-gnu-strip'\n\
-pkgconfig = '/usr/bin/mipsel-linux-gnu-pkg-config'\n\
-\n\
-[host_machine]\n\
-system = 'linux'\n\
-cpu_family = 'mips'\n\
-cpu = 'mipsel'\n\
-endian = 'little'\n" > /usr/local/share/meson/cross/mipsel-linux-gnu
- dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
- mkdir -p /usr/libexec/ccache-wrappers
- ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/mipsel-linux-gnu-cc
- ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/mipsel-linux-gnu-gcc
-}
-
-export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
-export LANG="en_US.UTF-8"
-export MAKE="/usr/bin/make"
-export NINJA="/usr/bin/ninja"
-export PYTHON="/usr/bin/python3"
-
-export ABI="mipsel-linux-gnu"
-export MESON_OPTS="--cross-file=mipsel-linux-gnu"
diff --git a/ci/buildenv/debian-11-cross-ppc64le.sh b/ci/buildenv/debian-11-cross-ppc64le.sh
deleted file mode 100644
index b7d26e67fd..0000000000
--- a/ci/buildenv/debian-11-cross-ppc64le.sh
+++ /dev/null
@@ -1,116 +0,0 @@
-# THIS FILE WAS AUTO-GENERATED
-#
-# $ lcitool manifest ci/manifest.yml
-#
-# https://gitlab.com/libvirt/libvirt-ci
-
-function install_buildenv() {
- export DEBIAN_FRONTEND=noninteractive
- apt-get update
- apt-get dist-upgrade -y
- apt-get install --no-install-recommends -y \
- augeas-lenses \
- augeas-tools \
- bash-completion \
- black \
- ca-certificates \
- ccache \
- codespell \
- cpp \
- diffutils \
- dwarves \
- ebtables \
- flake8 \
- gettext \
- git \
- grep \
- iproute2 \
- iptables \
- kmod \
- libclang-dev \
- libxml2-utils \
- locales \
- lvm2 \
- make \
- meson \
- nfs-common \
- ninja-build \
- numad \
- open-iscsi \
- perl-base \
- pkgconf \
- policykit-1 \
- python3 \
- python3-docutils \
- python3-pytest \
- qemu-utils \
- sed \
- xsltproc
- sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
- dpkg-reconfigure locales
- rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
- export DEBIAN_FRONTEND=noninteractive
- dpkg --add-architecture ppc64el
- apt-get update
- apt-get dist-upgrade -y
- apt-get install --no-install-recommends -y dpkg-dev
- apt-get install --no-install-recommends -y \
- gcc-powerpc64le-linux-gnu \
- libacl1-dev:ppc64el \
- libapparmor-dev:ppc64el \
- libattr1-dev:ppc64el \
- libaudit-dev:ppc64el \
- libblkid-dev:ppc64el \
- libc6-dev:ppc64el \
- libcap-ng-dev:ppc64el \
- libcurl4-gnutls-dev:ppc64el \
- libdevmapper-dev:ppc64el \
- libfuse-dev:ppc64el \
- libglib2.0-dev:ppc64el \
- libglusterfs-dev:ppc64el \
- libgnutls28-dev:ppc64el \
- libiscsi-dev:ppc64el \
- libjson-c-dev:ppc64el \
- libnl-3-dev:ppc64el \
- libnl-route-3-dev:ppc64el \
- libnuma-dev:ppc64el \
- libparted-dev:ppc64el \
- libpcap0.8-dev:ppc64el \
- libpciaccess-dev:ppc64el \
- librbd-dev:ppc64el \
- libreadline-dev:ppc64el \
- libsanlock-dev:ppc64el \
- libsasl2-dev:ppc64el \
- libselinux1-dev:ppc64el \
- libssh-dev:ppc64el \
- libssh2-1-dev:ppc64el \
- libtirpc-dev:ppc64el \
- libudev-dev:ppc64el \
- libxml2-dev:ppc64el \
- systemtap-sdt-dev:ppc64el
- mkdir -p /usr/local/share/meson/cross
- printf "[binaries]\n\
-c = '/usr/bin/powerpc64le-linux-gnu-gcc'\n\
-ar = '/usr/bin/powerpc64le-linux-gnu-gcc-ar'\n\
-strip = '/usr/bin/powerpc64le-linux-gnu-strip'\n\
-pkgconfig = '/usr/bin/powerpc64le-linux-gnu-pkg-config'\n\
-\n\
-[host_machine]\n\
-system = 'linux'\n\
-cpu_family = 'ppc64'\n\
-cpu = 'powerpc64le'\n\
-endian = 'little'\n" > /usr/local/share/meson/cross/powerpc64le-linux-gnu
- dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
- mkdir -p /usr/libexec/ccache-wrappers
- ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/powerpc64le-linux-gnu-cc
- ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/powerpc64le-linux-gnu-gcc
-}
-
-export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
-export LANG="en_US.UTF-8"
-export MAKE="/usr/bin/make"
-export NINJA="/usr/bin/ninja"
-export PYTHON="/usr/bin/python3"
-
-export ABI="powerpc64le-linux-gnu"
-export MESON_OPTS="--cross-file=powerpc64le-linux-gnu"
diff --git a/ci/buildenv/debian-11-cross-s390x.sh b/ci/buildenv/debian-11-cross-s390x.sh
deleted file mode 100644
index ac259c5625..0000000000
--- a/ci/buildenv/debian-11-cross-s390x.sh
+++ /dev/null
@@ -1,116 +0,0 @@
-# THIS FILE WAS AUTO-GENERATED
-#
-# $ lcitool manifest ci/manifest.yml
-#
-# https://gitlab.com/libvirt/libvirt-ci
-
-function install_buildenv() {
- export DEBIAN_FRONTEND=noninteractive
- apt-get update
- apt-get dist-upgrade -y
- apt-get install --no-install-recommends -y \
- augeas-lenses \
- augeas-tools \
- bash-completion \
- black \
- ca-certificates \
- ccache \
- codespell \
- cpp \
- diffutils \
- dwarves \
- ebtables \
- flake8 \
- gettext \
- git \
- grep \
- iproute2 \
- iptables \
- kmod \
- libclang-dev \
- libxml2-utils \
- locales \
- lvm2 \
- make \
- meson \
- nfs-common \
- ninja-build \
- numad \
- open-iscsi \
- perl-base \
- pkgconf \
- policykit-1 \
- python3 \
- python3-docutils \
- python3-pytest \
- qemu-utils \
- sed \
- xsltproc
- sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
- dpkg-reconfigure locales
- rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
- export DEBIAN_FRONTEND=noninteractive
- dpkg --add-architecture s390x
- apt-get update
- apt-get dist-upgrade -y
- apt-get install --no-install-recommends -y dpkg-dev
- apt-get install --no-install-recommends -y \
- gcc-s390x-linux-gnu \
- libacl1-dev:s390x \
- libapparmor-dev:s390x \
- libattr1-dev:s390x \
- libaudit-dev:s390x \
- libblkid-dev:s390x \
- libc6-dev:s390x \
- libcap-ng-dev:s390x \
- libcurl4-gnutls-dev:s390x \
- libdevmapper-dev:s390x \
- libfuse-dev:s390x \
- libglib2.0-dev:s390x \
- libglusterfs-dev:s390x \
- libgnutls28-dev:s390x \
- libiscsi-dev:s390x \
- libjson-c-dev:s390x \
- libnl-3-dev:s390x \
- libnl-route-3-dev:s390x \
- libnuma-dev:s390x \
- libparted-dev:s390x \
- libpcap0.8-dev:s390x \
- libpciaccess-dev:s390x \
- librbd-dev:s390x \
- libreadline-dev:s390x \
- libsanlock-dev:s390x \
- libsasl2-dev:s390x \
- libselinux1-dev:s390x \
- libssh-dev:s390x \
- libssh2-1-dev:s390x \
- libtirpc-dev:s390x \
- libudev-dev:s390x \
- libxml2-dev:s390x \
- systemtap-sdt-dev:s390x
- mkdir -p /usr/local/share/meson/cross
- printf "[binaries]\n\
-c = '/usr/bin/s390x-linux-gnu-gcc'\n\
-ar = '/usr/bin/s390x-linux-gnu-gcc-ar'\n\
-strip = '/usr/bin/s390x-linux-gnu-strip'\n\
-pkgconfig = '/usr/bin/s390x-linux-gnu-pkg-config'\n\
-\n\
-[host_machine]\n\
-system = 'linux'\n\
-cpu_family = 's390x'\n\
-cpu = 's390x'\n\
-endian = 'big'\n" > /usr/local/share/meson/cross/s390x-linux-gnu
- dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
- mkdir -p /usr/libexec/ccache-wrappers
- ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/s390x-linux-gnu-cc
- ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/s390x-linux-gnu-gcc
-}
-
-export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
-export LANG="en_US.UTF-8"
-export MAKE="/usr/bin/make"
-export NINJA="/usr/bin/ninja"
-export PYTHON="/usr/bin/python3"
-
-export ABI="s390x-linux-gnu"
-export MESON_OPTS="--cross-file=s390x-linux-gnu"
diff --git a/ci/buildenv/debian-11.sh b/ci/buildenv/debian-11.sh
deleted file mode 100644
index affdf6e445..0000000000
--- a/ci/buildenv/debian-11.sh
+++ /dev/null
@@ -1,100 +0,0 @@
-# THIS FILE WAS AUTO-GENERATED
-#
-# $ lcitool manifest ci/manifest.yml
-#
-# https://gitlab.com/libvirt/libvirt-ci
-
-function install_buildenv() {
- export DEBIAN_FRONTEND=noninteractive
- apt-get update
- apt-get dist-upgrade -y
- apt-get install --no-install-recommends -y \
- augeas-lenses \
- augeas-tools \
- bash-completion \
- black \
- ca-certificates \
- ccache \
- clang \
- codespell \
- cpp \
- diffutils \
- dwarves \
- ebtables \
- flake8 \
- gcc \
- gettext \
- git \
- grep \
- iproute2 \
- iptables \
- kmod \
- libacl1-dev \
- libapparmor-dev \
- libattr1-dev \
- libaudit-dev \
- libblkid-dev \
- libc6-dev \
- libcap-ng-dev \
- libclang-dev \
- libcurl4-gnutls-dev \
- libdevmapper-dev \
- libfuse-dev \
- libglib2.0-dev \
- libglusterfs-dev \
- libgnutls28-dev \
- libiscsi-dev \
- libjson-c-dev \
- libnetcf-dev \
- libnl-3-dev \
- libnl-route-3-dev \
- libnuma-dev \
- libparted-dev \
- libpcap0.8-dev \
- libpciaccess-dev \
- librbd-dev \
- libreadline-dev \
- libsanlock-dev \
- libsasl2-dev \
- libselinux1-dev \
- libssh-dev \
- libssh2-1-dev \
- libtirpc-dev \
- libudev-dev \
- libxen-dev \
- libxml2-dev \
- libxml2-utils \
- locales \
- lvm2 \
- make \
- meson \
- nfs-common \
- ninja-build \
- numad \
- open-iscsi \
- perl-base \
- pkgconf \
- policykit-1 \
- python3 \
- python3-docutils \
- python3-pytest \
- qemu-utils \
- sed \
- systemtap-sdt-dev \
- wireshark-dev \
- xsltproc
- sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
- dpkg-reconfigure locales
- rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
- dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
- mkdir -p /usr/libexec/ccache-wrappers
- ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/cc
- ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/clang
- ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/gcc
-}
-
-export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
-export LANG="en_US.UTF-8"
-export MAKE="/usr/bin/make"
-export NINJA="/usr/bin/ninja"
-export PYTHON="/usr/bin/python3"
diff --git a/ci/containers/debian-11-cross-aarch64.Dockerfile b/ci/containers/debian-11-cross-aarch64.Dockerfile
deleted file mode 100644
index 79c359f9fa..0000000000
--- a/ci/containers/debian-11-cross-aarch64.Dockerfile
+++ /dev/null
@@ -1,123 +0,0 @@
-# THIS FILE WAS AUTO-GENERATED
-#
-# $ lcitool manifest ci/manifest.yml
-#
-# https://gitlab.com/libvirt/libvirt-ci
-
-FROM docker.io/library/debian:11-slim
-
-RUN export DEBIAN_FRONTEND=noninteractive && \
- apt-get update && \
- apt-get install -y eatmydata && \
- eatmydata apt-get dist-upgrade -y && \
- eatmydata apt-get install --no-install-recommends -y \
- augeas-lenses \
- augeas-tools \
- bash-completion \
- black \
- ca-certificates \
- ccache \
- codespell \
- cpp \
- diffutils \
- dwarves \
- ebtables \
- flake8 \
- gettext \
- git \
- grep \
- iproute2 \
- iptables \
- kmod \
- libclang-dev \
- libxml2-utils \
- locales \
- lvm2 \
- make \
- meson \
- nfs-common \
- ninja-build \
- numad \
- open-iscsi \
- perl-base \
- pkgconf \
- policykit-1 \
- python3 \
- python3-docutils \
- python3-pytest \
- qemu-utils \
- sed \
- xsltproc && \
- eatmydata apt-get autoremove -y && \
- eatmydata apt-get autoclean -y && \
- sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \
- dpkg-reconfigure locales && \
- rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
-
-ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
-ENV LANG "en_US.UTF-8"
-ENV MAKE "/usr/bin/make"
-ENV NINJA "/usr/bin/ninja"
-ENV PYTHON "/usr/bin/python3"
-
-RUN export DEBIAN_FRONTEND=noninteractive && \
- dpkg --add-architecture arm64 && \
- eatmydata apt-get update && \
- eatmydata apt-get dist-upgrade -y && \
- eatmydata apt-get install --no-install-recommends -y dpkg-dev && \
- eatmydata apt-get install --no-install-recommends -y \
- gcc-aarch64-linux-gnu \
- libacl1-dev:arm64 \
- libapparmor-dev:arm64 \
- libattr1-dev:arm64 \
- libaudit-dev:arm64 \
- libblkid-dev:arm64 \
- libc6-dev:arm64 \
- libcap-ng-dev:arm64 \
- libcurl4-gnutls-dev:arm64 \
- libdevmapper-dev:arm64 \
- libfuse-dev:arm64 \
- libglib2.0-dev:arm64 \
- libglusterfs-dev:arm64 \
- libgnutls28-dev:arm64 \
- libiscsi-dev:arm64 \
- libjson-c-dev:arm64 \
- libnl-3-dev:arm64 \
- libnl-route-3-dev:arm64 \
- libnuma-dev:arm64 \
- libparted-dev:arm64 \
- libpcap0.8-dev:arm64 \
- libpciaccess-dev:arm64 \
- librbd-dev:arm64 \
- libreadline-dev:arm64 \
- libsanlock-dev:arm64 \
- libsasl2-dev:arm64 \
- libselinux1-dev:arm64 \
- libssh-dev:arm64 \
- libssh2-1-dev:arm64 \
- libtirpc-dev:arm64 \
- libudev-dev:arm64 \
- libxen-dev:arm64 \
- libxml2-dev:arm64 \
- systemtap-sdt-dev:arm64 && \
- eatmydata apt-get autoremove -y && \
- eatmydata apt-get autoclean -y && \
- mkdir -p /usr/local/share/meson/cross && \
- printf "[binaries]\n\
-c = '/usr/bin/aarch64-linux-gnu-gcc'\n\
-ar = '/usr/bin/aarch64-linux-gnu-gcc-ar'\n\
-strip = '/usr/bin/aarch64-linux-gnu-strip'\n\
-pkgconfig = '/usr/bin/aarch64-linux-gnu-pkg-config'\n\
-\n\
-[host_machine]\n\
-system = 'linux'\n\
-cpu_family = 'aarch64'\n\
-cpu = 'aarch64'\n\
-endian = 'little'\n" > /usr/local/share/meson/cross/aarch64-linux-gnu && \
- dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt && \
- mkdir -p /usr/libexec/ccache-wrappers && \
- ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/aarch64-linux-gnu-cc && \
- ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/aarch64-linux-gnu-gcc
-
-ENV ABI "aarch64-linux-gnu"
-ENV MESON_OPTS "--cross-file=aarch64-linux-gnu"
diff --git a/ci/containers/debian-11-cross-armv6l.Dockerfile b/ci/containers/debian-11-cross-armv6l.Dockerfile
deleted file mode 100644
index 27bd6c578b..0000000000
--- a/ci/containers/debian-11-cross-armv6l.Dockerfile
+++ /dev/null
@@ -1,122 +0,0 @@
-# THIS FILE WAS AUTO-GENERATED
-#
-# $ lcitool manifest ci/manifest.yml
-#
-# https://gitlab.com/libvirt/libvirt-ci
-
-FROM docker.io/library/debian:11-slim
-
-RUN export DEBIAN_FRONTEND=noninteractive && \
- apt-get update && \
- apt-get install -y eatmydata && \
- eatmydata apt-get dist-upgrade -y && \
- eatmydata apt-get install --no-install-recommends -y \
- augeas-lenses \
- augeas-tools \
- bash-completion \
- black \
- ca-certificates \
- ccache \
- codespell \
- cpp \
- diffutils \
- dwarves \
- ebtables \
- flake8 \
- gettext \
- git \
- grep \
- iproute2 \
- iptables \
- kmod \
- libclang-dev \
- libxml2-utils \
- locales \
- lvm2 \
- make \
- meson \
- nfs-common \
- ninja-build \
- numad \
- open-iscsi \
- perl-base \
- pkgconf \
- policykit-1 \
- python3 \
- python3-docutils \
- python3-pytest \
- qemu-utils \
- sed \
- xsltproc && \
- eatmydata apt-get autoremove -y && \
- eatmydata apt-get autoclean -y && \
- sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \
- dpkg-reconfigure locales && \
- rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
-
-ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
-ENV LANG "en_US.UTF-8"
-ENV MAKE "/usr/bin/make"
-ENV NINJA "/usr/bin/ninja"
-ENV PYTHON "/usr/bin/python3"
-
-RUN export DEBIAN_FRONTEND=noninteractive && \
- dpkg --add-architecture armel && \
- eatmydata apt-get update && \
- eatmydata apt-get dist-upgrade -y && \
- eatmydata apt-get install --no-install-recommends -y dpkg-dev && \
- eatmydata apt-get install --no-install-recommends -y \
- gcc-arm-linux-gnueabi \
- libacl1-dev:armel \
- libapparmor-dev:armel \
- libattr1-dev:armel \
- libaudit-dev:armel \
- libblkid-dev:armel \
- libc6-dev:armel \
- libcap-ng-dev:armel \
- libcurl4-gnutls-dev:armel \
- libdevmapper-dev:armel \
- libfuse-dev:armel \
- libglib2.0-dev:armel \
- libglusterfs-dev:armel \
- libgnutls28-dev:armel \
- libiscsi-dev:armel \
- libjson-c-dev:armel \
- libnl-3-dev:armel \
- libnl-route-3-dev:armel \
- libnuma-dev:armel \
- libparted-dev:armel \
- libpcap0.8-dev:armel \
- libpciaccess-dev:armel \
- librbd-dev:armel \
- libreadline-dev:armel \
- libsanlock-dev:armel \
- libsasl2-dev:armel \
- libselinux1-dev:armel \
- libssh-dev:armel \
- libssh2-1-dev:armel \
- libtirpc-dev:armel \
- libudev-dev:armel \
- libxml2-dev:armel \
- systemtap-sdt-dev:armel && \
- eatmydata apt-get autoremove -y && \
- eatmydata apt-get autoclean -y && \
- mkdir -p /usr/local/share/meson/cross && \
- printf "[binaries]\n\
-c = '/usr/bin/arm-linux-gnueabi-gcc'\n\
-ar = '/usr/bin/arm-linux-gnueabi-gcc-ar'\n\
-strip = '/usr/bin/arm-linux-gnueabi-strip'\n\
-pkgconfig = '/usr/bin/arm-linux-gnueabi-pkg-config'\n\
-\n\
-[host_machine]\n\
-system = 'linux'\n\
-cpu_family = 'arm'\n\
-cpu = 'arm'\n\
-endian = 'little'\n" > /usr/local/share/meson/cross/arm-linux-gnueabi && \
- dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt && \
- mkdir -p /usr/libexec/ccache-wrappers && \
- ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/arm-linux-gnueabi-cc && \
- ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/arm-linux-gnueabi-gcc
-
-ENV ABI "arm-linux-gnueabi"
-ENV MESON_OPTS "--cross-file=arm-linux-gnueabi"
diff --git a/ci/containers/debian-11-cross-armv7l.Dockerfile b/ci/containers/debian-11-cross-armv7l.Dockerfile
deleted file mode 100644
index 3b413673a6..0000000000
--- a/ci/containers/debian-11-cross-armv7l.Dockerfile
+++ /dev/null
@@ -1,123 +0,0 @@
-# THIS FILE WAS AUTO-GENERATED
-#
-# $ lcitool manifest ci/manifest.yml
-#
-# https://gitlab.com/libvirt/libvirt-ci
-
-FROM docker.io/library/debian:11-slim
-
-RUN export DEBIAN_FRONTEND=noninteractive && \
- apt-get update && \
- apt-get install -y eatmydata && \
- eatmydata apt-get dist-upgrade -y && \
- eatmydata apt-get install --no-install-recommends -y \
- augeas-lenses \
- augeas-tools \
- bash-completion \
- black \
- ca-certificates \
- ccache \
- codespell \
- cpp \
- diffutils \
- dwarves \
- ebtables \
- flake8 \
- gettext \
- git \
- grep \
- iproute2 \
- iptables \
- kmod \
- libclang-dev \
- libxml2-utils \
- locales \
- lvm2 \
- make \
- meson \
- nfs-common \
- ninja-build \
- numad \
- open-iscsi \
- perl-base \
- pkgconf \
- policykit-1 \
- python3 \
- python3-docutils \
- python3-pytest \
- qemu-utils \
- sed \
- xsltproc && \
- eatmydata apt-get autoremove -y && \
- eatmydata apt-get autoclean -y && \
- sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \
- dpkg-reconfigure locales && \
- rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
-
-ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
-ENV LANG "en_US.UTF-8"
-ENV MAKE "/usr/bin/make"
-ENV NINJA "/usr/bin/ninja"
-ENV PYTHON "/usr/bin/python3"
-
-RUN export DEBIAN_FRONTEND=noninteractive && \
- dpkg --add-architecture armhf && \
- eatmydata apt-get update && \
- eatmydata apt-get dist-upgrade -y && \
- eatmydata apt-get install --no-install-recommends -y dpkg-dev && \
- eatmydata apt-get install --no-install-recommends -y \
- gcc-arm-linux-gnueabihf \
- libacl1-dev:armhf \
- libapparmor-dev:armhf \
- libattr1-dev:armhf \
- libaudit-dev:armhf \
- libblkid-dev:armhf \
- libc6-dev:armhf \
- libcap-ng-dev:armhf \
- libcurl4-gnutls-dev:armhf \
- libdevmapper-dev:armhf \
- libfuse-dev:armhf \
- libglib2.0-dev:armhf \
- libglusterfs-dev:armhf \
- libgnutls28-dev:armhf \
- libiscsi-dev:armhf \
- libjson-c-dev:armhf \
- libnl-3-dev:armhf \
- libnl-route-3-dev:armhf \
- libnuma-dev:armhf \
- libparted-dev:armhf \
- libpcap0.8-dev:armhf \
- libpciaccess-dev:armhf \
- librbd-dev:armhf \
- libreadline-dev:armhf \
- libsanlock-dev:armhf \
- libsasl2-dev:armhf \
- libselinux1-dev:armhf \
- libssh-dev:armhf \
- libssh2-1-dev:armhf \
- libtirpc-dev:armhf \
- libudev-dev:armhf \
- libxen-dev:armhf \
- libxml2-dev:armhf \
- systemtap-sdt-dev:armhf && \
- eatmydata apt-get autoremove -y && \
- eatmydata apt-get autoclean -y && \
- mkdir -p /usr/local/share/meson/cross && \
- printf "[binaries]\n\
-c = '/usr/bin/arm-linux-gnueabihf-gcc'\n\
-ar = '/usr/bin/arm-linux-gnueabihf-gcc-ar'\n\
-strip = '/usr/bin/arm-linux-gnueabihf-strip'\n\
-pkgconfig = '/usr/bin/arm-linux-gnueabihf-pkg-config'\n\
-\n\
-[host_machine]\n\
-system = 'linux'\n\
-cpu_family = 'arm'\n\
-cpu = 'armhf'\n\
-endian = 'little'\n" > /usr/local/share/meson/cross/arm-linux-gnueabihf && \
- dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt && \
- mkdir -p /usr/libexec/ccache-wrappers && \
- ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/arm-linux-gnueabihf-cc && \
- ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/arm-linux-gnueabihf-gcc
-
-ENV ABI "arm-linux-gnueabihf"
-ENV MESON_OPTS "--cross-file=arm-linux-gnueabihf"
diff --git a/ci/containers/debian-11-cross-i686.Dockerfile b/ci/containers/debian-11-cross-i686.Dockerfile
deleted file mode 100644
index ab5173f2f1..0000000000
--- a/ci/containers/debian-11-cross-i686.Dockerfile
+++ /dev/null
@@ -1,122 +0,0 @@
-# THIS FILE WAS AUTO-GENERATED
-#
-# $ lcitool manifest ci/manifest.yml
-#
-# https://gitlab.com/libvirt/libvirt-ci
-
-FROM docker.io/library/debian:11-slim
-
-RUN export DEBIAN_FRONTEND=noninteractive && \
- apt-get update && \
- apt-get install -y eatmydata && \
- eatmydata apt-get dist-upgrade -y && \
- eatmydata apt-get install --no-install-recommends -y \
- augeas-lenses \
- augeas-tools \
- bash-completion \
- black \
- ca-certificates \
- ccache \
- codespell \
- cpp \
- diffutils \
- dwarves \
- ebtables \
- flake8 \
- gettext \
- git \
- grep \
- iproute2 \
- iptables \
- kmod \
- libclang-dev \
- libxml2-utils \
- locales \
- lvm2 \
- make \
- meson \
- nfs-common \
- ninja-build \
- numad \
- open-iscsi \
- perl-base \
- pkgconf \
- policykit-1 \
- python3 \
- python3-docutils \
- python3-pytest \
- qemu-utils \
- sed \
- xsltproc && \
- eatmydata apt-get autoremove -y && \
- eatmydata apt-get autoclean -y && \
- sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \
- dpkg-reconfigure locales && \
- rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
-
-ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
-ENV LANG "en_US.UTF-8"
-ENV MAKE "/usr/bin/make"
-ENV NINJA "/usr/bin/ninja"
-ENV PYTHON "/usr/bin/python3"
-
-RUN export DEBIAN_FRONTEND=noninteractive && \
- dpkg --add-architecture i386 && \
- eatmydata apt-get update && \
- eatmydata apt-get dist-upgrade -y && \
- eatmydata apt-get install --no-install-recommends -y dpkg-dev && \
- eatmydata apt-get install --no-install-recommends -y \
- gcc-i686-linux-gnu \
- libacl1-dev:i386 \
- libapparmor-dev:i386 \
- libattr1-dev:i386 \
- libaudit-dev:i386 \
- libblkid-dev:i386 \
- libc6-dev:i386 \
- libcap-ng-dev:i386 \
- libcurl4-gnutls-dev:i386 \
- libdevmapper-dev:i386 \
- libfuse-dev:i386 \
- libglib2.0-dev:i386 \
- libglusterfs-dev:i386 \
- libgnutls28-dev:i386 \
- libiscsi-dev:i386 \
- libjson-c-dev:i386 \
- libnl-3-dev:i386 \
- libnl-route-3-dev:i386 \
- libnuma-dev:i386 \
- libparted-dev:i386 \
- libpcap0.8-dev:i386 \
- libpciaccess-dev:i386 \
- librbd-dev:i386 \
- libreadline-dev:i386 \
- libsanlock-dev:i386 \
- libsasl2-dev:i386 \
- libselinux1-dev:i386 \
- libssh-dev:i386 \
- libssh2-1-dev:i386 \
- libtirpc-dev:i386 \
- libudev-dev:i386 \
- libxml2-dev:i386 \
- systemtap-sdt-dev:i386 && \
- eatmydata apt-get autoremove -y && \
- eatmydata apt-get autoclean -y && \
- mkdir -p /usr/local/share/meson/cross && \
- printf "[binaries]\n\
-c = '/usr/bin/i686-linux-gnu-gcc'\n\
-ar = '/usr/bin/i686-linux-gnu-gcc-ar'\n\
-strip = '/usr/bin/i686-linux-gnu-strip'\n\
-pkgconfig = '/usr/bin/i686-linux-gnu-pkg-config'\n\
-\n\
-[host_machine]\n\
-system = 'linux'\n\
-cpu_family = 'x86'\n\
-cpu = 'i686'\n\
-endian = 'little'\n" > /usr/local/share/meson/cross/i686-linux-gnu && \
- dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt && \
- mkdir -p /usr/libexec/ccache-wrappers && \
- ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/i686-linux-gnu-cc && \
- ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/i686-linux-gnu-gcc
-
-ENV ABI "i686-linux-gnu"
-ENV MESON_OPTS "--cross-file=i686-linux-gnu"
diff --git a/ci/containers/debian-11-cross-mips64el.Dockerfile b/ci/containers/debian-11-cross-mips64el.Dockerfile
deleted file mode 100644
index 04fa68f688..0000000000
--- a/ci/containers/debian-11-cross-mips64el.Dockerfile
+++ /dev/null
@@ -1,122 +0,0 @@
-# THIS FILE WAS AUTO-GENERATED
-#
-# $ lcitool manifest ci/manifest.yml
-#
-# https://gitlab.com/libvirt/libvirt-ci
-
-FROM docker.io/library/debian:11-slim
-
-RUN export DEBIAN_FRONTEND=noninteractive && \
- apt-get update && \
- apt-get install -y eatmydata && \
- eatmydata apt-get dist-upgrade -y && \
- eatmydata apt-get install --no-install-recommends -y \
- augeas-lenses \
- augeas-tools \
- bash-completion \
- black \
- ca-certificates \
- ccache \
- codespell \
- cpp \
- diffutils \
- dwarves \
- ebtables \
- flake8 \
- gettext \
- git \
- grep \
- iproute2 \
- iptables \
- kmod \
- libclang-dev \
- libxml2-utils \
- locales \
- lvm2 \
- make \
- meson \
- nfs-common \
- ninja-build \
- numad \
- open-iscsi \
- perl-base \
- pkgconf \
- policykit-1 \
- python3 \
- python3-docutils \
- python3-pytest \
- qemu-utils \
- sed \
- xsltproc && \
- eatmydata apt-get autoremove -y && \
- eatmydata apt-get autoclean -y && \
- sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \
- dpkg-reconfigure locales && \
- rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
-
-ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
-ENV LANG "en_US.UTF-8"
-ENV MAKE "/usr/bin/make"
-ENV NINJA "/usr/bin/ninja"
-ENV PYTHON "/usr/bin/python3"
-
-RUN export DEBIAN_FRONTEND=noninteractive && \
- dpkg --add-architecture mips64el && \
- eatmydata apt-get update && \
- eatmydata apt-get dist-upgrade -y && \
- eatmydata apt-get install --no-install-recommends -y dpkg-dev && \
- eatmydata apt-get install --no-install-recommends -y \
- gcc-mips64el-linux-gnuabi64 \
- libacl1-dev:mips64el \
- libapparmor-dev:mips64el \
- libattr1-dev:mips64el \
- libaudit-dev:mips64el \
- libblkid-dev:mips64el \
- libc6-dev:mips64el \
- libcap-ng-dev:mips64el \
- libcurl4-gnutls-dev:mips64el \
- libdevmapper-dev:mips64el \
- libfuse-dev:mips64el \
- libglib2.0-dev:mips64el \
- libglusterfs-dev:mips64el \
- libgnutls28-dev:mips64el \
- libiscsi-dev:mips64el \
- libjson-c-dev:mips64el \
- libnl-3-dev:mips64el \
- libnl-route-3-dev:mips64el \
- libnuma-dev:mips64el \
- libparted-dev:mips64el \
- libpcap0.8-dev:mips64el \
- libpciaccess-dev:mips64el \
- librbd-dev:mips64el \
- libreadline-dev:mips64el \
- libsanlock-dev:mips64el \
- libsasl2-dev:mips64el \
- libselinux1-dev:mips64el \
- libssh-dev:mips64el \
- libssh2-1-dev:mips64el \
- libtirpc-dev:mips64el \
- libudev-dev:mips64el \
- libxml2-dev:mips64el \
- systemtap-sdt-dev:mips64el && \
- eatmydata apt-get autoremove -y && \
- eatmydata apt-get autoclean -y && \
- mkdir -p /usr/local/share/meson/cross && \
- printf "[binaries]\n\
-c = '/usr/bin/mips64el-linux-gnuabi64-gcc'\n\
-ar = '/usr/bin/mips64el-linux-gnuabi64-gcc-ar'\n\
-strip = '/usr/bin/mips64el-linux-gnuabi64-strip'\n\
-pkgconfig = '/usr/bin/mips64el-linux-gnuabi64-pkg-config'\n\
-\n\
-[host_machine]\n\
-system = 'linux'\n\
-cpu_family = 'mips64'\n\
-cpu = 'mips64el'\n\
-endian = 'little'\n" > /usr/local/share/meson/cross/mips64el-linux-gnuabi64 && \
- dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt && \
- mkdir -p /usr/libexec/ccache-wrappers && \
- ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/mips64el-linux-gnuabi64-cc && \
- ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/mips64el-linux-gnuabi64-gcc
-
-ENV ABI "mips64el-linux-gnuabi64"
-ENV MESON_OPTS "--cross-file=mips64el-linux-gnuabi64"
diff --git a/ci/containers/debian-11-cross-mipsel.Dockerfile b/ci/containers/debian-11-cross-mipsel.Dockerfile
deleted file mode 100644
index 558382ad25..0000000000
--- a/ci/containers/debian-11-cross-mipsel.Dockerfile
+++ /dev/null
@@ -1,122 +0,0 @@
-# THIS FILE WAS AUTO-GENERATED
-#
-# $ lcitool manifest ci/manifest.yml
-#
-# https://gitlab.com/libvirt/libvirt-ci
-
-FROM docker.io/library/debian:11-slim
-
-RUN export DEBIAN_FRONTEND=noninteractive && \
- apt-get update && \
- apt-get install -y eatmydata && \
- eatmydata apt-get dist-upgrade -y && \
- eatmydata apt-get install --no-install-recommends -y \
- augeas-lenses \
- augeas-tools \
- bash-completion \
- black \
- ca-certificates \
- ccache \
- codespell \
- cpp \
- diffutils \
- dwarves \
- ebtables \
- flake8 \
- gettext \
- git \
- grep \
- iproute2 \
- iptables \
- kmod \
- libclang-dev \
- libxml2-utils \
- locales \
- lvm2 \
- make \
- meson \
- nfs-common \
- ninja-build \
- numad \
- open-iscsi \
- perl-base \
- pkgconf \
- policykit-1 \
- python3 \
- python3-docutils \
- python3-pytest \
- qemu-utils \
- sed \
- xsltproc && \
- eatmydata apt-get autoremove -y && \
- eatmydata apt-get autoclean -y && \
- sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \
- dpkg-reconfigure locales && \
- rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
-
-ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
-ENV LANG "en_US.UTF-8"
-ENV MAKE "/usr/bin/make"
-ENV NINJA "/usr/bin/ninja"
-ENV PYTHON "/usr/bin/python3"
-
-RUN export DEBIAN_FRONTEND=noninteractive && \
- dpkg --add-architecture mipsel && \
- eatmydata apt-get update && \
- eatmydata apt-get dist-upgrade -y && \
- eatmydata apt-get install --no-install-recommends -y dpkg-dev && \
- eatmydata apt-get install --no-install-recommends -y \
- gcc-mipsel-linux-gnu \
- libacl1-dev:mipsel \
- libapparmor-dev:mipsel \
- libattr1-dev:mipsel \
- libaudit-dev:mipsel \
- libblkid-dev:mipsel \
- libc6-dev:mipsel \
- libcap-ng-dev:mipsel \
- libcurl4-gnutls-dev:mipsel \
- libdevmapper-dev:mipsel \
- libfuse-dev:mipsel \
- libglib2.0-dev:mipsel \
- libglusterfs-dev:mipsel \
- libgnutls28-dev:mipsel \
- libiscsi-dev:mipsel \
- libjson-c-dev:mipsel \
- libnl-3-dev:mipsel \
- libnl-route-3-dev:mipsel \
- libnuma-dev:mipsel \
- libparted-dev:mipsel \
- libpcap0.8-dev:mipsel \
- libpciaccess-dev:mipsel \
- librbd-dev:mipsel \
- libreadline-dev:mipsel \
- libsanlock-dev:mipsel \
- libsasl2-dev:mipsel \
- libselinux1-dev:mipsel \
- libssh-dev:mipsel \
- libssh2-1-dev:mipsel \
- libtirpc-dev:mipsel \
- libudev-dev:mipsel \
- libxml2-dev:mipsel \
- systemtap-sdt-dev:mipsel && \
- eatmydata apt-get autoremove -y && \
- eatmydata apt-get autoclean -y && \
- mkdir -p /usr/local/share/meson/cross && \
- printf "[binaries]\n\
-c = '/usr/bin/mipsel-linux-gnu-gcc'\n\
-ar = '/usr/bin/mipsel-linux-gnu-gcc-ar'\n\
-strip = '/usr/bin/mipsel-linux-gnu-strip'\n\
-pkgconfig = '/usr/bin/mipsel-linux-gnu-pkg-config'\n\
-\n\
-[host_machine]\n\
-system = 'linux'\n\
-cpu_family = 'mips'\n\
-cpu = 'mipsel'\n\
-endian = 'little'\n" > /usr/local/share/meson/cross/mipsel-linux-gnu && \
- dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt && \
- mkdir -p /usr/libexec/ccache-wrappers && \
- ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/mipsel-linux-gnu-cc && \
- ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/mipsel-linux-gnu-gcc
-
-ENV ABI "mipsel-linux-gnu"
-ENV MESON_OPTS "--cross-file=mipsel-linux-gnu"
diff --git a/ci/containers/debian-11-cross-ppc64le.Dockerfile b/ci/containers/debian-11-cross-ppc64le.Dockerfile
deleted file mode 100644
index ed68e8f0af..0000000000
--- a/ci/containers/debian-11-cross-ppc64le.Dockerfile
+++ /dev/null
@@ -1,122 +0,0 @@
-# THIS FILE WAS AUTO-GENERATED
-#
-# $ lcitool manifest ci/manifest.yml
-#
-# https://gitlab.com/libvirt/libvirt-ci
-
-FROM docker.io/library/debian:11-slim
-
-RUN export DEBIAN_FRONTEND=noninteractive && \
- apt-get update && \
- apt-get install -y eatmydata && \
- eatmydata apt-get dist-upgrade -y && \
- eatmydata apt-get install --no-install-recommends -y \
- augeas-lenses \
- augeas-tools \
- bash-completion \
- black \
- ca-certificates \
- ccache \
- codespell \
- cpp \
- diffutils \
- dwarves \
- ebtables \
- flake8 \
- gettext \
- git \
- grep \
- iproute2 \
- iptables \
- kmod \
- libclang-dev \
- libxml2-utils \
- locales \
- lvm2 \
- make \
- meson \
- nfs-common \
- ninja-build \
- numad \
- open-iscsi \
- perl-base \
- pkgconf \
- policykit-1 \
- python3 \
- python3-docutils \
- python3-pytest \
- qemu-utils \
- sed \
- xsltproc && \
- eatmydata apt-get autoremove -y && \
- eatmydata apt-get autoclean -y && \
- sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \
- dpkg-reconfigure locales && \
- rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
-
-ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
-ENV LANG "en_US.UTF-8"
-ENV MAKE "/usr/bin/make"
-ENV NINJA "/usr/bin/ninja"
-ENV PYTHON "/usr/bin/python3"
-
-RUN export DEBIAN_FRONTEND=noninteractive && \
- dpkg --add-architecture ppc64el && \
- eatmydata apt-get update && \
- eatmydata apt-get dist-upgrade -y && \
- eatmydata apt-get install --no-install-recommends -y dpkg-dev && \
- eatmydata apt-get install --no-install-recommends -y \
- gcc-powerpc64le-linux-gnu \
- libacl1-dev:ppc64el \
- libapparmor-dev:ppc64el \
- libattr1-dev:ppc64el \
- libaudit-dev:ppc64el \
- libblkid-dev:ppc64el \
- libc6-dev:ppc64el \
- libcap-ng-dev:ppc64el \
- libcurl4-gnutls-dev:ppc64el \
- libdevmapper-dev:ppc64el \
- libfuse-dev:ppc64el \
- libglib2.0-dev:ppc64el \
- libglusterfs-dev:ppc64el \
- libgnutls28-dev:ppc64el \
- libiscsi-dev:ppc64el \
- libjson-c-dev:ppc64el \
- libnl-3-dev:ppc64el \
- libnl-route-3-dev:ppc64el \
- libnuma-dev:ppc64el \
- libparted-dev:ppc64el \
- libpcap0.8-dev:ppc64el \
- libpciaccess-dev:ppc64el \
- librbd-dev:ppc64el \
- libreadline-dev:ppc64el \
- libsanlock-dev:ppc64el \
- libsasl2-dev:ppc64el \
- libselinux1-dev:ppc64el \
- libssh-dev:ppc64el \
- libssh2-1-dev:ppc64el \
- libtirpc-dev:ppc64el \
- libudev-dev:ppc64el \
- libxml2-dev:ppc64el \
- systemtap-sdt-dev:ppc64el && \
- eatmydata apt-get autoremove -y && \
- eatmydata apt-get autoclean -y && \
- mkdir -p /usr/local/share/meson/cross && \
- printf "[binaries]\n\
-c = '/usr/bin/powerpc64le-linux-gnu-gcc'\n\
-ar = '/usr/bin/powerpc64le-linux-gnu-gcc-ar'\n\
-strip = '/usr/bin/powerpc64le-linux-gnu-strip'\n\
-pkgconfig = '/usr/bin/powerpc64le-linux-gnu-pkg-config'\n\
-\n\
-[host_machine]\n\
-system = 'linux'\n\
-cpu_family = 'ppc64'\n\
-cpu = 'powerpc64le'\n\
-endian = 'little'\n" > /usr/local/share/meson/cross/powerpc64le-linux-gnu && \
- dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt && \
- mkdir -p /usr/libexec/ccache-wrappers && \
- ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/powerpc64le-linux-gnu-cc && \
- ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/powerpc64le-linux-gnu-gcc
-
-ENV ABI "powerpc64le-linux-gnu"
-ENV MESON_OPTS "--cross-file=powerpc64le-linux-gnu"
diff --git a/ci/containers/debian-11-cross-s390x.Dockerfile b/ci/containers/debian-11-cross-s390x.Dockerfile
deleted file mode 100644
index 62791ac154..0000000000
--- a/ci/containers/debian-11-cross-s390x.Dockerfile
+++ /dev/null
@@ -1,122 +0,0 @@
-# THIS FILE WAS AUTO-GENERATED
-#
-# $ lcitool manifest ci/manifest.yml
-#
-# https://gitlab.com/libvirt/libvirt-ci
-
-FROM docker.io/library/debian:11-slim
-
-RUN export DEBIAN_FRONTEND=noninteractive && \
- apt-get update && \
- apt-get install -y eatmydata && \
- eatmydata apt-get dist-upgrade -y && \
- eatmydata apt-get install --no-install-recommends -y \
- augeas-lenses \
- augeas-tools \
- bash-completion \
- black \
- ca-certificates \
- ccache \
- codespell \
- cpp \
- diffutils \
- dwarves \
- ebtables \
- flake8 \
- gettext \
- git \
- grep \
- iproute2 \
- iptables \
- kmod \
- libclang-dev \
- libxml2-utils \
- locales \
- lvm2 \
- make \
- meson \
- nfs-common \
- ninja-build \
- numad \
- open-iscsi \
- perl-base \
- pkgconf \
- policykit-1 \
- python3 \
- python3-docutils \
- python3-pytest \
- qemu-utils \
- sed \
- xsltproc && \
- eatmydata apt-get autoremove -y && \
- eatmydata apt-get autoclean -y && \
- sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \
- dpkg-reconfigure locales && \
- rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
-
-ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
-ENV LANG "en_US.UTF-8"
-ENV MAKE "/usr/bin/make"
-ENV NINJA "/usr/bin/ninja"
-ENV PYTHON "/usr/bin/python3"
-
-RUN export DEBIAN_FRONTEND=noninteractive && \
- dpkg --add-architecture s390x && \
- eatmydata apt-get update && \
- eatmydata apt-get dist-upgrade -y && \
- eatmydata apt-get install --no-install-recommends -y dpkg-dev && \
- eatmydata apt-get install --no-install-recommends -y \
- gcc-s390x-linux-gnu \
- libacl1-dev:s390x \
- libapparmor-dev:s390x \
- libattr1-dev:s390x \
- libaudit-dev:s390x \
- libblkid-dev:s390x \
- libc6-dev:s390x \
- libcap-ng-dev:s390x \
- libcurl4-gnutls-dev:s390x \
- libdevmapper-dev:s390x \
- libfuse-dev:s390x \
- libglib2.0-dev:s390x \
- libglusterfs-dev:s390x \
- libgnutls28-dev:s390x \
- libiscsi-dev:s390x \
- libjson-c-dev:s390x \
- libnl-3-dev:s390x \
- libnl-route-3-dev:s390x \
- libnuma-dev:s390x \
- libparted-dev:s390x \
- libpcap0.8-dev:s390x \
- libpciaccess-dev:s390x \
- librbd-dev:s390x \
- libreadline-dev:s390x \
- libsanlock-dev:s390x \
- libsasl2-dev:s390x \
- libselinux1-dev:s390x \
- libssh-dev:s390x \
- libssh2-1-dev:s390x \
- libtirpc-dev:s390x \
- libudev-dev:s390x \
- libxml2-dev:s390x \
- systemtap-sdt-dev:s390x && \
- eatmydata apt-get autoremove -y && \
- eatmydata apt-get autoclean -y && \
- mkdir -p /usr/local/share/meson/cross && \
- printf "[binaries]\n\
-c = '/usr/bin/s390x-linux-gnu-gcc'\n\
-ar = '/usr/bin/s390x-linux-gnu-gcc-ar'\n\
-strip = '/usr/bin/s390x-linux-gnu-strip'\n\
-pkgconfig = '/usr/bin/s390x-linux-gnu-pkg-config'\n\
-\n\
-[host_machine]\n\
-system = 'linux'\n\
-cpu_family = 's390x'\n\
-cpu = 's390x'\n\
-endian = 'big'\n" > /usr/local/share/meson/cross/s390x-linux-gnu && \
- dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt && \
- mkdir -p /usr/libexec/ccache-wrappers && \
- ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/s390x-linux-gnu-cc && \
- ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/s390x-linux-gnu-gcc
-
-ENV ABI "s390x-linux-gnu"
-ENV MESON_OPTS "--cross-file=s390x-linux-gnu"
diff --git a/ci/containers/debian-11.Dockerfile b/ci/containers/debian-11.Dockerfile
deleted file mode 100644
index 48c59e3aab..0000000000
--- a/ci/containers/debian-11.Dockerfile
+++ /dev/null
@@ -1,103 +0,0 @@
-# THIS FILE WAS AUTO-GENERATED
-#
-# $ lcitool manifest ci/manifest.yml
-#
-# https://gitlab.com/libvirt/libvirt-ci
-
-FROM docker.io/library/debian:11-slim
-
-RUN export DEBIAN_FRONTEND=noninteractive && \
- apt-get update && \
- apt-get install -y eatmydata && \
- eatmydata apt-get dist-upgrade -y && \
- eatmydata apt-get install --no-install-recommends -y \
- augeas-lenses \
- augeas-tools \
- bash-completion \
- black \
- ca-certificates \
- ccache \
- clang \
- codespell \
- cpp \
- diffutils \
- dwarves \
- ebtables \
- flake8 \
- gcc \
- gettext \
- git \
- grep \
- iproute2 \
- iptables \
- kmod \
- libacl1-dev \
- libapparmor-dev \
- libattr1-dev \
- libaudit-dev \
- libblkid-dev \
- libc6-dev \
- libcap-ng-dev \
- libclang-dev \
- libcurl4-gnutls-dev \
- libdevmapper-dev \
- libfuse-dev \
- libglib2.0-dev \
- libglusterfs-dev \
- libgnutls28-dev \
- libiscsi-dev \
- libjson-c-dev \
- libnetcf-dev \
- libnl-3-dev \
- libnl-route-3-dev \
- libnuma-dev \
- libparted-dev \
- libpcap0.8-dev \
- libpciaccess-dev \
- librbd-dev \
- libreadline-dev \
- libsanlock-dev \
- libsasl2-dev \
- libselinux1-dev \
- libssh-dev \
- libssh2-1-dev \
- libtirpc-dev \
- libudev-dev \
- libxen-dev \
- libxml2-dev \
- libxml2-utils \
- locales \
- lvm2 \
- make \
- meson \
- nfs-common \
- ninja-build \
- numad \
- open-iscsi \
- perl-base \
- pkgconf \
- policykit-1 \
- python3 \
- python3-docutils \
- python3-pytest \
- qemu-utils \
- sed \
- systemtap-sdt-dev \
- wireshark-dev \
- xsltproc && \
- eatmydata apt-get autoremove -y && \
- eatmydata apt-get autoclean -y && \
- sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \
- dpkg-reconfigure locales && \
- rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED && \
- dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt && \
- mkdir -p /usr/libexec/ccache-wrappers && \
- ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/cc && \
- ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/clang && \
- ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/gcc
-
-ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
-ENV LANG "en_US.UTF-8"
-ENV MAKE "/usr/bin/make"
-ENV NINJA "/usr/bin/ninja"
-ENV PYTHON "/usr/bin/python3"
diff --git a/ci/gitlab/builds.yml b/ci/gitlab/builds.yml
index 0534a2278d..893843cb64 100644
--- a/ci/gitlab/builds.yml
+++ b/ci/gitlab/builds.yml
@@ -70,30 +70,6 @@ x86_64-centos-stream-9:
- libvirt-rpms
-x86_64-debian-11:
- extends: .native_build_job
- needs:
- - job: x86_64-debian-11-container
- optional: true
- allow_failure: false
- variables:
- JOB_OPTIONAL: 1
- NAME: debian-11
- TARGET_BASE_IMAGE: docker.io/library/debian:11-slim
-
-
-x86_64-debian-11-clang:
- extends: .native_build_job
- needs:
- - job: x86_64-debian-11-container
- optional: true
- allow_failure: false
- variables:
- JOB_OPTIONAL: 1
- NAME: debian-11
- TARGET_BASE_IMAGE: docker.io/library/debian:11-slim
-
-
x86_64-debian-12:
extends: .native_build_job
needs:
@@ -246,110 +222,6 @@ x86_64-ubuntu-2404-clang:
# Cross build jobs
-aarch64-debian-11:
- extends: .cross_build_job
- needs:
- - job: aarch64-debian-11-container
- optional: true
- allow_failure: false
- variables:
- CROSS: aarch64
- JOB_OPTIONAL: 1
- NAME: debian-11
- TARGET_BASE_IMAGE: docker.io/library/debian:11-slim
-
-
-armv6l-debian-11:
- extends: .cross_build_job
- needs:
- - job: armv6l-debian-11-container
- optional: true
- allow_failure: false
- variables:
- CROSS: armv6l
- JOB_OPTIONAL: 1
- NAME: debian-11
- TARGET_BASE_IMAGE: docker.io/library/debian:11-slim
-
-
-armv7l-debian-11:
- extends: .cross_build_job
- needs:
- - job: armv7l-debian-11-container
- optional: true
- allow_failure: false
- variables:
- CROSS: armv7l
- JOB_OPTIONAL: 1
- NAME: debian-11
- TARGET_BASE_IMAGE: docker.io/library/debian:11-slim
-
-
-i686-debian-11:
- extends: .cross_build_job
- needs:
- - job: i686-debian-11-container
- optional: true
- allow_failure: false
- variables:
- CROSS: i686
- JOB_OPTIONAL: 1
- NAME: debian-11
- TARGET_BASE_IMAGE: docker.io/library/debian:11-slim
-
-
-mips64el-debian-11:
- extends: .cross_build_job
- needs:
- - job: mips64el-debian-11-container
- optional: true
- allow_failure: false
- variables:
- CROSS: mips64el
- JOB_OPTIONAL: 1
- NAME: debian-11
- TARGET_BASE_IMAGE: docker.io/library/debian:11-slim
-
-
-mipsel-debian-11:
- extends: .cross_build_job
- needs:
- - job: mipsel-debian-11-container
- optional: true
- allow_failure: false
- variables:
- CROSS: mipsel
- JOB_OPTIONAL: 1
- NAME: debian-11
- TARGET_BASE_IMAGE: docker.io/library/debian:11-slim
-
-
-ppc64le-debian-11:
- extends: .cross_build_job
- needs:
- - job: ppc64le-debian-11-container
- optional: true
- allow_failure: false
- variables:
- CROSS: ppc64le
- JOB_OPTIONAL: 1
- NAME: debian-11
- TARGET_BASE_IMAGE: docker.io/library/debian:11-slim
-
-
-s390x-debian-11:
- extends: .cross_build_job
- needs:
- - job: s390x-debian-11-container
- optional: true
- allow_failure: false
- variables:
- CROSS: s390x
- JOB_OPTIONAL: 1
- NAME: debian-11
- TARGET_BASE_IMAGE: docker.io/library/debian:11-slim
-
-
aarch64-debian-12:
extends: .cross_build_job
needs:
diff --git a/ci/gitlab/containers.yml b/ci/gitlab/containers.yml
index 0e86062652..f88a39a1f8 100644
--- a/ci/gitlab/containers.yml
+++ b/ci/gitlab/containers.yml
@@ -35,14 +35,6 @@ x86_64-centos-stream-9-container:
NAME: centos-stream-9
-x86_64-debian-11-container:
- extends: .container_job
- allow_failure: false
- variables:
- JOB_OPTIONAL: 1
- NAME: debian-11
-
-
x86_64-debian-12-container:
extends: .container_job
allow_failure: false
@@ -109,70 +101,6 @@ x86_64-ubuntu-2404-container:
# Cross container jobs
-aarch64-debian-11-container:
- extends: .container_job
- allow_failure: false
- variables:
- JOB_OPTIONAL: 1
- NAME: debian-11-cross-aarch64
-
-
-armv6l-debian-11-container:
- extends: .container_job
- allow_failure: false
- variables:
- JOB_OPTIONAL: 1
- NAME: debian-11-cross-armv6l
-
-
-armv7l-debian-11-container:
- extends: .container_job
- allow_failure: false
- variables:
- JOB_OPTIONAL: 1
- NAME: debian-11-cross-armv7l
-
-
-i686-debian-11-container:
- extends: .container_job
- allow_failure: false
- variables:
- JOB_OPTIONAL: 1
- NAME: debian-11-cross-i686
-
-
-mips64el-debian-11-container:
- extends: .container_job
- allow_failure: false
- variables:
- JOB_OPTIONAL: 1
- NAME: debian-11-cross-mips64el
-
-
-mipsel-debian-11-container:
- extends: .container_job
- allow_failure: false
- variables:
- JOB_OPTIONAL: 1
- NAME: debian-11-cross-mipsel
-
-
-ppc64le-debian-11-container:
- extends: .container_job
- allow_failure: false
- variables:
- JOB_OPTIONAL: 1
- NAME: debian-11-cross-ppc64le
-
-
-s390x-debian-11-container:
- extends: .container_job
- allow_failure: false
- variables:
- JOB_OPTIONAL: 1
- NAME: debian-11-cross-s390x
-
-
aarch64-debian-12-container:
extends: .container_job
allow_failure: false
diff --git a/ci/manifest.yml b/ci/manifest.yml
index 3bfebed96c..3b06f4827e 100644
--- a/ci/manifest.yml
+++ b/ci/manifest.yml
@@ -34,46 +34,6 @@ targets:
paths:
- libvirt-rpms
- debian-11:
- jobs:
- - arch: x86_64
- builds: false
-
- - arch: x86_64
- suffix: -clang
- builds: false
-
- - arch: aarch64
- containers: false
- builds: false
-
- - arch: armv6l
- containers: false
- builds: false
-
- - arch: armv7l
- builds: false
-
- - arch: i686
- containers: false
- builds: false
-
- - arch: mips64el
- containers: false
- builds: false
-
- - arch: mipsel
- containers: false
- builds: false
-
- - arch: ppc64le
- containers: false
- builds: false
-
- - arch: s390x
- containers: false
- builds: false
-
debian-12:
jobs:
- arch: x86_64
--
2.48.1
2
1

[PATCH] util: netdevvlan: Change return type of virNetDevVlanCopy to void
by Alexander Kuznetsov 07 Mar '25
by Alexander Kuznetsov 07 Mar '25
07 Mar '25
This function return value is invariant since 1022e0ee, so change
its type and remove all dependent checks.
Found by Linux Verification Center (linuxtesting.org) with Svace.
Reported-by: Alexander Rudyuk <a.rudyuk(a)fobos-nt.ru>
Signed-off-by: Alexander Kuznetsov <kuznetsovam(a)altlinux.org>
---
src/conf/domain_conf.c | 9 +++------
src/network/bridge_driver.c | 4 +++-
src/util/virnetdevvlan.c | 6 +++---
src/util/virnetdevvlan.h | 2 +-
4 files changed, 10 insertions(+), 11 deletions(-)
diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
index 3f88a77a8f..6f49ee507a 100644
--- a/src/conf/domain_conf.c
+++ b/src/conf/domain_conf.c
@@ -30533,8 +30533,7 @@ virDomainNetDefToNetworkPort(virDomainDef *dom,
if (virNetDevBandwidthCopy(&port->bandwidth, iface->bandwidth) < 0)
return NULL;
- if (virNetDevVlanCopy(&port->vlan, &iface->vlan) < 0)
- return NULL;
+ virNetDevVlanCopy(&port->vlan, &iface->vlan);
port->isolatedPort = iface->isolatedPort;
port->trustGuestRxFilters = iface->trustGuestRxFilters;
@@ -30611,8 +30610,7 @@ virDomainNetDefActualFromNetworkPort(virDomainNetDef *iface,
if (virNetDevBandwidthCopy(&actual->bandwidth, port->bandwidth) < 0)
goto error;
- if (virNetDevVlanCopy(&actual->vlan, &port->vlan) < 0)
- goto error;
+ virNetDevVlanCopy(&actual->vlan, &port->vlan);
actual->isolatedPort = port->isolatedPort;
actual->class_id = port->class_id;
@@ -30729,8 +30727,7 @@ virDomainNetDefActualToNetworkPort(virDomainDef *dom,
if (virNetDevBandwidthCopy(&port->bandwidth, actual->bandwidth) < 0)
return NULL;
- if (virNetDevVlanCopy(&port->vlan, &actual->vlan) < 0)
- return NULL;
+ virNetDevVlanCopy(&port->vlan, &actual->vlan);
port->isolatedPort = actual->isolatedPort;
port->class_id = actual->class_id;
diff --git a/src/network/bridge_driver.c b/src/network/bridge_driver.c
index 8f47ef2574..668870a9ee 100644
--- a/src/network/bridge_driver.c
+++ b/src/network/bridge_driver.c
@@ -3973,8 +3973,10 @@ networkAllocatePort(virNetworkObj *obj,
else if (netdef->vlan.nTags > 0)
vlan = &netdef->vlan;
- if (vlan && virNetDevVlanCopy(&port->vlan, vlan) < 0)
+ if (vlan) {
+ virNetDevVlanCopy(&port->vlan, vlan);
return -1;
+ }
}
if (!port->trustGuestRxFilters) {
diff --git a/src/util/virnetdevvlan.c b/src/util/virnetdevvlan.c
index 67daa5d3b4..e8f572efd2 100644
--- a/src/util/virnetdevvlan.c
+++ b/src/util/virnetdevvlan.c
@@ -76,11 +76,11 @@ virNetDevVlanEqual(const virNetDevVlan *a, const virNetDevVlan *b)
* If src is NULL, dst will have nTags set to 0.
* dst is assumed to be empty on entry.
*/
-int
+void
virNetDevVlanCopy(virNetDevVlan *dst, const virNetDevVlan *src)
{
if (!src || src->nTags == 0)
- return 0;
+ return;
dst->tag = g_new0(unsigned int, src->nTags);
dst->trunk = src->trunk;
@@ -88,5 +88,5 @@ virNetDevVlanCopy(virNetDevVlan *dst, const virNetDevVlan *src)
dst->nativeMode = src->nativeMode;
dst->nativeTag = src->nativeTag;
memcpy(dst->tag, src->tag, src->nTags * sizeof(*src->tag));
- return 0;
+ return;
}
diff --git a/src/util/virnetdevvlan.h b/src/util/virnetdevvlan.h
index 228d270869..fd2f8023f5 100644
--- a/src/util/virnetdevvlan.h
+++ b/src/util/virnetdevvlan.h
@@ -42,6 +42,6 @@ struct _virNetDevVlan {
void virNetDevVlanClear(virNetDevVlan *vlan);
void virNetDevVlanFree(virNetDevVlan *vlan);
int virNetDevVlanEqual(const virNetDevVlan *a, const virNetDevVlan *b);
-int virNetDevVlanCopy(virNetDevVlan *dst, const virNetDevVlan *src);
+void virNetDevVlanCopy(virNetDevVlan *dst, const virNetDevVlan *src);
G_DEFINE_AUTOPTR_CLEANUP_FUNC(virNetDevVlan, virNetDevVlanFree);
--
2.42.4
2
5