[libvirt] [jenkins-ci PATCH] Use all_machines whenever possible
by Andrea Bolognani
The reasons we had to prevent some targets from building
libvirt-dbus and libvirt-ocaml in the past clearly no longer
apply, since we're back to building them on all targets.
Drop the explicit target list and use all_machines instead.
Signed-off-by: Andrea Bolognani <abologna(a)redhat.com>
---
Pushed as trivial.
guests/playbooks/build/projects/libvirt-dbus.yml | 14 +-------------
guests/playbooks/build/projects/libvirt-ocaml.yml | 14 +-------------
jenkins/projects/libvirt-dbus.yaml | 10 +---------
jenkins/projects/libvirt-ocaml.yaml | 10 +---------
4 files changed, 4 insertions(+), 44 deletions(-)
diff --git a/guests/playbooks/build/projects/libvirt-dbus.yml b/guests/playbooks/build/projects/libvirt-dbus.yml
index a6ff025..218bcc1 100644
--- a/guests/playbooks/build/projects/libvirt-dbus.yml
+++ b/guests/playbooks/build/projects/libvirt-dbus.yml
@@ -1,19 +1,7 @@
---
- set_fact:
name: libvirt-dbus
- machines:
- - libvirt-centos-7
- - libvirt-debian-9
- - libvirt-debian-10
- - libvirt-debian-sid
- - libvirt-fedora-29
- - libvirt-fedora-30
- - libvirt-fedora-rawhide
- - libvirt-freebsd-11
- - libvirt-freebsd-12
- - libvirt-freebsd-current
- - libvirt-ubuntu-16
- - libvirt-ubuntu-18
+ machines: '{{ all_machines }}'
archive_format: xz
git_url: '{{ git_urls["libvirt-dbus"][git_remote] }}'
diff --git a/guests/playbooks/build/projects/libvirt-ocaml.yml b/guests/playbooks/build/projects/libvirt-ocaml.yml
index 58f017b..4202835 100644
--- a/guests/playbooks/build/projects/libvirt-ocaml.yml
+++ b/guests/playbooks/build/projects/libvirt-ocaml.yml
@@ -1,19 +1,7 @@
---
- set_fact:
name: libvirt-ocaml
- machines:
- - libvirt-centos-7
- - libvirt-debian-9
- - libvirt-debian-10
- - libvirt-debian-sid
- - libvirt-fedora-29
- - libvirt-fedora-30
- - libvirt-fedora-rawhide
- - libvirt-freebsd-11
- - libvirt-freebsd-12
- - libvirt-freebsd-current
- - libvirt-ubuntu-16
- - libvirt-ubuntu-18
+ machines: '{{ all_machines }}'
archive_format: xz
git_url: '{{ git_urls["libvirt-ocaml"][git_remote] }}'
diff --git a/jenkins/projects/libvirt-dbus.yaml b/jenkins/projects/libvirt-dbus.yaml
index 2b72fb4..f7a52ef 100644
--- a/jenkins/projects/libvirt-dbus.yaml
+++ b/jenkins/projects/libvirt-dbus.yaml
@@ -1,15 +1,7 @@
---
- project:
name: libvirt-dbus
- machines:
- - libvirt-centos-7
- - libvirt-debian-9
- - libvirt-debian-10
- - libvirt-fedora-29
- - libvirt-fedora-30
- - libvirt-fedora-rawhide
- - libvirt-freebsd-11
- - libvirt-freebsd-12
+ machines: '{all_machines}'
title: Libvirt D-Bus
archive_format: xz
git_url: '{git_urls[libvirt-dbus][default]}'
diff --git a/jenkins/projects/libvirt-ocaml.yaml b/jenkins/projects/libvirt-ocaml.yaml
index 0c819cc..4a9bb65 100644
--- a/jenkins/projects/libvirt-ocaml.yaml
+++ b/jenkins/projects/libvirt-ocaml.yaml
@@ -1,15 +1,7 @@
---
- project:
name: libvirt-ocaml
- machines:
- - libvirt-centos-7
- - libvirt-debian-9
- - libvirt-debian-10
- - libvirt-fedora-29
- - libvirt-fedora-30
- - libvirt-fedora-rawhide
- - libvirt-freebsd-11
- - libvirt-freebsd-12
+ machines: '{all_machines}'
title: Libvirt OCaml
archive_format: xz
git_url: '{git_urls[libvirt-ocaml][default]}'
--
2.21.0
5 years, 1 month
[libvirt] [PATCH] virsh: fixed handling of targetless disks (e.g. empty CDROM) in 'domblkinfo' cmd
by Pavel Mores
virDomainGetBlockInfo() returns error if called on a disk with no target
(a targetless disk might be a removable media drive with no media in it,
for instance an empty CDROM drive).
So far this caused the virsh domblkinfo --all command to abort and ignore
any remaining (not yet displayed) disk devices. This patch fixes it by
ignoring virDomainGetBlockInfo() errors for CDROM and floppy drives,
similar to how it's done for network drives.
https://bugzilla.redhat.com/show_bug.cgi?id=1619625
Signed-off-by: Pavel Mores <pmores(a)redhat.com>
---
tools/virsh-domain-monitor.c | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/tools/virsh-domain-monitor.c b/tools/virsh-domain-monitor.c
index 0e2c4191d7..0f495c1a3f 100644
--- a/tools/virsh-domain-monitor.c
+++ b/tools/virsh-domain-monitor.c
@@ -473,6 +473,7 @@ cmdDomblkinfo(vshControl *ctl, const vshCmd *cmd)
char *cap = NULL;
char *alloc = NULL;
char *phy = NULL;
+ char *device_type = NULL;
vshTablePtr table = NULL;
if (!(dom = virshCommandOptDomain(ctl, cmd, NULL)))
@@ -510,6 +511,8 @@ cmdDomblkinfo(vshControl *ctl, const vshCmd *cmd)
rc = virDomainGetBlockInfo(dom, target, &info, 0);
if (rc < 0) {
+ device_type = virXPathString("string(./@device)", ctxt);
+
/* If protocol is present that's an indication of a networked
* storage device which cannot provide statistics, so generate
* 0 based data and get the next disk. */
@@ -518,9 +521,16 @@ cmdDomblkinfo(vshControl *ctl, const vshCmd *cmd)
virGetLastErrorDomain() == VIR_FROM_STORAGE) {
memset(&info, 0, sizeof(info));
vshResetLibvirtError();
+ } else if (device_type != NULL &&
+ (STRCASEEQ(device_type, "cdrom") ||
+ STRCASEEQ(device_type, "floppy"))) {
+ memset(&info, 0, sizeof(info));
+ vshResetLibvirtError();
} else {
goto cleanup;
}
+
+ VIR_FREE(device_type);
}
if (!cmdDomblkinfoGet(ctl, &info, &cap, &alloc, &phy, human))
@@ -556,6 +566,7 @@ cmdDomblkinfo(vshControl *ctl, const vshCmd *cmd)
VIR_FREE(target);
VIR_FREE(protocol);
VIR_FREE(disks);
+ VIR_FREE(device_type);
xmlXPathFreeContext(ctxt);
xmlFreeDoc(xmldoc);
return ret;
--
2.21.0
5 years, 1 month
[libvirt] [PATCH 00/11] build: eliminate many redundant/obsolete gnulib modules
by Daniel P. Berrangé
The modues in this series are either obsolete (problems now fixed), or
redundant (fixing problems we never cared about - hello AIX
portability), or trivially replaced.
Daniel P. Berrangé (11):
bhyve: stop using private gnulib _getopt_internal_r func
build: drop the getopt-posix gnulib module
build: drop the inet_pton gnulib module
build: drop the mktempd gnulib module
util: drop the stpcpy gnulib module
Revert "build: use autobuild module to make build logs nicer"
build: drop the usleep gnulib module
build: drop the stdarg gnulib module
build: drop the gitlog-to-changelog gnulib module
build: drop the perror gnulib module
build: drop the pthread gnulib module
Makefile.am | 1 -
bootstrap.conf | 10 ----
configure.ac | 6 ---
po/POTFILES | 1 -
src/bhyve/bhyve_parse_command.c | 88 +++++++++++++++++----------------
src/util/virerror.c | 5 +-
tests/test-lib.sh | 3 +-
7 files changed, 50 insertions(+), 64 deletions(-)
--
2.21.0
5 years, 1 month
[libvirt] [RFC] cpu_map: Remove pconfig from Icelake-Server CPU model
by Eduardo Habkost
The pconfig feature never worked, and adding "pconfig=off" to the
QEMU command-line triggers a regression in QEMU 3.1.1 and 4.0.0.
Signed-off-by: Eduardo Habkost <ehabkost(a)redhat.com>
---
I'm sending this as an RFC because I couldn't test it properly,
and because I don't know what are the consequences of changing
cpu_map between libvirt versions.
---
src/cpu_map/x86_Icelake-Server.xml | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/src/cpu_map/x86_Icelake-Server.xml b/src/cpu_map/x86_Icelake-Server.xml
index fb15977a59..188a781282 100644
--- a/src/cpu_map/x86_Icelake-Server.xml
+++ b/src/cpu_map/x86_Icelake-Server.xml
@@ -56,7 +56,9 @@
<feature name='pat'/>
<feature name='pcid'/>
<feature name='pclmuldq'/>
- <feature name='pconfig'/>
+ <!-- 'pconfig' was added by accident in QEMU 3.1.0 but never worked.
+ It was removed in QEMU 3.1.1 and 4.0.0. See QEMU commits
+ 76e5a4d58357 and 712f807e1965 for details -->
<feature name='pdpe1gb'/>
<feature name='pge'/>
<feature name='pku'/>
--
2.21.0
5 years, 1 month
[libvirt] [jenkins-ci PATCH 00/17] Meson, more meson!
by Fabiano Fidêncio
This patch series is fixing a few problems at the very same time. Would
be better to split it and have a few series depending on each other?
Maybe!
Okay, the very first patch fixes teaches libvirt-jenkins-ci to deal with
multilib path in systems where it matters as Meson uses it by default.
The next 12 patches are basically adding the whole machinery we'll need
to perform meson builds on OSes where we do not have Meson packaged at
all or the Meson version is older than the minimum required by our
projects which already adopted it (0.49.0).
Next 3 patches build and test osinfo-db-tools, osinfo-db, and libosinfo
on all supported machines as those now have the minimum requirements
needed.
Last patch in the series does the libvirt-dbus builds switch to using
meson instead of autotools.
Fabiano Fidêncio (17):
guests: Deal with multilib path
guests: CentOS7 provides python3
guests: Install EPEL on CentOS7
guests: Map python36-* CentOS7 packages
mappings: Mark the OSes where meson is not supported
guests: Add meson to the base project
mappings: Add ninja
guests: Add ninja to the base project
Deal with ninja x ninja-build bin names
guests: Keep base project's packages sorted
mappings: Add python3-pip
guests: Add pip to the base project
guests: Install meson via pip
osinfo-db-tools: Build again on all machines
libosinfo: Build again on all machines
osinfo-db: Build again on all machines
Switch libvirt-dbus builds to meson
guests/host_vars/libvirt-centos-7/main.yml | 2 ++
guests/host_vars/libvirt-debian-9/main.yml | 2 ++
guests/host_vars/libvirt-ubuntu-16/main.yml | 2 ++
guests/host_vars/libvirt-ubuntu-18/main.yml | 2 ++
guests/lcitool | 13 +++++++++
.../playbooks/build/jobs/meson-build-job.yml | 4 +--
.../playbooks/build/jobs/meson-check-job.yml | 2 +-
guests/playbooks/build/jobs/meson-rpm-job.yml | 2 +-
guests/playbooks/build/projects/libosinfo.yml | 12 +--------
.../playbooks/build/projects/libvirt-dbus.yml | 23 +++-------------
.../build/projects/osinfo-db-tools.yml | 12 +--------
guests/playbooks/build/projects/osinfo-db.yml | 14 +---------
guests/playbooks/update/tasks/base.yml | 7 +++++
guests/playbooks/update/tasks/packages.yml | 8 ++++++
guests/playbooks/update/tasks/paths.yml | 15 +++++++++++
guests/playbooks/update/templates/bashrc.j2 | 18 +++++++++++++
guests/vars/mappings.yml | 27 ++++++++++++++-----
guests/vars/projects/base.yml | 5 +++-
guests/vars/projects/libosinfo+mingw32.yml | 1 -
guests/vars/projects/libosinfo+mingw64.yml | 1 -
guests/vars/projects/libosinfo.yml | 1 -
.../vars/projects/osinfo-db-tools+mingw32.yml | 1 -
.../vars/projects/osinfo-db-tools+mingw64.yml | 1 -
guests/vars/projects/osinfo-db-tools.yml | 1 -
jenkins/jobs/meson.yaml | 8 +++---
jenkins/projects/libosinfo.yaml | 8 +-----
jenkins/projects/libvirt-dbus.yaml | 18 +++----------
jenkins/projects/osinfo-db-tools.yaml | 10 +------
jenkins/projects/osinfo-db.yaml | 10 +------
29 files changed, 114 insertions(+), 116 deletions(-)
--
2.23.0
5 years, 1 month
[libvirt] [virttools-planet PATCH v2] Add Stefano Garzarella to Planet virttools
by Stefano Garzarella
Signed-off-by: Stefano Garzarella <sgarzare(a)redhat.com>
---
v2:
- add the binary diff of the image
---
updater/virt-tools/config.ini | 6 ++++++
updater/virt-tools/images/sgarzare.png | Bin 0 -> 17713 bytes
2 files changed, 6 insertions(+)
create mode 100644 updater/virt-tools/images/sgarzare.png
diff --git a/updater/virt-tools/config.ini b/updater/virt-tools/config.ini
index 3845f25..6b4b5ec 100644
--- a/updater/virt-tools/config.ini
+++ b/updater/virt-tools/config.ini
@@ -188,3 +188,9 @@ name = Yoni Bettan
face = ybettan.png
facewidth = 52
faceheight = 80
+
+[https://stefano-garzarella.github.io/posts/index.xml]
+name = Stefano Garzarella
+face = sgarzare.png
+facewidth = 89
+faceheight = 96
diff --git a/updater/virt-tools/images/sgarzare.png b/updater/virt-tools/images/sgarzare.png
new file mode 100644
index 0000000000000000000000000000000000000000..bf53f8a5f0ddc7cb5e7c877a37e9c58507b0a117
GIT binary patch
literal 17713
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
literal 0
HcmV?d00001
--
2.21.0
5 years, 1 month
[libvirt] [virttools-planet PATCH] Add Stefano Garzarella to Planet virttools
by Stefano Garzarella
Signed-off-by: Stefano Garzarella <sgarzare(a)redhat.com>
---
updater/virt-tools/config.ini | 6 ++++++
updater/virt-tools/images/sgarzare.png | Bin 0 -> 17713 bytes
2 files changed, 6 insertions(+)
create mode 100644 updater/virt-tools/images/sgarzare.png
diff --git a/updater/virt-tools/config.ini b/updater/virt-tools/config.ini
index 3845f25..6b4b5ec 100644
--- a/updater/virt-tools/config.ini
+++ b/updater/virt-tools/config.ini
@@ -188,3 +188,9 @@ name = Yoni Bettan
face = ybettan.png
facewidth = 52
faceheight = 80
+
+[https://stefano-garzarella.github.io/posts/index.xml]
+name = Stefano Garzarella
+face = sgarzare.png
+facewidth = 89
+faceheight = 96
diff --git a/updater/virt-tools/images/sgarzare.png b/updater/virt-tools/images/sgarzare.png
new file mode 100644
index 0000000..bf53f8a
Binary files /dev/null and b/updater/virt-tools/images/sgarzare.png differ
--
2.21.0
5 years, 1 month
[libvirt] [PATCH v2] dirty-bitmaps: remove deprecated autoload parameter
by John Snow
This parameter has been deprecated since 2.12.0 and is eligible for
removal. Remove this parameter as it is actually completely ignored;
let's not give false hope.
Signed-off-by: John Snow <jsnow(a)redhat.com>
Reviewed-by: Eric Blake <eblake(a)redhat.com>
Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov(a)virtuozzo.com>
---
V2: Change 2.12.0 -> 4.2.0 in removed section.
Adjust phrasing to match.
qemu-deprecated.texi | 20 +++++++++++++++-----
qapi/block-core.json | 6 +-----
blockdev.c | 6 ------
3 files changed, 16 insertions(+), 16 deletions(-)
diff --git a/qemu-deprecated.texi b/qemu-deprecated.texi
index 01245e0b1c..d60246d5d6 100644
--- a/qemu-deprecated.texi
+++ b/qemu-deprecated.texi
@@ -149,11 +149,6 @@ QEMU 4.1 has three options, please migrate to one of these three:
@section QEMU Machine Protocol (QMP) commands
-@subsection block-dirty-bitmap-add "autoload" parameter (since 2.12.0)
-
-"autoload" parameter is now ignored. All bitmaps are automatically loaded
-from qcow2 images.
-
@subsection query-block result field dirty-bitmaps[i].status (since 4.0)
The ``status'' field of the ``BlockDirtyInfo'' structure, returned by
@@ -356,3 +351,18 @@ existing CPU models. Management software that needs runnability
guarantees must resolve the CPU model aliases using te
``alias-of'' field returned by the ``query-cpu-definitions'' QMP
command.
+
+
+@node Recently removed features
+@appendix Recently removed features
+
+What follows is a record of recently removed, formerly deprecated
+features that serves as a record for users who have encountered
+trouble after a recent upgrade.
+
+@section QEMU Machine Protocol (QMP) commands
+
+@subsection block-dirty-bitmap-add "autoload" parameter (since 2.12.0)
+
+"autoload" parameter is now ignored. All bitmaps are automatically loaded
+from qcow2 images.
diff --git a/qapi/block-core.json b/qapi/block-core.json
index e6edd641f1..e4975ece4a 100644
--- a/qapi/block-core.json
+++ b/qapi/block-core.json
@@ -1987,10 +1987,6 @@
# Qcow2 disks support persistent bitmaps. Default is false for
# block-dirty-bitmap-add. (Since: 2.10)
#
-# @autoload: ignored and deprecated since 2.12.
-# Currently, all dirty tracking bitmaps are loaded from Qcow2 on
-# open.
-#
# @disabled: the bitmap is created in the disabled state, which means that
# it will not track drive changes. The bitmap may be enabled with
# block-dirty-bitmap-enable. Default is false. (Since: 4.0)
@@ -1999,7 +1995,7 @@
##
{ 'struct': 'BlockDirtyBitmapAdd',
'data': { 'node': 'str', 'name': 'str', '*granularity': 'uint32',
- '*persistent': 'bool', '*autoload': 'bool', '*disabled': 'bool' } }
+ '*persistent': 'bool', '*disabled': 'bool' } }
##
# @BlockDirtyBitmapMergeSource:
diff --git a/blockdev.c b/blockdev.c
index fbef6845c8..93804da840 100644
--- a/blockdev.c
+++ b/blockdev.c
@@ -1966,7 +1966,6 @@ static void block_dirty_bitmap_add_prepare(BlkActionState *common,
qmp_block_dirty_bitmap_add(action->node, action->name,
action->has_granularity, action->granularity,
action->has_persistent, action->persistent,
- action->has_autoload, action->autoload,
action->has_disabled, action->disabled,
&local_err);
@@ -2858,7 +2857,6 @@ out:
void qmp_block_dirty_bitmap_add(const char *node, const char *name,
bool has_granularity, uint32_t granularity,
bool has_persistent, bool persistent,
- bool has_autoload, bool autoload,
bool has_disabled, bool disabled,
Error **errp)
{
@@ -2890,10 +2888,6 @@ void qmp_block_dirty_bitmap_add(const char *node, const char *name,
persistent = false;
}
- if (has_autoload) {
- warn_report("Autoload option is deprecated and its value is ignored");
- }
-
if (!has_disabled) {
disabled = false;
}
--
2.21.0
5 years, 1 month
[libvirt] [PATCH v4 00/12] remove repetition of URI path validation
by Daniel Henrique Barboza
This is a code repetition that I crossed a few times, then
I noticed that Cole Robinson suggested a solution for it
in the wiki. Here it is.
changes from v3:
- patch 8: fix the exception logic, move the code formatting
to patch 1
- patch 9: use lowcase 'qemu'
- patch 12: (optional) test case I created to aid in patch 8
logic
changes from v2:
- use a boolean to determine 'QEMU' and 'vbox' case to avoid block
repetition (patch 8)
- avoid 80+ chars lines in all patches
changes from v1:
- handle QEMU and vbox cases separately inside the validation
function
v3: https://www.redhat.com/archives/libvir-list/2019-September/msg01122.html
v2: https://www.redhat.com/archives/libvir-list/2019-September/msg01007.html
v1: https://www.redhat.com/archives/libvir-list/2019-September/msg00983.html
Daniel Henrique Barboza (12):
src/driver.c: add virConnectValidateURIPath()
interface_backend_netcf.c: use virConnectValidateURIPath()
interface_backend_udev.c: use virConnectValidateURIPath()
bridge_driver.c: virConnectValidateURIPath()
node_device_driver.c: use virConnectValidateURIPath()
secret_driver.c: use virConnectValidateURIPath()
storage_driver.c: use virConnectValidateURIPath()
driver.c: change URI validation to handle QEMU and vbox case
qemu_driver.c: use virConnectValidateURIPath()
vbox_common.c: use virConnectValidateURIPath()
vbox_driver.c: use virConnectValidateURIPath()
tests: add a test for driver.c:virConnectValidateURIPath()
src/driver.c | 38 +++++
src/driver.h | 4 +
src/interface/interface_backend_netcf.c | 19 +--
src/interface/interface_backend_udev.c | 19 +--
src/libvirt_private.syms | 1 +
src/network/bridge_driver.c | 19 +--
src/node_device/node_device_driver.c | 19 +--
src/qemu/qemu_driver.c | 20 +--
src/secret/secret_driver.c | 19 +--
src/storage/storage_driver.c | 19 +--
src/vbox/vbox_common.c | 16 +-
src/vbox/vbox_driver.c | 16 +-
tests/Makefile.am | 7 +-
tests/virdriverconnvalidatetest.c | 186 ++++++++++++++++++++++++
14 files changed, 267 insertions(+), 135 deletions(-)
create mode 100644 tests/virdriverconnvalidatetest.c
--
2.21.0
5 years, 1 month