On Mon, Jun 01, 2015 at 04:41:34PM -0400, John Ferlan wrote:
On 06/01/2015 04:01 PM, Kashyap Chamarthy wrote:
[. . .]
$ git log --oneline | head -9
a98cb8d virsh: selective block device migration
f57141e qemu: migration: selective block device migration
2757805 util: add
The new tests deal with numeric options of three kinds: regular,
scaled and timeouts. For each, both valid and invalid inputs
are provided, hopefully covering all cases: this should allow us
to avoid regressions when changing the relevant code in virsh.
---
tests/virsh-optparse | 179
The search for the memory ballon driver object is extended by a
second known name virtio-ballon-ccw in support for virtio-ccw.
Signed-off-by: Boris Fiuczynski fiu...@linux.vnet.ibm.com
Reviewed-by: Christian Borntraeger borntrae...@de.ibm.com
---
src/qemu/qemu_monitor.c | 9 +
1 file
We allocate 16 bytes for IPv4 address and 55 bytes for interface
key, therefore we should read up to 15/54 bytes and let the last byte
reserved for terminating null byte in sscanf.
https://bugzilla.redhat.com/show_bug.cgi?id=1226400
---
src/nwfilter/nwfilter_dhcpsnoop.c | 4 ++--
1 file changed,
---
tests/vcpupin| 4 +-
tests/virsh-optparse | 26 -
tools/virsh-domain-monitor.c | 9 +--
tools/virsh-domain.c | 134 +++
tools/virsh-host.c | 61 +++-
tools/virsh-interface.c |
As suggested by Michal: now that we have a generic error message for
failures related to the parsing of integer options, it makes sense to
perform the corresponding check in a single spot instead of replicating
it every time vshCommandOpt*() is used.
Andrea Bolognani (6):
tests: Add a bunch of
I missed this in the first time around, thanks Michal for noticing.
---
tests/virsh-optparse | 12 ++--
tools/virsh.c| 8 ++--
2 files changed, 12 insertions(+), 8 deletions(-)
diff --git a/tests/virsh-optparse b/tests/virsh-optparse
index 37a8d42..952fcc4 100755
---
Use vshCommandOptUInt() instead of parsing the value as a signed
integer and checking whether it's positive afterwards.
Improve comments as well.
---
tools/virsh.c | 45 +++--
1 file changed, 27 insertions(+), 18 deletions(-)
diff --git a/tools/virsh.c
This aligns it to the other vshCommandOpt*() functions.
---
tools/virsh.c | 10 +-
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/tools/virsh.c b/tools/virsh.c
index 55caa87..cd2bfef 100644
--- a/tools/virsh.c
+++ b/tools/virsh.c
@@ -1804,16 +1804,16 @@
This will allow us to use vshError() to report errors from inside
vshCommandOpt*(), instead of replicating the same logic and error
messages all over the place.
We also have more context inside the vshCommandOpt*() functions,
for example the actual value used on the command line, which means
we
On Sun, 2015-05-31 at 15:19 -0400, John Ferlan wrote:
First of all, thanks for the review :)
Patch 2 had some comments which should be simple to fix
I've commented in detail in your other mail, should have taken care of
them all.
Patch 4 had a couple of NIT's about going beyond 80 columns on
On 2015/6/1 15:36, Peter Krempa wrote:
On Sat, May 30, 2015 at 09:35:35 +0800, Wang Yufei wrote:
On 2015/5/29 19:16, Peter Krempa wrote:
On Fri, May 29, 2015 at 17:17:07 +0800, Wang Yufei wrote:
From: Zhang Bo oscar.zhan...@huawei.com
when we run the command 'virsh dommemstat xxx',
On Sun, 2015-05-31 at 15:09 -0400, John Ferlan wrote:
int
vshCommandOptTimeoutToMs(vshControl *ctl, const vshCmd *cmd, int *timeout)
{
-int rv = vshCommandOptInt(cmd, timeout, timeout);
+int ret;
+unsigned int utimeout;
-if (rv 0 || (rv 0 *timeout 1)) {
On Tue, Jun 02, 2015 at 10:18:34AM +0200, Erik Skultety wrote:
We allocate 16 bytes for IPv4 address and 55 bytes for interface
key, therefore we should read up to 15/54 bytes and let the last byte
reserved for terminating null byte in sscanf.
https://bugzilla.redhat.com/show_bug.cgi?id=1226400
On 05/31/2015 07:29 AM, Luyao Huang wrote:
Add a return value check to avoid the wrong address release.
Signed-off-by: Luyao Huang lhu...@redhat.com
---
src/qemu/qemu_hotplug.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
ACK - although I'll make an adjustment to the commit
On 05/31/2015 09:27 AM, Luyao Huang wrote:
If we do not pass the return value from qemuDomainRemoveRNGDevice()
function to variable @ret, qemuDomainRemoveDevice() functiuon will
always fail when recive rng device unplug event from qemu monitor.
Signed-off-by: Luyao Huang lhu...@redhat.com
On 05/31/2015 10:07 AM, Luyao Huang wrote:
Signed-off-by: Luyao Huang lhu...@redhat.com
---
src/conf/domain_audit.c | 2 ++
1 file changed, 2 insertions(+)
ACK -
Will adjust commit message slightly before pushing...
John
--
libvir-list mailing list
libvir-list@redhat.com
Hello,
We needed this to avoid redundancies when defining domains with RBD backends,
because monitor list and authentication secret could not be pulled from the
storage pool.
I didn't find any bit of documentation to update, actually it already implies
that disks with source type 'volume' would
Hello,
repository with Parallels SDK has been moved from
https://github.com/CloudServer/parallels-sdk
to https://src.openvz.org/projects/OVZ/repos/libprlsdk/browse.
Please update GIT settings.
--
OpenVZ survey http://goo.gl/forms/orYmy0SjFB
--
libvir-list mailing list
libvir-list@redhat.com
On 06/03/2015 02:04 AM, John Ferlan wrote:
On 05/31/2015 07:29 AM, Luyao Huang wrote:
Add a return value check to avoid the wrong address release.
Signed-off-by: Luyao Huang lhu...@redhat.com
---
src/qemu/qemu_hotplug.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
ACK -
From: Zhang Bo oscar.zhan...@huawei.com
when we run the command 'virsh dommemstat xxx',
althrough memballoon's model is set 'none' in vm's XML,
it still reports an error in libvirtd.log.
error : qemuMonitorFindBalloonObjectPath:1042 : internal error: Cannot
determine balloon device path
On 06/03/2015 02:06 AM, John Ferlan wrote:
On 05/31/2015 10:07 AM, Luyao Huang wrote:
Signed-off-by: Luyao Huang lhu...@redhat.com
---
src/conf/domain_audit.c | 2 ++
1 file changed, 2 insertions(+)
ACK -
Will adjust commit message slightly before pushing...
Thanks again for your
On 06/03/2015 02:05 AM, John Ferlan wrote:
On 05/31/2015 09:27 AM, Luyao Huang wrote:
If we do not pass the return value from qemuDomainRemoveRNGDevice()
function to variable @ret, qemuDomainRemoveDevice() functiuon will
always fail when recive rng device unplug event from qemu monitor.
On 2015年06月03日 01:02, Eric Blake wrote:
On 06/02/2015 07:56 AM, Qiao, Liyong wrote:
Hi Eric
Thanks for replying the mail, replied in lines.
+virdomainMigrateGetParameters(virDomainPtr domain,
+ int *level,
+ int *threads,
+
Domains can now reference disks of type 'volume' with an underlying RBD pool.
It won't allow mapping snapshots, pools don't list them yet, only COW clones.
- virStorageTranslateDiskSourcePool: add case to copy RBD attributes
- virStorageAddRBDPoolSourceHost: new helper to copy monitor hosts
---
On 06/02/2015 11:35 AM, Martin Kletzander wrote:
On Tue, Jun 02, 2015 at 10:18:34AM +0200, Erik Skultety wrote:
We allocate 16 bytes for IPv4 address and 55 bytes for interface
key, therefore we should read up to 15/54 bytes and let the last byte
reserved for terminating null byte in sscanf.
On Tue, Jun 02, 2015 at 12:21:32PM +0200, Erik Skultety wrote:
On 06/02/2015 11:35 AM, Martin Kletzander wrote:
On Tue, Jun 02, 2015 at 10:18:34AM +0200, Erik Skultety wrote:
We allocate 16 bytes for IPv4 address and 55 bytes for interface
key, therefore we should read up to 15/54 bytes and
[correcting list address: libvirt-list, not libver-list]
On 06/02/2015 05:58 AM, Feng, Shaohe wrote:
Hi folks:
I'd like to request some comments on enabling multi-thread compression in
libvirt.
Currently, qemu upstream has supported multi-thread compression for live
migration.
$ git log
On Fri, May 29, 2015 at 03:33:28PM +0200, Peter Krempa wrote:
Get rid of the unnecessary allocation and copying of the bitmap and
clean up some unnecesary temporary variables.
---
src/qemu/qemu_driver.c | 20 +++-
1 file changed, 3 insertions(+), 17 deletions(-)
ACK
Jan
On Fri, May 29, 2015 at 03:33:29PM +0200, Peter Krempa wrote:
---
src/libxl/libxl_domain.c | 21 -
1 file changed, 4 insertions(+), 17 deletions(-)
ACK
diff --git a/src/libxl/libxl_domain.c b/src/libxl/libxl_domain.c
index c7f0ed9..89782c3 100644
---
On 06/02/2015 02:53 PM, Ján Tomko wrote:
Use a for cycle instead of while.
s/cycle/loop
Do not opencode c_isxdigit and virHexToBin.
---
src/nodeinfo.c | 12 +++-
1 file changed, 3 insertions(+), 9 deletions(-)
diff --git a/src/nodeinfo.c b/src/nodeinfo.c
index
Hi Eric
Thanks for replying the mail, replied in lines.
BR, Eli(Li Yong)Qiao
-Original Message-
From: Eric Blake [mailto:ebl...@redhat.com]
Sent: Tuesday, June 02, 2015 8:21 PM
To: Feng, Shaohe; libvir-list@redhat.com
Cc: Qiao, Liyong; Bhandaru, Malini K; Ding, Jian-feng; Chylinski,
On Fri, May 29, 2015 at 03:33:35PM +0200, Peter Krempa wrote:
Since the monitor code now supports ullongs when setting balloon size,
drop the legacy code with overflow checking.
Additionally the comment mentioning that the job is treated as a sync
job does not make sense any more since the
By switching block jobs to use domain conditions, we can drop some
pretty complicated code in NBD storage migration. Moreover, we are
getting ready for migration events (to replace our 50ms polling on
query-migrate). The ultimate goal is to have a single loop waiting
(virDomainObjWait) for any
QEMU will soon (patches are available on qemu-devel) get support for
migration events which will finally allow us to get rid of polling
query-migrate every 50ms. However, we first need to be able to wait for
all events related to migration (migration status changes, block job
events, async abort
When libvirtd is restarted during migration, we properly cancel the
ongoing migration (unless it managed to almost finished before the
restart). But if we were also migrating storage using NBD, we would
completely forget about the running disk mirrors.
Signed-off-by: Jiri Denemark
query-block-jobs QMP command returns all running block jobs at once,
while qemuMonitorBlockJobInfo would only report one. This is not very
nice in case we need to check several block jobs. This patch refactors
the monitor code to always parse all block jobs and store them in a
hash.
The wrapper is useful for calling qemuBlockJobEventProcess with the
event details stored in disk's privateData, which is the most likely
usage of qemuBlockJobEventProcess.
Signed-off-by: Jiri Denemark jdene...@redhat.com
---
Notes:
Already ACKed in version 1.
Version 2:
- no
Signed-off-by: Jiri Denemark jdene...@redhat.com
---
Notes:
Version 2:
- new patch
src/qemu/qemu_monitor.c | 12
src/qemu/qemu_monitor.h | 6 ++
src/qemu/qemu_monitor_json.c | 10 ++
3 files changed, 28 insertions(+)
diff --git
Complex jobs, such as migration, need to monitor several events at once,
which is impossible when each of the event uses its own condition
variable. This patch adds a single condition variable to each domain
object. This variable can be used instead of the other event specific
conditions.
s/weired/weird/ in the commit message
Jan
On Tue, Jun 02, 2015 at 02:34:24PM +0200, Jiri Denemark wrote:
When cancelling migration we can see the following conversation on QMP
monitor:
{execute:migrate_cancel,id:libvirt-33}
{timestamp: {seconds: 1432899178, microseconds: 844907}, event:
I report a bug [Bug 1227257] . In the environment libvirt-1.2.16.tar.gz
+ qemu-img version 2.1.2 + ceph version 0.94.1.
libvirt pool will become inactive after one client does vol.delete and the
other does pool.refresh in the same pool simultaneously.
The reason is that rbd_list and rbd_open
On 06/02/2015 05:35 AM, Andrea Bolognani wrote:
On Sun, 2015-05-31 at 15:19 -0400, John Ferlan wrote:
First of all, thanks for the review :)
Patch 2 had some comments which should be simple to fix
I've commented in detail in your other mail, should have taken care of
them all.
When a connection to the destination host during a p2p migration drops,
we know we will have to cancel the migration; it doesn't make sense to
waste resources by trying to finish the migration. We already do so
after sending migrate command to QEMU and we should do it while
waiting for drive
This patch reverts commit 76c61cdca20c106960af033e5d0f5da70177af0f.
VIR_DOMAIN_DISK_MIRROR_STATE_ABORT says we asked for a block job to be
aborted rather than saying it was aborted. Let's just use
VIR_DOMAIN_DISK_MIRROR_STATE_NONE consistently whenever a block job
finishes since no caller depends
When cancelling migration we can see the following conversation on QMP
monitor:
{execute:migrate_cancel,id:libvirt-33}
{timestamp: {seconds: 1432899178, microseconds: 844907}, event:
MIGRATION, data: {status: cancelling}}
{return: {}, id: libvirt-33}
{timestamp: {seconds: 1432899178,
To avoid polling for asyncAbort flag changes.
Signed-off-by: Jiri Denemark jdene...@redhat.com
---
Notes:
Version 2:
- rewritten using domain condition
src/qemu/qemu_domain.c| 5 +++--
src/qemu/qemu_domain.h| 2 +-
src/qemu/qemu_migration.c | 11 ---
3 files changed,
Because we are polling we may detect some errors after we asked QEMU for
migration status even though they occurred before. If this happens and
QEMU reports migration completed successfully, we would happily report
the migration succeeded even though we should have cancelled it because
of the
So that they can format private data (e.g., disk private data) stored
elsewhere in the domain object.
Signed-off-by: Jiri Denemark jdene...@redhat.com
---
Notes:
Version 2:
- no changes
src/conf/domain_conf.c | 4 ++--
src/conf/domain_conf.h | 6 --
src/libxl/libxl_domain.c |
王松波你好,
Thanks a lot for reporting a bug and providing a patch for it. However,
you will need to send the patch using git send-email to this mailing
list: it will ease the review and integration in master.
Thanks a lot for your help,
--
Cedric
On Tue, 2015-06-02 at 20:27 +0800, 王松波 wrote:
I
Use virFileReadAll which reports an error when the file is larger
than the specified maximum.
https://bugzilla.redhat.com/show_bug.cgi?id=1207849
---
src/nodeinfo.c | 22 --
1 file changed, 4 insertions(+), 18 deletions(-)
diff --git a/src/nodeinfo.c b/src/nodeinfo.c
index
On 06/02/2015 02:47 PM, Martin Kletzander wrote:
On Thu, May 28, 2015 at 05:29:55PM +0200, Erik Skultety wrote:
RBD API returns negative value of errno, in that case we can silently
ignore if RBD tries to delete a non-existent volume, just like FS
backend does.
---
QEMU_CAPS_SEAMLESS_MIGRATION capability says QEMU supports
SPICE_MIGRATE_COMPLETED event. Thus we can just drop all code which
polls query-spice and replace it with waiting for the event.
Signed-off-by: Jiri Denemark jdene...@redhat.com
---
Notes:
Version 2:
- new patch
Use a for cycle instead of while.
Do not opencode c_isxdigit and virHexToBin.
---
src/nodeinfo.c | 12 +++-
1 file changed, 3 insertions(+), 9 deletions(-)
diff --git a/src/nodeinfo.c b/src/nodeinfo.c
index 9db3233..2fafe2d 100644
--- a/src/nodeinfo.c
+++ b/src/nodeinfo.c
@@ -361,15
On Thu, May 28, 2015 at 05:29:55PM +0200, Erik Skultety wrote:
RBD API returns negative value of errno, in that case we can silently
ignore if RBD tries to delete a non-existent volume, just like FS
backend does.
---
src/storage/storage_backend_rbd.c | 6 +++---
1 file changed, 3 insertions(+), 3
On 06/02/2015 05:17 AM, Andrea Bolognani wrote:
As suggested by Michal: now that we have a generic error message for
failures related to the parsing of integer options, it makes sense to
perform the corresponding check in a single spot instead of replicating
it every time vshCommandOpt*() is
On Mon, Jun 01, 2015 at 03:14:24PM +0200, Martin Kletzander wrote:
On Thu, May 28, 2015 at 05:29:54PM +0200, Erik Skultety wrote:
We do update pool volume object list before we actually create any
volume. If buildVol fails, we then try to delete the volume in the
storage as well as remove it
We don't need to call query-migrate every 50ms when we get the current
migration state via MIGRATION event.
Signed-off-by: Jiri Denemark jdene...@redhat.com
---
Notes:
Version 2:
- new patch
src/qemu/qemu_migration.c | 14 --
src/qemu/qemu_process.c | 31
Thanks to Juan's work QEMU finally emits an event whenever migration
state changes.
Signed-off-by: Jiri Denemark jdene...@redhat.com
---
Notes:
The MIGRATION event is not supported by QEMU yet, this patch is based
on the current patches available on qemu-devel mailing list. However,
Once we start waiting for migration events instead of polling
query-migrate, priv-job.current will not be regularly updated anymore
because we will get the current status directly from the events. Thus
virDomainGetJob{Info,Stats} will have to query QEMU, but they can't just
blindly update
Move common parts of qemuDomainGetJobInfo and qemuDomainGetJobStats into
a separate API (qemuDomainGetJobStatsInternal).
Signed-off-by: Jiri Denemark jdene...@redhat.com
---
Notes:
Version 2:
- new patch
src/qemu/qemu_driver.c | 113 ++---
1
We don't have an async job when reconnecting to existing domains after
libvirtd restart.
Signed-off-by: Jiri Denemark jdene...@redhat.com
---
Notes:
Version 2:
- no changes
src/qemu/qemu_migration.c | 18 +++---
1 file changed, 11 insertions(+), 7 deletions(-)
diff --git
Since we already support the MIGRATION event, we just need to make sure
the domain condition is signalled whenever a p2p connection drops or the
domain is paused due to IO error and we can avoid waking up every 50 ms
to check whether something happened.
Signed-off-by: Jiri Denemark
When QEMU supports migration events qemuDomainJobInfo structure is no
longer updated with migration statistics. We have to enter a job and
explicitly ask QEMU every time virDomainGetJob{Info,Stats} is called.
Signed-off-by: Jiri Denemark jdene...@redhat.com
---
Notes:
Version 2:
- new
Instead of passing current job name to several functions which already
know what the current job is we can generate the name where we actually
need to use it.
Signed-off-by: Jiri Denemark jdene...@redhat.com
---
Notes:
Version 2:
- new patch
src/qemu/qemu_migration.c | 54
Checking status of all part of migration and aborting it when something
failed is a complex thing which makes the waiting loop hard to read.
This patch moves all the checks into a separate function similarly to
what was done for drive mirror loops.
Signed-off-by: Jiri Denemark jdene...@redhat.com
https://bugzilla.redhat.com/show_bug.cgi?id=1207849
Ján Tomko (2):
Report errors in virNodeCountThreadSiblings
Simplify virNodeCountThreadSiblings
src/nodeinfo.c | 34 +++---
1 file changed, 7 insertions(+), 27 deletions(-)
--
2.3.6
--
libvir-list mailing list
On Tue, Jun 02, 2015 at 02:53:43PM +0200, Ján Tomko wrote:
https://bugzilla.redhat.com/show_bug.cgi?id=1207849
Ján Tomko (2):
Report errors in virNodeCountThreadSiblings
Simplify virNodeCountThreadSiblings
src/nodeinfo.c | 34 +++---
1 file changed, 7
On Tue, 2015-06-02 at 09:23 -0400, John Ferlan wrote:
ACK series... and pushed
Thanks :)
--
Andrea Bolognani
Software Engineer - Virtualization Team
$ python -c print('a'.join(['', 'bologn', '@redh', 't.com']))
--
libvir-list mailing list
libvir-list@redhat.com
On Tue, Jun 02, 2015 at 09:24:26AM -0600, Eric Blake wrote:
Newer binutils 'ar' has added an option 'D' for deterministic
builds, and at least on rawhide, this option is enabled by default.
But it conflicts with the 'u' optimization where the linker only
modifies libraries based on file
On Mon, Jun 01, 2015 at 09:05:59PM +0200, Jiri Denemark wrote:
When watching a job (save, managedsave, dump, migrate) virsh spawns a
thread to call the appropriate API and waits for the result while
watching for interruption signals (SIGINT, Ctrl-C on the terminal).
Whenever such signal is
Newer binutils 'ar' has added an option 'D' for deterministic
builds, and at least on rawhide, this option is enabled by default.
But it conflicts with the 'u' optimization where the linker only
modifies libraries based on file timestamps, but can result in
different library ordering based on
On Tue, Jun 02, 2015 at 11:27:35AM +0200, Boris Fiuczynski wrote:
The search for the memory ballon driver object is extended by a
second known name virtio-ballon-ccw in support for virtio-ccw.
Signed-off-by: Boris Fiuczynski fiu...@linux.vnet.ibm.com
Reviewed-by: Christian Borntraeger
On 06/02/2015 09:27 AM, Daniel P. Berrange wrote:
On Tue, Jun 02, 2015 at 09:24:26AM -0600, Eric Blake wrote:
Newer binutils 'ar' has added an option 'D' for deterministic
builds, and at least on rawhide, this option is enabled by default.
But it conflicts with the 'u' optimization where the
On 06/02/2015 07:56 AM, Qiao, Liyong wrote:
Hi Eric
Thanks for replying the mail, replied in lines.
+virdomainMigrateGetParameters(virDomainPtr domain,
+ int *level,
+ int *threads,
+ int
On 05/28/2015 09:55 AM, Ján Tomko wrote:
We have been formatting the first serial device also
as a console device, but only if there were no other consoles.
If there is a serial device present in the XML, but no serial
console, or if there isn't any console at all but the domain
---
Pushed as trivial.
src/util/virprocess.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/util/virprocess.c b/src/util/virprocess.c
index 7a79970..501569f 100644
--- a/src/util/virprocess.c
+++ b/src/util/virprocess.c
@@ -537,7 +537,7 @@ int
77 matches
Mail list logo