[PATCH 0/5] meson: Bump minimal required version
by Michal Privoznik
*** BLURB HERE ***
Michal Prívozník (5):
meson: Replace meson.build_root() with meson.project_build_root()
meson: Replace meson.source_root() with meson.project_source_root()
meson: Replace external_program.path() with
external_program.full_path()
Replace dep.get_pkgconfig_variable() with dep.get_variable(pkgconfig:)
meson: Bump minimal required meson version
build-aux/meson.build | 14 +++---
docs/go/meson.build | 2 +-
docs/html/meson.build | 4 +-
docs/kbase/internals/meson.build | 2 +-
docs/kbase/meson.build | 2 +-
docs/manpages/meson.build | 2 +-
docs/meson.build | 18 +++----
libvirt.spec.in | 2 +-
meson.build | 64 ++++++++++++-------------
po/meson.build | 4 +-
src/access/meson.build | 4 +-
src/esx/meson.build | 8 ++--
src/hyperv/meson.build | 4 +-
src/meson.build | 30 ++++++------
src/network/meson.build | 2 +-
src/util/meson.build | 4 +-
tests/meson.build | 10 ++--
tools/wireshark/src/libvirt/meson.build | 8 ++--
18 files changed, 92 insertions(+), 92 deletions(-)
--
2.35.1
2 years, 1 month
[libvirt PATCH v2 00/14] Improve CPU model reporting in domain capabilities
by Jiri Denemark
See individual patches for details.
Patches 4 and 6 were truncated as they include a lot of boring changes
in tests, complete patches are available in my gitlab repo:
git fetch git@gitlab.com:jirkade/libvirt.git domaincaps
Version 2:
- original patch 10/11 was replaced by several new patches going in a
bit different way of getting usability blockers
Jiri Denemark (14):
conf: virDomainCapsCPUModelsAdd never fails
cpu_ppc64: Avoid repeated loading of CPU map
qemu: Do not pass qemuCaps to virQEMUCapsCPUFeature{To,From}QEMU
domain_capabilities: Add vendor attribute for CPU models
Introduce virCPUGetVendorForModel and use it in QEMU driver
cpu_x86: Implement virCPUGetVendorForModel
cpu_ppc64: Implement virCPUGetVendorForModel
cpu_arm: Don't implement virCPUGetVendorForModel
docs: Enhance documentation of CPU models in domain caps
Document specifics of virConnectBaselineHypervisorCPU
qemu_capabilities: Translate CPU blockers
virsh: Add --model option for hypervisor-cpu-baseline
virsh: Add completer for hypervisor-cpu-baseline --model
NEWS: Document CPU reporting improvements
NEWS.rst | 22 +++
docs/formatdomaincaps.rst | 30 +++-
docs/manpages/virsh.rst | 14 +-
src/conf/domain_capabilities.c | 35 +++--
src/conf/domain_capabilities.h | 13 +-
src/conf/schemas/domaincaps.rng | 3 +
src/cpu/cpu.c | 25 +++
src/cpu/cpu.h | 8 +
src/cpu/cpu_arm.c | 1 +
src/cpu/cpu_ppc64.c | 67 ++++++--
src/cpu/cpu_x86.c | 19 +++
src/libvirt-host.c | 9 ++
src/libvirt_private.syms | 1 +
src/qemu/qemu_capabilities.c | 85 +++++++---
src/qemu/qemu_capabilities.h | 8 +-
src/qemu/qemu_command.c | 2 +-
src/qemu/qemu_monitor.c | 7 +-
src/qemu/qemu_monitor.h | 5 +-
src/qemu/qemu_monitor_json.c | 11 +-
src/qemu/qemu_monitor_json.h | 1 -
src/qemu/qemu_process.c | 12 +-
tests/cputest.c | 15 +-
.../domaincapsdata/qemu_4.2.0-q35.x86_64.xml | 104 ++++++------
.../domaincapsdata/qemu_4.2.0-tcg.x86_64.xml | 104 ++++++------
.../qemu_4.2.0-virt.aarch64.xml | 72 ++++-----
tests/domaincapsdata/qemu_4.2.0.aarch64.xml | 72 ++++-----
tests/domaincapsdata/qemu_4.2.0.ppc64.xml | 6 +-
tests/domaincapsdata/qemu_4.2.0.s390x.xml | 148 +++++++++---------
tests/domaincapsdata/qemu_4.2.0.x86_64.xml | 104 ++++++------
.../domaincapsdata/qemu_5.0.0-q35.x86_64.xml | 108 ++++++-------
.../domaincapsdata/qemu_5.0.0-tcg.x86_64.xml | 108 ++++++-------
.../qemu_5.0.0-virt.aarch64.xml | 74 ++++-----
tests/domaincapsdata/qemu_5.0.0.aarch64.xml | 74 ++++-----
tests/domaincapsdata/qemu_5.0.0.ppc64.xml | 8 +-
tests/domaincapsdata/qemu_5.0.0.x86_64.xml | 108 ++++++-------
.../domaincapsdata/qemu_5.1.0-q35.x86_64.xml | 108 ++++++-------
.../domaincapsdata/qemu_5.1.0-tcg.x86_64.xml | 108 ++++++-------
tests/domaincapsdata/qemu_5.1.0.x86_64.xml | 108 ++++++-------
.../domaincapsdata/qemu_5.2.0-q35.x86_64.xml | 108 ++++++-------
.../domaincapsdata/qemu_5.2.0-tcg.x86_64.xml | 108 ++++++-------
.../qemu_5.2.0-virt.aarch64.xml | 74 ++++-----
tests/domaincapsdata/qemu_5.2.0.aarch64.xml | 74 ++++-----
tests/domaincapsdata/qemu_5.2.0.ppc64.xml | 8 +-
tests/domaincapsdata/qemu_5.2.0.s390x.xml | 148 +++++++++---------
tests/domaincapsdata/qemu_5.2.0.x86_64.xml | 108 ++++++-------
.../domaincapsdata/qemu_6.0.0-q35.x86_64.xml | 110 ++++++-------
.../domaincapsdata/qemu_6.0.0-tcg.x86_64.xml | 110 ++++++-------
.../qemu_6.0.0-virt.aarch64.xml | 76 ++++-----
tests/domaincapsdata/qemu_6.0.0.aarch64.xml | 76 ++++-----
tests/domaincapsdata/qemu_6.0.0.s390x.xml | 148 +++++++++---------
tests/domaincapsdata/qemu_6.0.0.x86_64.xml | 110 ++++++-------
.../domaincapsdata/qemu_6.1.0-q35.x86_64.xml | 110 ++++++-------
.../domaincapsdata/qemu_6.1.0-tcg.x86_64.xml | 110 ++++++-------
tests/domaincapsdata/qemu_6.1.0.x86_64.xml | 110 ++++++-------
.../domaincapsdata/qemu_6.2.0-q35.x86_64.xml | 110 ++++++-------
.../domaincapsdata/qemu_6.2.0-tcg.x86_64.xml | 110 ++++++-------
.../qemu_6.2.0-virt.aarch64.xml | 78 ++++-----
tests/domaincapsdata/qemu_6.2.0.aarch64.xml | 78 ++++-----
tests/domaincapsdata/qemu_6.2.0.ppc64.xml | 8 +-
tests/domaincapsdata/qemu_6.2.0.x86_64.xml | 110 ++++++-------
.../domaincapsdata/qemu_7.0.0-q35.x86_64.xml | 110 ++++++-------
.../domaincapsdata/qemu_7.0.0-tcg.x86_64.xml | 110 ++++++-------
.../qemu_7.0.0-virt.aarch64.xml | 78 ++++-----
tests/domaincapsdata/qemu_7.0.0.aarch64.xml | 78 ++++-----
tests/domaincapsdata/qemu_7.0.0.ppc64.xml | 8 +-
tests/domaincapsdata/qemu_7.0.0.x86_64.xml | 110 ++++++-------
.../domaincapsdata/qemu_7.1.0-q35.x86_64.xml | 106 ++++++-------
.../domaincapsdata/qemu_7.1.0-tcg.x86_64.xml | 106 ++++++-------
tests/domaincapsdata/qemu_7.1.0.x86_64.xml | 106 ++++++-------
tools/virsh-completer-host.c | 50 ++++++
tools/virsh-completer-host.h | 5 +
tools/virsh-host.c | 24 ++-
tools/virsh.h | 7 +-
tools/vsh.h | 27 ++++
74 files changed, 2549 insertions(+), 2265 deletions(-)
--
2.38.0
2 years, 1 month
[libvirt][PATCH v16 0/9] Support query and use SGX
by Lin Yang
The previous v15 version can be found here:
https://listman.redhat.com/archives/libvir-list/2022-August/234030.html
v14 version:
https://listman.redhat.com/archives/libvir-list/2022-July/233257.html
Diff to v15:
- Updated libvirt target verion to latest 8.9.0 in formatdomain.rst
- Sum up all sgx section size when parse QEMU QMP command
"query-sgx-capabilities" response. Use it instead of "section-size"
if it does not exist
- Resolved conflict to master branch
- Fixed inconsistent EPC size in formatdomaincaps.rst
Diff v15 to v14:
- Dropped SGX support for QEMU 6.2.0, only focus on QEMU 7.0.0 (BTW, I
noticed the default QEMU version in RHEL9 is still 6.2.0, so those
user cannot access this feature unless manually upgrade QEMU)
- Removed total EPC size from domain capability, since the corresponding
attribute is marked as deprecated in QMP command
"query-sgx-capabilities"
- Some cleanups to address comments (pin test to 7.0.0, more validations
on qemu_validate.c, name issue, use built-in functions, ...)
Haibin Huang (4):
domain_capabilities: Define SGX capabilities structs
qemu: Get SGX capabilities form QMP
Convert QMP capabilities to domain capabilities
conf: expose SGX feature in domain capabilities
Lin Yang (2):
conf: Introduce SGX EPC element into device memory xml
qemu: Add command-line to generate SGX EPC memory backend
Michal Prívozník (3):
qemu_cgroup: Allow SGX in devices controller
qemu_namespace: Create SGX related nodes in domain's namespace
security_dac: Set DAC label on SGX /dev nodes
docs/formatdomain.rst | 25 +-
docs/formatdomaincaps.rst | 40 ++++
src/conf/domain_capabilities.c | 47 ++++
src/conf/domain_capabilities.h | 22 ++
src/conf/domain_conf.c | 30 +++
src/conf/domain_conf.h | 1 +
src/conf/domain_postparse.c | 1 +
src/conf/domain_validate.c | 9 +
src/conf/schemas/domaincaps.rng | 43 ++++
src/conf/schemas/domaincommon.rng | 1 +
src/libvirt_private.syms | 1 +
src/qemu/qemu_alias.c | 6 +-
src/qemu/qemu_capabilities.c | 220 ++++++++++++++++++
src/qemu/qemu_capabilities.h | 4 +
src/qemu/qemu_cgroup.c | 78 ++++++-
src/qemu/qemu_command.c | 66 +++++-
src/qemu/qemu_domain.c | 48 ++--
src/qemu/qemu_domain.h | 2 +
src/qemu/qemu_domain_address.c | 6 +
src/qemu/qemu_driver.c | 1 +
src/qemu/qemu_monitor.c | 10 +
src/qemu/qemu_monitor.h | 3 +
src/qemu/qemu_monitor_json.c | 154 +++++++++++-
src/qemu/qemu_monitor_json.h | 4 +
src/qemu/qemu_namespace.c | 20 +-
src/qemu/qemu_process.c | 2 +
src/qemu/qemu_validate.c | 40 ++++
src/security/security_apparmor.c | 1 +
src/security/security_dac.c | 46 ++--
src/security/security_selinux.c | 2 +
tests/domaincapsdata/bhyve_basic.x86_64.xml | 1 +
tests/domaincapsdata/bhyve_fbuf.x86_64.xml | 1 +
tests/domaincapsdata/bhyve_uefi.x86_64.xml | 1 +
tests/domaincapsdata/empty.xml | 1 +
tests/domaincapsdata/libxl-xenfv.xml | 1 +
tests/domaincapsdata/libxl-xenpv.xml | 1 +
.../domaincapsdata/qemu_4.2.0-q35.x86_64.xml | 1 +
.../domaincapsdata/qemu_4.2.0-tcg.x86_64.xml | 1 +
.../qemu_4.2.0-virt.aarch64.xml | 1 +
tests/domaincapsdata/qemu_4.2.0.aarch64.xml | 1 +
tests/domaincapsdata/qemu_4.2.0.ppc64.xml | 1 +
tests/domaincapsdata/qemu_4.2.0.s390x.xml | 1 +
tests/domaincapsdata/qemu_4.2.0.x86_64.xml | 1 +
.../domaincapsdata/qemu_5.0.0-q35.x86_64.xml | 1 +
.../domaincapsdata/qemu_5.0.0-tcg.x86_64.xml | 1 +
.../qemu_5.0.0-virt.aarch64.xml | 1 +
tests/domaincapsdata/qemu_5.0.0.aarch64.xml | 1 +
tests/domaincapsdata/qemu_5.0.0.ppc64.xml | 1 +
tests/domaincapsdata/qemu_5.0.0.x86_64.xml | 1 +
.../domaincapsdata/qemu_5.1.0-q35.x86_64.xml | 1 +
.../domaincapsdata/qemu_5.1.0-tcg.x86_64.xml | 1 +
tests/domaincapsdata/qemu_5.1.0.sparc.xml | 1 +
tests/domaincapsdata/qemu_5.1.0.x86_64.xml | 1 +
.../domaincapsdata/qemu_5.2.0-q35.x86_64.xml | 1 +
.../domaincapsdata/qemu_5.2.0-tcg.x86_64.xml | 1 +
.../qemu_5.2.0-virt.aarch64.xml | 1 +
tests/domaincapsdata/qemu_5.2.0.aarch64.xml | 1 +
tests/domaincapsdata/qemu_5.2.0.ppc64.xml | 1 +
tests/domaincapsdata/qemu_5.2.0.s390x.xml | 1 +
tests/domaincapsdata/qemu_5.2.0.x86_64.xml | 1 +
.../domaincapsdata/qemu_6.0.0-q35.x86_64.xml | 1 +
.../domaincapsdata/qemu_6.0.0-tcg.x86_64.xml | 1 +
.../qemu_6.0.0-virt.aarch64.xml | 1 +
tests/domaincapsdata/qemu_6.0.0.aarch64.xml | 1 +
tests/domaincapsdata/qemu_6.0.0.s390x.xml | 1 +
tests/domaincapsdata/qemu_6.0.0.x86_64.xml | 1 +
.../domaincapsdata/qemu_6.1.0-q35.x86_64.xml | 1 +
.../domaincapsdata/qemu_6.1.0-tcg.x86_64.xml | 1 +
tests/domaincapsdata/qemu_6.1.0.x86_64.xml | 1 +
.../domaincapsdata/qemu_6.2.0-q35.x86_64.xml | 1 +
.../domaincapsdata/qemu_6.2.0-tcg.x86_64.xml | 1 +
.../qemu_6.2.0-virt.aarch64.xml | 1 +
tests/domaincapsdata/qemu_6.2.0.aarch64.xml | 1 +
tests/domaincapsdata/qemu_6.2.0.ppc64.xml | 1 +
tests/domaincapsdata/qemu_6.2.0.x86_64.xml | 1 +
.../domaincapsdata/qemu_7.0.0-q35.x86_64.xml | 10 +
.../domaincapsdata/qemu_7.0.0-tcg.x86_64.xml | 10 +
.../qemu_7.0.0-virt.aarch64.xml | 1 +
tests/domaincapsdata/qemu_7.0.0.aarch64.xml | 1 +
tests/domaincapsdata/qemu_7.0.0.ppc64.xml | 1 +
tests/domaincapsdata/qemu_7.0.0.x86_64.xml | 10 +
.../domaincapsdata/qemu_7.1.0-q35.x86_64.xml | 1 +
.../domaincapsdata/qemu_7.1.0-tcg.x86_64.xml | 1 +
tests/domaincapsdata/qemu_7.1.0.x86_64.xml | 1 +
.../caps_6.2.0.x86_64.replies | 21 +-
.../caps_7.0.0.x86_64.replies | 34 ++-
.../caps_7.0.0.x86_64.xml | 11 +
.../caps_7.1.0.x86_64.replies | 21 +-
.../sgx-epc.x86_64-7.0.0.args | 40 ++++
tests/qemuxml2argvdata/sgx-epc.xml | 64 +++++
tests/qemuxml2argvtest.c | 2 +
.../sgx-epc.x86_64-7.0.0.xml | 1 +
tests/qemuxml2xmltest.c | 2 +
93 files changed, 1134 insertions(+), 76 deletions(-)
create mode 100644 tests/qemuxml2argvdata/sgx-epc.x86_64-7.0.0.args
create mode 100644 tests/qemuxml2argvdata/sgx-epc.xml
create mode 120000 tests/qemuxml2xmloutdata/sgx-epc.x86_64-7.0.0.xml
--
2.25.1
2 years, 1 month
[PATCH] virNetServerProgramDispatchCall: Avoid calling xdr_free(_, NULL)
by Michal Privoznik
In recent commit of v8.8.0-41-g41eb0f446c I've suggested during
review to put both xdr_free() calls under error label, assuming
that xdr_free() accepts NULL and thus is a NOP when the control
jumps onto the label even before either of @arg or @ret was
allocated. Well, turns out, xdr_free() does no accept NULL and
thus we have to guard its call. But since @dispatcher is already
set by the time either of the variables is allocated, we can
replace the condition from 'if (dispatche)' to 'if (arg)' and 'if
(ret)'.
Signed-off-by: Michal Privoznik <mprivozn(a)redhat.com>
---
src/rpc/virnetserverprogram.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/rpc/virnetserverprogram.c b/src/rpc/virnetserverprogram.c
index 212e0d5ab5..58b6a278ca 100644
--- a/src/rpc/virnetserverprogram.c
+++ b/src/rpc/virnetserverprogram.c
@@ -475,10 +475,10 @@ virNetServerProgramDispatchCall(virNetServerProgram *prog,
return virNetServerClientSendMessage(client, msg);
error:
- if (dispatcher) {
+ if (arg)
xdr_free(dispatcher->arg_filter, arg);
+ if (ret)
xdr_free(dispatcher->ret_filter, ret);
- }
/* Bad stuff (de-)serializing message, but we have an
* RPC error message we can send back to the client */
--
2.35.1
2 years, 1 month
[libvirt PATCH v2] src: warn if client hits the max requests limit
by Daniel P. Berrangé
Since they are simply normal RPC messages, the keep alive packets are
subject to the "max_client_requests" limit just like any API calls.
Thus, if a client hits the 'max_client_requests' limit and all the
pending API calls take a long time to complete, it may result in
keep-alives firing and dropping the client connection.
This has been seen by a number of users with the default value of
max_client_requests=5, by issuing 5 concurrent live migration
operations.
By printing a warning message when this happens, admins will be alerted
to the fact that their active clients are exceeding the default client
requests limit.
Signed-off-by: Daniel P. Berrangé <berrange(a)redhat.com>
---
In v2:
- now only warn once per client to avoid log spam
src/rpc/virnetserverclient.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/src/rpc/virnetserverclient.c b/src/rpc/virnetserverclient.c
index 30f6af7be5..c9a4eb521e 100644
--- a/src/rpc/virnetserverclient.c
+++ b/src/rpc/virnetserverclient.c
@@ -93,6 +93,9 @@ struct _virNetServerClient
* throttling calculations */
size_t nrequests;
size_t nrequests_max;
+ /* True if we've warned about nrequests hittin
+ * the server limit already */
+ bool nrequests_warning;
/* Zero or one messages being received. Zero if
* nrequests >= max_clients and throttling */
virNetMessage *rx;
@@ -1261,6 +1264,11 @@ static virNetMessage *virNetServerClientDispatchRead(virNetServerClient *client)
client->rx->buffer = g_new0(char, client->rx->bufferLength);
client->nrequests++;
}
+ } else if (!client->nrequests_warning) {
+ client->nrequests_warning = true;
+ VIR_WARN("Client hit max requests limit %zd. This may result "
+ "in keep-alive timeouts. Consider tuning the "
+ "max_client_requests server parameter", client->nrequests);
}
virNetServerClientUpdateEvent(client);
--
2.37.3
2 years, 1 month
[libvirt PATCH 0/2] ci: stop triggering CI jobs on branch push by default
by Daniel P. Berrangé
This series refreshes the CI config with lcitool, which
brings in a very significant architectural and operational
change.
* Contributor forks will never create container images
anymore, only the master upstream. If a user makes a
CI change, it will test the changes in a throwaway
container based on latest distro base images.
This stops users consuming 100's of GB of storage
in gitlab, which is good given their intention to
apply a 5 GB storage limit as soon as they fix
their broken storage quota accounting code !
* CI pipelines are not created on pushes to branches
in forks by default. You must opt in by setting
"RUN_PIPELINE=1' env variable eg
git push <remote> -o ci.variable=RUN_PIPELINE=1
This avoids burning CI quota when you're just
pushing to branches for preserving code.
You can still get a pipeline by triggering it
from the web UI, and merge requests will also
trigger pipelines.
More detail is in the 2nd patch commit message
After this is pushed, you can delete any container images
in your gitlab forks. Likewise for all other libvirt-XXX
projects already.
Daniel P. Berrangé (2):
ci: adapt integration test dependencies for job rename
ci: refresh with latest lcitool manifest
.gitlab-ci.yml | 107 +++-
ci/buildenv/almalinux-8.sh | 98 ++++
ci/buildenv/alpine-315.sh | 80 +++
ci/buildenv/alpine-edge.sh | 81 +++
ci/buildenv/centos-stream-8.sh | 99 ++++
ci/buildenv/centos-stream-9.sh | 98 ++++
ci/buildenv/debian-11-cross-aarch64.sh | 115 ++++
ci/buildenv/debian-11-cross-armv6l.sh | 114 ++++
ci/buildenv/debian-11-cross-armv7l.sh | 115 ++++
ci/buildenv/debian-11-cross-i686.sh | 114 ++++
ci/buildenv/debian-11-cross-mips64el.sh | 114 ++++
ci/buildenv/debian-11-cross-mipsel.sh | 114 ++++
ci/buildenv/debian-11-cross-ppc64le.sh | 114 ++++
ci/buildenv/debian-11-cross-s390x.sh | 114 ++++
ci/buildenv/debian-11.sh | 98 ++++
ci/buildenv/debian-sid-cross-aarch64.sh | 115 ++++
ci/buildenv/debian-sid-cross-armv6l.sh | 114 ++++
ci/buildenv/debian-sid-cross-armv7l.sh | 115 ++++
ci/buildenv/debian-sid-cross-i686.sh | 114 ++++
ci/buildenv/debian-sid-cross-mips64el.sh | 114 ++++
ci/buildenv/debian-sid-cross-mipsel.sh | 114 ++++
ci/buildenv/debian-sid-cross-ppc64le.sh | 114 ++++
ci/buildenv/debian-sid-cross-s390x.sh | 114 ++++
ci/buildenv/debian-sid.sh | 97 ++++
ci/buildenv/fedora-35.sh | 97 ++++
ci/buildenv/fedora-36-cross-mingw32.sh | 74 +++
ci/buildenv/fedora-36-cross-mingw64.sh | 74 +++
ci/buildenv/fedora-36.sh | 96 ++++
ci/buildenv/fedora-rawhide-cross-mingw32.sh | 75 +++
ci/buildenv/fedora-rawhide-cross-mingw64.sh | 75 +++
ci/buildenv/fedora-rawhide.sh | 97 ++++
ci/buildenv/opensuse-leap-153.sh | 99 ++++
ci/buildenv/opensuse-tumbleweed.sh | 96 ++++
ci/buildenv/ubuntu-2004.sh | 102 ++++
ci/buildenv/ubuntu-2204.sh | 98 ++++
ci/containers/almalinux-8.Dockerfile | 2 +-
ci/containers/alpine-315.Dockerfile | 2 +-
ci/containers/alpine-edge.Dockerfile | 2 +-
ci/containers/centos-stream-8.Dockerfile | 2 +-
ci/containers/centos-stream-9.Dockerfile | 2 +-
.../debian-11-cross-aarch64.Dockerfile | 142 ++---
.../debian-11-cross-armv6l.Dockerfile | 140 ++---
.../debian-11-cross-armv7l.Dockerfile | 142 ++---
ci/containers/debian-11-cross-i686.Dockerfile | 140 ++---
.../debian-11-cross-mips64el.Dockerfile | 140 ++---
.../debian-11-cross-mipsel.Dockerfile | 140 ++---
.../debian-11-cross-ppc64le.Dockerfile | 140 ++---
.../debian-11-cross-s390x.Dockerfile | 140 ++---
ci/containers/debian-11.Dockerfile | 148 ++---
.../debian-sid-cross-aarch64.Dockerfile | 142 ++---
.../debian-sid-cross-armv6l.Dockerfile | 140 ++---
.../debian-sid-cross-armv7l.Dockerfile | 142 ++---
.../debian-sid-cross-i686.Dockerfile | 140 ++---
.../debian-sid-cross-mips64el.Dockerfile | 140 ++---
.../debian-sid-cross-mipsel.Dockerfile | 140 ++---
.../debian-sid-cross-ppc64le.Dockerfile | 140 ++---
.../debian-sid-cross-s390x.Dockerfile | 140 ++---
ci/containers/debian-sid.Dockerfile | 146 ++---
ci/containers/fedora-35.Dockerfile | 154 ++---
.../fedora-36-cross-mingw32.Dockerfile | 102 ++--
.../fedora-36-cross-mingw64.Dockerfile | 102 ++--
ci/containers/fedora-36.Dockerfile | 152 ++---
.../fedora-rawhide-cross-mingw32.Dockerfile | 102 ++--
.../fedora-rawhide-cross-mingw64.Dockerfile | 102 ++--
ci/containers/fedora-rawhide.Dockerfile | 152 ++---
ci/containers/opensuse-leap-153.Dockerfile | 2 +-
ci/containers/opensuse-tumbleweed.Dockerfile | 4 +-
ci/containers/ubuntu-2004.Dockerfile | 154 ++---
ci/containers/ubuntu-2204.Dockerfile | 148 ++---
ci/gitlab.yml | 58 +-
ci/gitlab/build-templates.yml | 245 +++++++-
ci/gitlab/builds.yml | 524 +++++++++++++++---
ci/gitlab/container-templates.yml | 45 +-
ci/gitlab/sanity-checks.yml | 16 +-
ci/integration-template.yml | 27 +-
ci/integration.yml | 127 ++++-
76 files changed, 6292 insertions(+), 2045 deletions(-)
create mode 100644 ci/buildenv/almalinux-8.sh
create mode 100644 ci/buildenv/alpine-315.sh
create mode 100644 ci/buildenv/alpine-edge.sh
create mode 100644 ci/buildenv/centos-stream-8.sh
create mode 100644 ci/buildenv/centos-stream-9.sh
create mode 100644 ci/buildenv/debian-11-cross-aarch64.sh
create mode 100644 ci/buildenv/debian-11-cross-armv6l.sh
create mode 100644 ci/buildenv/debian-11-cross-armv7l.sh
create mode 100644 ci/buildenv/debian-11-cross-i686.sh
create mode 100644 ci/buildenv/debian-11-cross-mips64el.sh
create mode 100644 ci/buildenv/debian-11-cross-mipsel.sh
create mode 100644 ci/buildenv/debian-11-cross-ppc64le.sh
create mode 100644 ci/buildenv/debian-11-cross-s390x.sh
create mode 100644 ci/buildenv/debian-11.sh
create mode 100644 ci/buildenv/debian-sid-cross-aarch64.sh
create mode 100644 ci/buildenv/debian-sid-cross-armv6l.sh
create mode 100644 ci/buildenv/debian-sid-cross-armv7l.sh
create mode 100644 ci/buildenv/debian-sid-cross-i686.sh
create mode 100644 ci/buildenv/debian-sid-cross-mips64el.sh
create mode 100644 ci/buildenv/debian-sid-cross-mipsel.sh
create mode 100644 ci/buildenv/debian-sid-cross-ppc64le.sh
create mode 100644 ci/buildenv/debian-sid-cross-s390x.sh
create mode 100644 ci/buildenv/debian-sid.sh
create mode 100644 ci/buildenv/fedora-35.sh
create mode 100644 ci/buildenv/fedora-36-cross-mingw32.sh
create mode 100644 ci/buildenv/fedora-36-cross-mingw64.sh
create mode 100644 ci/buildenv/fedora-36.sh
create mode 100644 ci/buildenv/fedora-rawhide-cross-mingw32.sh
create mode 100644 ci/buildenv/fedora-rawhide-cross-mingw64.sh
create mode 100644 ci/buildenv/fedora-rawhide.sh
create mode 100644 ci/buildenv/opensuse-leap-153.sh
create mode 100644 ci/buildenv/opensuse-tumbleweed.sh
create mode 100644 ci/buildenv/ubuntu-2004.sh
create mode 100644 ci/buildenv/ubuntu-2204.sh
--
2.37.2
2 years, 1 month
[libvirt PATCH] ci: integration: Update the perl CI job names
by Erik Skultety
libvirt-derived repos recently changed the way how and when CI
containers are built and for that a different naming scheme was adopted
to differentiate between the 2. Update the integration pipeline config
to reflect this change.
Signed-off-by: Erik Skultety <eskultet(a)redhat.com>
---
ci/integration.yml | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/ci/integration.yml b/ci/integration.yml
index 43f22813c9..0a349bc9b3 100644
--- a/ci/integration.yml
+++ b/ci/integration.yml
@@ -6,7 +6,7 @@ centos-stream-8-tests:
needs:
- x86_64-centos-stream-8
- project: libvirt/libvirt-perl
- job: x86_64-centos-stream-8
+ job: x86_64-centos-stream-8-prebuilt-env
ref: master
artifacts: true
variables:
@@ -22,7 +22,7 @@ centos-stream-9-tests:
needs:
- x86_64-centos-stream-9
- project: libvirt/libvirt-perl
- job: x86_64-centos-stream-9
+ job: x86_64-centos-stream-9-prebuilt-env
ref: master
artifacts: true
variables:
@@ -38,7 +38,7 @@ fedora-35-tests:
needs:
- x86_64-fedora-35
- project: libvirt/libvirt-perl
- job: x86_64-fedora-35
+ job: x86_64-fedora-35-prebuilt-env
ref: master
artifacts: true
variables:
@@ -54,7 +54,7 @@ fedora-36-tests:
needs:
- x86_64-fedora-36
- project: libvirt/libvirt-perl
- job: x86_64-fedora-36
+ job: x86_64-fedora-36-prebuilt-env
ref: master
artifacts: true
variables:
@@ -70,7 +70,7 @@ fedora-36-upstream-qemu-tests:
needs:
- x86_64-fedora-36
- project: libvirt/libvirt-perl
- job: x86_64-fedora-36
+ job: x86_64-fedora-36-prebuilt-env
ref: master
artifacts: true
variables:
--
2.37.3
2 years, 1 month
[libvirt PATCH 00/11] Improve CPU model reporting in domain capabilities
by Jiri Denemark
See patches 04/11 and 10/11 for details.
Patches 4, 6, and 10 were truncated as they include a lot of boring
changes in tests, complete patches are available in my gitlab repo:
git fetch git@gitlab.com:jirkade/libvirt.git domaincaps
Jiri Denemark (11):
conf: virDomainCapsCPUModelsAdd never fails
cpu_ppc64: Avoid repeated loading of CPU map
qemu: Do not pass qemuCaps to virQEMUCapsCPUFeature{To,From}QEMU
domain_capabilities: Add vendor attribute for CPU models
Introduce virCPUGetVendorForModel and use it in QEMU driver
cpu_x86: Implement virCPUGetVendorForModel
cpu_ppc64: Implement virCPUGetVendorForModel
cpu_arm: Don't implement virCPUGetVendorForModel
qemu_capabilities: Translate CPU blockers
domain_capabilities: Add blockers attribute for CPU models
NEWS: Document domain capabilities improvements
NEWS.rst | 11 ++
docs/formatdomaincaps.rst | 20 ++-
src/conf/domain_capabilities.c | 42 +++--
src/conf/domain_capabilities.h | 13 +-
src/conf/schemas/domaincaps.rng | 8 +
src/cpu/cpu.c | 25 +++
src/cpu/cpu.h | 8 +
src/cpu/cpu_arm.c | 1 +
src/cpu/cpu_ppc64.c | 67 ++++++--
src/cpu/cpu_x86.c | 19 +++
src/libvirt_private.syms | 1 +
src/qemu/qemu_capabilities.c | 65 +++++---
src/qemu/qemu_capabilities.h | 4 +-
src/qemu/qemu_command.c | 2 +-
src/qemu/qemu_monitor.c | 7 +-
src/qemu/qemu_monitor.h | 5 +-
src/qemu/qemu_monitor_json.c | 11 +-
src/qemu/qemu_monitor_json.h | 1 -
src/qemu/qemu_process.c | 12 +-
tests/cputest.c | 15 +-
.../domaincapsdata/qemu_4.2.0-q35.x86_64.xml | 104 ++++++------
.../domaincapsdata/qemu_4.2.0-tcg.x86_64.xml | 104 ++++++------
.../qemu_4.2.0-virt.aarch64.xml | 72 ++++-----
tests/domaincapsdata/qemu_4.2.0.aarch64.xml | 72 ++++-----
tests/domaincapsdata/qemu_4.2.0.ppc64.xml | 6 +-
tests/domaincapsdata/qemu_4.2.0.s390x.xml | 148 +++++++++---------
tests/domaincapsdata/qemu_4.2.0.x86_64.xml | 104 ++++++------
.../domaincapsdata/qemu_5.0.0-q35.x86_64.xml | 108 ++++++-------
.../domaincapsdata/qemu_5.0.0-tcg.x86_64.xml | 108 ++++++-------
.../qemu_5.0.0-virt.aarch64.xml | 74 ++++-----
tests/domaincapsdata/qemu_5.0.0.aarch64.xml | 74 ++++-----
tests/domaincapsdata/qemu_5.0.0.ppc64.xml | 8 +-
tests/domaincapsdata/qemu_5.0.0.x86_64.xml | 108 ++++++-------
.../domaincapsdata/qemu_5.1.0-q35.x86_64.xml | 108 ++++++-------
.../domaincapsdata/qemu_5.1.0-tcg.x86_64.xml | 108 ++++++-------
tests/domaincapsdata/qemu_5.1.0.x86_64.xml | 108 ++++++-------
.../domaincapsdata/qemu_5.2.0-q35.x86_64.xml | 108 ++++++-------
.../domaincapsdata/qemu_5.2.0-tcg.x86_64.xml | 108 ++++++-------
.../qemu_5.2.0-virt.aarch64.xml | 74 ++++-----
tests/domaincapsdata/qemu_5.2.0.aarch64.xml | 74 ++++-----
tests/domaincapsdata/qemu_5.2.0.ppc64.xml | 8 +-
tests/domaincapsdata/qemu_5.2.0.s390x.xml | 148 +++++++++---------
tests/domaincapsdata/qemu_5.2.0.x86_64.xml | 108 ++++++-------
.../domaincapsdata/qemu_6.0.0-q35.x86_64.xml | 110 ++++++-------
.../domaincapsdata/qemu_6.0.0-tcg.x86_64.xml | 110 ++++++-------
.../qemu_6.0.0-virt.aarch64.xml | 76 ++++-----
tests/domaincapsdata/qemu_6.0.0.aarch64.xml | 76 ++++-----
tests/domaincapsdata/qemu_6.0.0.s390x.xml | 148 +++++++++---------
tests/domaincapsdata/qemu_6.0.0.x86_64.xml | 110 ++++++-------
.../domaincapsdata/qemu_6.1.0-q35.x86_64.xml | 110 ++++++-------
.../domaincapsdata/qemu_6.1.0-tcg.x86_64.xml | 110 ++++++-------
tests/domaincapsdata/qemu_6.1.0.x86_64.xml | 110 ++++++-------
.../domaincapsdata/qemu_6.2.0-q35.x86_64.xml | 110 ++++++-------
.../domaincapsdata/qemu_6.2.0-tcg.x86_64.xml | 110 ++++++-------
.../qemu_6.2.0-virt.aarch64.xml | 78 ++++-----
tests/domaincapsdata/qemu_6.2.0.aarch64.xml | 78 ++++-----
tests/domaincapsdata/qemu_6.2.0.ppc64.xml | 8 +-
tests/domaincapsdata/qemu_6.2.0.x86_64.xml | 110 ++++++-------
.../domaincapsdata/qemu_7.0.0-q35.x86_64.xml | 110 ++++++-------
.../domaincapsdata/qemu_7.0.0-tcg.x86_64.xml | 110 ++++++-------
.../qemu_7.0.0-virt.aarch64.xml | 78 ++++-----
tests/domaincapsdata/qemu_7.0.0.aarch64.xml | 78 ++++-----
tests/domaincapsdata/qemu_7.0.0.ppc64.xml | 8 +-
tests/domaincapsdata/qemu_7.0.0.x86_64.xml | 110 ++++++-------
.../domaincapsdata/qemu_7.1.0-q35.x86_64.xml | 106 ++++++-------
.../domaincapsdata/qemu_7.1.0-tcg.x86_64.xml | 106 ++++++-------
tests/domaincapsdata/qemu_7.1.0.x86_64.xml | 106 ++++++-------
67 files changed, 2389 insertions(+), 2256 deletions(-)
--
2.37.3
2 years, 1 month
[PATCH v2 0/2] qemu: tpm: Improve TPM state files management
by Stefan Berger
This series of patches adds the --keep-tpm and --tpm flags to virsh for
keeping and removing the TPM state directory structure when a VM is
undefined. It also fixes the removal of state when a VM is migrated so
that the state files are removed on the source upon successful
migration and deleted on the destination after migration failure.
Regards,
Stefan
v2:
- addressed Michal's comments on v1
Stefan Berger (2):
qemu: Add UNDEFINE_TPM and UNDEFINE_KEEP_TPM flags
qemu: tpm: Remove TPM state after successful migration
docs/manpages/virsh.rst | 6 ++++++
include/libvirt/libvirt-domain.h | 4 ++++
src/qemu/qemu_domain.c | 12 +++++++-----
src/qemu/qemu_domain.h | 3 ++-
src/qemu/qemu_driver.c | 31 ++++++++++++++++++++-----------
src/qemu/qemu_extdevice.c | 5 +++--
src/qemu/qemu_extdevice.h | 3 ++-
src/qemu/qemu_migration.c | 13 +++++++------
src/qemu/qemu_process.c | 4 ++--
src/qemu/qemu_snapshot.c | 4 ++--
src/qemu/qemu_tpm.c | 18 ++++++++++++++----
src/qemu/qemu_tpm.h | 3 ++-
tools/virsh-domain.c | 15 +++++++++++++++
13 files changed, 86 insertions(+), 35 deletions(-)
--
2.37.3
2 years, 1 month
[PATCH 00/43] XML parsing helper cleanup
by Peter Krempa
This series cleans up the use of virXMLParse* macros and tries to unify
and remove the uncommon ones.
In next step since virXMLParse itself has features which can replace
open-coded bits in conf parsers for all various object types we have,
this series cleans them up too.
Peter Krempa (43):
util: xml: Expose all arguments of virXMLParseHelper in virXMLParse
macro
conf: nwfilderbindigobj: Register automatic cleanup for
virNWFilterBindingObj
virNWFilterBindingObjParse: Refactor XML parsing code
vbox: snapshot_conf: Don't allocate XPath context explicitly
virVBoxSnapshotConfGet(RW|RO)DisksPathsFromLibvirtXML: Refactor
virNWFilterBindingDefParse: Properly use virXMLParse
conf: nwfilterbinding: Provide only virNWFilterBindingDefParse
tests: qemuxml2argv: Use virXMLParse properly
conf: networkport: Remove virNetworkPortDefParseNode
conf: networkportdef: Provide only virNetworkPortDefParse
testParseXMLDocFromFile: Refactor control flow
testParseXMLDocFromFile: Remove 'type' argument
testParseXMLDocFromFile: Validate that the replaced node is identical
with parsed root
conf: storage: Remove virStoragePoolDefParseNode
conf: storage: Provide only virStoragePoolDefParse
conf: storage: Remove virStorageVolDefParseNode
conf: storage: Provide only virStorageVolDefParse
conf: snapshot: Remove virDomainSnapshotDefParseNode
conf: secret: Refactor secretXMLParseNode
conf: secret: Provide only virSecretDefParse
prlsdkParseSnapshotTree: Simplify XML parsing code
conf: checkpoint: Remove virDomainCheckpointDefParseNode
conf: backup: Remove virDomainBackupDefParseNode
conf: nwfilter: Remove virNWFilterDefParseNode
conf: nwfilter: Provide only virNWFilterDefParse
conf: node_device: Remove virNodeDeviceDefParseNode
conf: nodedev: Provide only virNodeDeviceDefParse
conf: interface: Remove virInterfaceDefParseNode
conf: interface: Remove virInterfaceDefParseFile
conf: network: Remove virNetworkDefParseNode
conf: network: Provide only virNetworkDefParse
conf: domain: Remove virDomainObjParseNode
conf: domain: Simplify validation in virDomainDefParse
virDomainDefParseNode: Pass only the XPath context as argument
virsh: Use proper helper for parsing XML in virshDumpXML
util: xml: Remove virXMLParseString
qemu: capabilities: Convert virQEMUCapsLoadCache to virXMLParse
util: xml: Remove virXMLParseFile
util: xml: Remove virXMLParseCtxt
conf: savecookie: Remove virSaveCookieParseNode
security: aa-helper: Use virXMLParse instead of virXMLParseString
test_driver: Make callers of testOpenParse ensure the root element
name
util: xml: Remove virXMLParseStringCtxtRoot
src/conf/backup_conf.c | 42 ++------
src/conf/backup_conf.h | 10 +-
src/conf/checkpoint_conf.c | 42 +++-----
src/conf/domain_conf.c | 85 +++++-----------
src/conf/domain_conf.h | 7 +-
src/conf/interface_conf.c | 54 ++--------
src/conf/interface_conf.h | 7 +-
src/conf/network_conf.c | 50 ++--------
src/conf/network_conf.h | 16 +--
src/conf/node_device_conf.c | 57 ++---------
src/conf/node_device_conf.h | 25 ++---
src/conf/nwfilter_conf.c | 48 ++-------
src/conf/nwfilter_conf.h | 12 +--
src/conf/secret_conf.c | 44 ++------
src/conf/secret_conf.h | 7 +-
src/conf/snapshot_conf.c | 57 ++++-------
src/conf/snapshot_conf.h | 13 +--
src/conf/storage_conf.c | 108 +++-----------------
src/conf/storage_conf.h | 31 ++----
src/conf/virnetworkobj.c | 6 +-
src/conf/virnetworkportdef.c | 49 ++-------
src/conf/virnetworkportdef.h | 12 +--
src/conf/virnwfilterbindingdef.c | 51 ++--------
src/conf/virnwfilterbindingdef.h | 11 +-
src/conf/virnwfilterbindingobj.c | 66 +++---------
src/conf/virnwfilterbindingobj.h | 3 +-
src/conf/virnwfilterbindingobjlist.c | 2 +-
src/conf/virnwfilterobj.c | 2 +-
src/conf/virsavecookie.c | 31 ++----
src/conf/virsecretobj.c | 2 +-
src/conf/virstorageobj.c | 4 +-
src/esx/esx_network_driver.c | 2 +-
src/esx/esx_storage_backend_vmfs.c | 4 +-
src/hypervisor/domain_driver.c | 7 +-
src/libvirt_private.syms | 41 +++-----
src/network/bridge_driver.c | 10 +-
src/node_device/node_device_driver.c | 8 +-
src/nwfilter/nwfilter_driver.c | 4 +-
src/qemu/qemu_capabilities.c | 15 +--
src/qemu/qemu_domain.c | 9 +-
src/qemu/qemu_migration_cookie.c | 10 +-
src/qemu/qemu_process.c | 2 +-
src/secret/secret_driver.c | 2 +-
src/security/virt-aa-helper.c | 9 +-
src/storage/storage_driver.c | 10 +-
src/test/test_driver.c | 138 +++++++++++---------------
src/util/virxml.h | 50 ++--------
src/vbox/vbox_network.c | 2 +-
src/vbox/vbox_snapshot_conf.c | 129 +++++++-----------------
src/vbox/vbox_storage.c | 2 +-
src/vz/vz_sdk.c | 18 +---
tests/networkxml2conftest.c | 2 +-
tests/networkxml2firewalltest.c | 2 +-
tests/networkxml2xmltest.c | 2 +-
tests/networkxml2xmlupdatetest.c | 2 +-
tests/nodedevmdevctltest.c | 8 +-
tests/nodedevxml2xmltest.c | 3 +-
tests/nwfilterxml2firewalltest.c | 2 +-
tests/nwfilterxml2xmltest.c | 2 +-
tests/qemuxml2argvtest.c | 19 +---
tests/secretxml2xmltest.c | 2 +-
tests/storagepoolxml2argvtest.c | 2 +-
tests/storagepoolxml2xmltest.c | 2 +-
tests/storagevolxml2argvtest.c | 8 +-
tests/storagevolxml2xmltest.c | 4 +-
tests/virnetworkportxml2xmltest.c | 2 +-
tests/virnwfilterbindingxml2xmltest.c | 2 +-
tests/virschematest.c | 2 +-
tools/virsh-util.c | 5 +-
69 files changed, 399 insertions(+), 1098 deletions(-)
--
2.37.3
2 years, 1 month