[libvirt] libvirt3.1.0 bug suspected: libvirtd restart, VM start/stop
by Stepan Andr
Hi all,
It seems there is a bug for libvirtd which I couldn't find here
<https://bugzilla.redhat.com/buglist.cgi?component=libvirt&limit=0&order=b...>
.
*Here is description:*
Version-Release number of selected component (if applicable):
Libvirt - 3.1.0 (built from tarball)
How reproducible:
100%
Precondition: libvirtd running. One VM is running, other(s) are 'shut off'.
Steps to Reproduce:
1. Stop libvirtd while VM#1 is running.
2. Start libvirtd (VM#1 is running).
3. Stop VM#1. Verify if VM#1 is present in the list of all VM's ('virsh
list --all').
4. Start VM#1. Verify if VM#1 is present in the list of all VM's ('virsh
list --all').
5. Go to step #3. Note: Steps may be needed to repeat two times.
Recover action:
restart libvirtd service (service libvirtd restart/systemctl restart
libvirtd).
Actual results:
#3. VM#1 disappears from the list of all VM's.
Expected results:
#3. VM#1 should be present in the list of all VM's.
--
Best regards,
Stepan
7 years, 9 months
[libvirt] [PATCH 0/8] Memory locking fixes
by Andrea Bolognani
A problem reported recently to the mailing list[1] uncovered
some flaws in the way we deal with setting the memory locking
limit for QEMU guests.
This series solves those issues and adds test suite coverage
to hopefully prevent more bugs from popping up in the future.
[1] https://www.redhat.com/archives/libvir-list/2017-March/msg00534.html
Andrea Bolognani (8):
Revert "qemu: Forbid <memoryBacking><locked> without
<memtune><hard_limit>"
qemu: Remove qemuDomainRequiresMemLock()
qemu: Fix memory locking limit calculation
process: Translate "unlimited" correctly
command: Introduce virCommandGetMaxMemLock()
tests: Introduce virTestCompareToULL()
tests: Introduce QEMU memory locking limit tests
docs: Improve documentation related to memory locking
docs/formatdomain.html.in | 36 +++--
src/libvirt_private.syms | 1 +
src/qemu/qemu_command.c | 4 +-
src/qemu/qemu_domain.c | 75 ++++-----
src/qemu/qemu_domain.h | 1 -
src/util/vircommand.c | 9 ++
src/util/vircommand.h | 2 +
src/util/virprocess.c | 20 ++-
tests/Makefile.am | 9 ++
.../qemumemlock-pc-hardlimit+hostdev.xml | 20 +++
.../qemumemlock-pc-hardlimit+locked+hostdev.xml | 23 +++
.../qemumemlock-pc-hardlimit+locked.xml | 17 ++
tests/qemumemlockdata/qemumemlock-pc-hardlimit.xml | 14 ++
tests/qemumemlockdata/qemumemlock-pc-hostdev.xml | 17 ++
tests/qemumemlockdata/qemumemlock-pc-kvm.xml | 11 ++
.../qemumemlock-pc-locked+hostdev.xml | 20 +++
tests/qemumemlockdata/qemumemlock-pc-locked.xml | 14 ++
tests/qemumemlockdata/qemumemlock-pc-tcg.xml | 11 ++
.../qemumemlock-pseries-hardlimit+hostdev.xml | 20 +++
...emumemlock-pseries-hardlimit+locked+hostdev.xml | 23 +++
.../qemumemlock-pseries-hardlimit+locked.xml | 17 ++
.../qemumemlock-pseries-hardlimit.xml | 14 ++
.../qemumemlock-pseries-hostdev.xml | 17 ++
tests/qemumemlockdata/qemumemlock-pseries-kvm.xml | 11 ++
.../qemumemlock-pseries-locked+hostdev.xml | 20 +++
.../qemumemlockdata/qemumemlock-pseries-locked.xml | 14 ++
tests/qemumemlockdata/qemumemlock-pseries-tcg.xml | 11 ++
tests/qemumemlocktest.c | 172 +++++++++++++++++++++
tests/qemuxml2argvdata/qemuxml2argv-mlock-on.xml | 3 -
tests/testutils.c | 27 ++++
tests/testutils.h | 2 +
31 files changed, 583 insertions(+), 72 deletions(-)
create mode 100644 tests/qemumemlockdata/qemumemlock-pc-hardlimit+hostdev.xml
create mode 100644 tests/qemumemlockdata/qemumemlock-pc-hardlimit+locked+hostdev.xml
create mode 100644 tests/qemumemlockdata/qemumemlock-pc-hardlimit+locked.xml
create mode 100644 tests/qemumemlockdata/qemumemlock-pc-hardlimit.xml
create mode 100644 tests/qemumemlockdata/qemumemlock-pc-hostdev.xml
create mode 100644 tests/qemumemlockdata/qemumemlock-pc-kvm.xml
create mode 100644 tests/qemumemlockdata/qemumemlock-pc-locked+hostdev.xml
create mode 100644 tests/qemumemlockdata/qemumemlock-pc-locked.xml
create mode 100644 tests/qemumemlockdata/qemumemlock-pc-tcg.xml
create mode 100644 tests/qemumemlockdata/qemumemlock-pseries-hardlimit+hostdev.xml
create mode 100644 tests/qemumemlockdata/qemumemlock-pseries-hardlimit+locked+hostdev.xml
create mode 100644 tests/qemumemlockdata/qemumemlock-pseries-hardlimit+locked.xml
create mode 100644 tests/qemumemlockdata/qemumemlock-pseries-hardlimit.xml
create mode 100644 tests/qemumemlockdata/qemumemlock-pseries-hostdev.xml
create mode 100644 tests/qemumemlockdata/qemumemlock-pseries-kvm.xml
create mode 100644 tests/qemumemlockdata/qemumemlock-pseries-locked+hostdev.xml
create mode 100644 tests/qemumemlockdata/qemumemlock-pseries-locked.xml
create mode 100644 tests/qemumemlockdata/qemumemlock-pseries-tcg.xml
create mode 100644 tests/qemumemlocktest.c
--
2.7.4
7 years, 9 months
[libvirt] [PATCH 0/2] Slightly rework domain ID handling
by Michal Privoznik
The first patch fixes an actual bug: our virConnectGetAllDomainStats API does
not fill out the domain ID, therefore users just see domain name and UUID.
And while fixing it I realized, that our virGetDomain function can do better.
However, given that we are in the freeze, I'd like to push just the first patch
and save the second for after the release as it touches a lot of places and
thus has a great potential o breaking things. Although, in my testing it
actually fixed some other places that we forgot to set domain ID.
Michal Privoznik (2):
qemuDomainGetStats: Copy domain ID too
virGetDomain: Set domain ID too
daemon/remote.c | 5 +----
src/bhyve/bhyve_driver.c | 20 +++++-------------
src/conf/domain_event.c | 11 +++++-----
src/conf/virdomainobjlist.c | 10 +++------
src/datatypes.c | 8 ++++++--
src/datatypes.h | 3 ++-
src/esx/esx_driver.c | 49 ++++++++++++++-------------------------------
src/hyperv/hyperv_wmi.c | 15 +++++---------
src/libxl/libxl_driver.c | 20 +++++-------------
src/libxl/libxl_migration.c | 2 +-
src/lxc/lxc_driver.c | 20 +++++-------------
src/openvz/openvz_driver.c | 24 ++++++----------------
src/phyp/phyp_driver.c | 12 +++--------
src/qemu/qemu_driver.c | 23 ++++++++-------------
src/qemu/qemu_migration.c | 4 ++--
src/remote/remote_driver.c | 5 +----
src/test/test_driver.c | 20 +++++-------------
src/uml/uml_driver.c | 15 +++++---------
src/vbox/vbox_common.c | 44 +++++++++++++++-------------------------
src/vmware/vmware_driver.c | 20 +++++-------------
src/vz/vz_driver.c | 22 ++++++--------------
src/xen/xen_driver.c | 28 ++++++--------------------
src/xenapi/xenapi_driver.c | 30 +++++++++++----------------
23 files changed, 129 insertions(+), 281 deletions(-)
--
2.10.2
7 years, 9 months
[libvirt] [PATCH 0/4] news: Add schema validation and tweak few details
by Peter Krempa
The file caused quite some trouble. Add schema validation so that breakage
is kept to a minimum.
Peter Krempa (4):
tests: schema: Add possibility to validate individual files
news: Introduce rules for the schema file and fix offending lines
schema: Introduce schema for the news.xml file
news: Add template for a <release> section
docs/news.xml | 64 +++++++++++++++++++++++++++++++++++---------
docs/schemas/news.rng | 73 +++++++++++++++++++++++++++++++++++++++++++++++++++
tests/virschematest.c | 36 ++++++++++++++++++++-----
3 files changed, 153 insertions(+), 20 deletions(-)
create mode 100644 docs/schemas/news.rng
--
2.12.1
7 years, 9 months
[libvirt] [PATCH 0/2] conf: do not steal pointers from the pool source
by Ján Tomko
https://bugzilla.redhat.com/show_bug.cgi?id=1436400
Ján Tomko (2):
schema: do not require name for certain pool types
conf: do not steal pointers from the pool source
docs/schemas/storagepool.rng | 27 +++++++++++++++++-----
src/conf/storage_conf.c | 5 ++--
tests/storagepoolxml2xmlin/pool-logical-noname.xml | 18 +++++++++++++++
.../storagepoolxml2xmlout/pool-logical-noname.xml | 19 +++++++++++++++
tests/storagepoolxml2xmltest.c | 1 +
5 files changed, 62 insertions(+), 8 deletions(-)
create mode 100644 tests/storagepoolxml2xmlin/pool-logical-noname.xml
create mode 100644 tests/storagepoolxml2xmlout/pool-logical-noname.xml
--
2.10.2
7 years, 9 months
[libvirt] [PATCH] storage: Fix build on i686
by Jiri Denemark
off_t is signed and it's size is the same as long only on 64b archs.
Thus it cannot be formatted as %lu.
Signed-off-by: Jiri Denemark <jdenemar(a)redhat.com>
---
src/storage/storage_backend_logical.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/storage/storage_backend_logical.c b/src/storage/storage_backend_logical.c
index 9ca6fd43b..d87aaf0b6 100644
--- a/src/storage/storage_backend_logical.c
+++ b/src/storage/storage_backend_logical.c
@@ -116,9 +116,9 @@ virStorageBackendLogicalInitializeDevice(const char *path)
if (size < 4 * PV_BLANK_SECTOR_SIZE) {
virReportError(VIR_ERR_OPERATION_UNSUPPORTED,
- _("cannot initialize '%s' detected size='%lu' less "
+ _("cannot initialize '%s' detected size='%zd' less "
"than minimum required='%d"),
- path, size, 4 * PV_BLANK_SECTOR_SIZE);
+ path, (ssize_t) size, 4 * PV_BLANK_SECTOR_SIZE);
goto cleanup;
}
if ((size = lseek(fd, 0, SEEK_SET)) == (off_t)-1) {
--
2.12.2
7 years, 9 months
[libvirt] [PATCHv2 0/2] Restore logical pool functionality
by Ján Tomko
John Ferlan (1):
storage: Better describe logical pool creation/definition parameters
Ján Tomko (1):
Revert "storage: Better describe logical pool creation/definition
parameters"
src/conf/storage_conf.c | 8 --------
tools/virsh.pod | 7 +++----
2 files changed, 3 insertions(+), 12 deletions(-)
--
2.10.2
7 years, 9 months
[libvirt] [PATCH] news: Fix typo in element name
by Jiri Denemark
Signed-off-by: Jiri Denemark <jdenemar(a)redhat.com>
---
Oops, pushed as trivial. We really need a schema for news.xml...
docs/news.xml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/docs/news.xml b/docs/news.xml
index 85a1d4d97..17186b954 100644
--- a/docs/news.xml
+++ b/docs/news.xml
@@ -72,7 +72,7 @@
introducing a new host device type in the XML.
</description>
</change>
- <changes>
+ <change>
<summary>
qemu: Add support for setting TSC frequency
</summary>
@@ -80,7 +80,7 @@
Setting TSC frequency is required to enable migration for domains
with 'invtsc' CPU feature turned on.
</description>
- </changes>
+ </change>
</section>
<section title="Improvements">
<change>
--
2.12.2
7 years, 9 months
[libvirt] [PATCH v2 0/7] Memory locking fixes
by Andrea Bolognani
Changes from [v1]:
* exit early from the loop in patch 2;
* dropped patch 5/8, as it's no longer needed;
* rewrote tests not to generate QEMU command line;
* changed documentation slightly.
[v1] https://www.redhat.com/archives/libvir-list/2017-March/msg01089.html
Andrea Bolognani (7):
Revert "qemu: Forbid <memoryBacking><locked> without
<memtune><hard_limit>"
qemu: Remove qemuDomainRequiresMemLock()
qemu: Fix memory locking limit calculation
process: Translate "unlimited" correctly
tests: Introduce virTestCompareToULL()
tests: Introduce QEMU memory locking limit tests
docs: Improve documentation related to memory locking
docs/formatdomain.html.in | 39 ++++--
src/qemu/qemu_command.c | 4 +-
src/qemu/qemu_domain.c | 76 ++++------
src/qemu/qemu_domain.h | 1 -
src/util/virprocess.c | 20 ++-
tests/Makefile.am | 9 ++
.../qemumemlock-pc-hardlimit+hostdev.xml | 20 +++
.../qemumemlock-pc-hardlimit+locked+hostdev.xml | 23 ++++
.../qemumemlock-pc-hardlimit+locked.xml | 17 +++
tests/qemumemlockdata/qemumemlock-pc-hardlimit.xml | 14 ++
tests/qemumemlockdata/qemumemlock-pc-hostdev.xml | 17 +++
tests/qemumemlockdata/qemumemlock-pc-kvm.xml | 11 ++
.../qemumemlock-pc-locked+hostdev.xml | 20 +++
tests/qemumemlockdata/qemumemlock-pc-locked.xml | 14 ++
tests/qemumemlockdata/qemumemlock-pc-tcg.xml | 11 ++
.../qemumemlock-pseries-hardlimit+hostdev.xml | 20 +++
...emumemlock-pseries-hardlimit+locked+hostdev.xml | 23 ++++
.../qemumemlock-pseries-hardlimit+locked.xml | 17 +++
.../qemumemlock-pseries-hardlimit.xml | 14 ++
.../qemumemlock-pseries-hostdev.xml | 17 +++
tests/qemumemlockdata/qemumemlock-pseries-kvm.xml | 11 ++
.../qemumemlock-pseries-locked+hostdev.xml | 20 +++
.../qemumemlockdata/qemumemlock-pseries-locked.xml | 14 ++
tests/qemumemlockdata/qemumemlock-pseries-tcg.xml | 11 ++
tests/qemumemlocktest.c | 153 +++++++++++++++++++++
tests/qemuxml2argvdata/qemuxml2argv-mlock-on.xml | 3 -
tests/testutils.c | 27 ++++
tests/testutils.h | 2 +
28 files changed, 556 insertions(+), 72 deletions(-)
create mode 100644 tests/qemumemlockdata/qemumemlock-pc-hardlimit+hostdev.xml
create mode 100644 tests/qemumemlockdata/qemumemlock-pc-hardlimit+locked+hostdev.xml
create mode 100644 tests/qemumemlockdata/qemumemlock-pc-hardlimit+locked.xml
create mode 100644 tests/qemumemlockdata/qemumemlock-pc-hardlimit.xml
create mode 100644 tests/qemumemlockdata/qemumemlock-pc-hostdev.xml
create mode 100644 tests/qemumemlockdata/qemumemlock-pc-kvm.xml
create mode 100644 tests/qemumemlockdata/qemumemlock-pc-locked+hostdev.xml
create mode 100644 tests/qemumemlockdata/qemumemlock-pc-locked.xml
create mode 100644 tests/qemumemlockdata/qemumemlock-pc-tcg.xml
create mode 100644 tests/qemumemlockdata/qemumemlock-pseries-hardlimit+hostdev.xml
create mode 100644 tests/qemumemlockdata/qemumemlock-pseries-hardlimit+locked+hostdev.xml
create mode 100644 tests/qemumemlockdata/qemumemlock-pseries-hardlimit+locked.xml
create mode 100644 tests/qemumemlockdata/qemumemlock-pseries-hardlimit.xml
create mode 100644 tests/qemumemlockdata/qemumemlock-pseries-hostdev.xml
create mode 100644 tests/qemumemlockdata/qemumemlock-pseries-kvm.xml
create mode 100644 tests/qemumemlockdata/qemumemlock-pseries-locked+hostdev.xml
create mode 100644 tests/qemumemlockdata/qemumemlock-pseries-locked.xml
create mode 100644 tests/qemumemlockdata/qemumemlock-pseries-tcg.xml
create mode 100644 tests/qemumemlocktest.c
--
2.7.4
7 years, 9 months
[libvirt] [PATCH] Revert "storage: Better describe logical pool creation/definition parameters"
by Ján Tomko
This reverts commit ca4515d2639057020c749470f390fe1f5981e91e
which broke the functionality of logical storage pools
not named after their volume groups.
---
src/conf/storage_conf.c | 8 --------
tools/virsh.pod | 7 -------
2 files changed, 15 deletions(-)
diff --git a/src/conf/storage_conf.c b/src/conf/storage_conf.c
index 5213503..585ca71 100644
--- a/src/conf/storage_conf.c
+++ b/src/conf/storage_conf.c
@@ -760,14 +760,6 @@ virStoragePoolDefParseXML(xmlXPathContextPtr ctxt)
if (VIR_STRDUP(ret->source.name, ret->name) < 0)
goto error;
}
- if (ret->type == VIR_STORAGE_POOL_LOGICAL &&
- STRNEQ(ret->name, ret->source.name)) {
- virReportError(VIR_ERR_XML_ERROR,
- _("for a logical pool, the pool name='%s' "
- "must match the pool source name='%s'"),
- ret->name, ret->source.name);
- goto error;
- }
}
if ((options->flags & VIR_STORAGE_POOL_SOURCE_ADAPTER) &&
diff --git a/tools/virsh.pod b/tools/virsh.pod
index 55b71a9..43124ba 100644
--- a/tools/virsh.pod
+++ b/tools/virsh.pod
@@ -3639,13 +3639,6 @@ follow-up command to build the pool. The I<--overwrite> and
I<--no-overwrite> flags follow the same rules as B<pool-build>. If
just I<--build> is provided, then B<pool-build> is called with no flags.
-For a "logical" pool only [I<--name>] needs to be provided. The [I<--name>]
-must match the Volume Group name for which the pool is being defined or
-created. The [I<--source-name>] if provided must match the Volume Group
-name. If not provided, one will be generated using the [I<--name>]. If
-provided the [I<--target>] is ignored and a target source is generated
-using the [I<--source-name>] (or as generated from the [I<--name>]).
-
=item B<pool-define> I<file>
Define an inactive persistent storage pool or modify an existing persistent one
--
2.10.2
7 years, 9 months