Full quote (and cc to Guido Günther) since message before seems to be delayed (or will be returned).
Investigation of 'info migration' in kvm 72 showed following result: ---8<--- qemuMonitorTextGetMigrationStatus(): reply = 'Migration active Transfer rate 0.0 kb/s Iteration 0 Transferred 14/136192 pages Maximum migration speed is 32.0 mb/s ' --->8--- Seems a huge effort to switch back to 'info migration' when 'info migrate' failes ... I suggest a new patch to detect the error in qemu-monitor when parsing reply to 'info migrate', patch attached. regards Andreas Bießmann Andreas Bießmann wrote: > This is result of further investigation of 'info migrate' issue. kvm 72 seems > to have 'info migration' rather than 'info migrate'. Maybe we could use this > command in favor of 'info migrate', but we need to know the version of command > interface. Still have to investigate the command 'info migration' in kvm 72! > > Patch and further comments attached! > > regards > > Andreas Bießmann > > --- > > Result of this patch with kvm 72 is: > > ---8<--- > qemuMonitorTextGetMigrationStatus(): reply = 'info version -- show the > version of qemu > info network -- show the network state > info block -- show the block devices > info blockstats -- show block device statistics > info registers -- show the cpu registers > info cpus -- show infos for each CPU > info history -- show the command line history > info irq -- show the interrupts statistics (if available) > info pic -- show i8259 (PIC) state > info pci -- show PCI info > info tlb -- show virtual to physical memory mappings > info mem -- show the active virtual memory mappings > info jit -- show dynamic compiler info > info kqemu -- show kqemu information > info kvm -- show kvm information > info usb -- show guest USB devices > info usbhost -- show host USB devices > info profile -- show profiling information > info capture -- show capture information > info snapshots -- show the currently saved VM snapshots > info pcmcia -- show guest PCMCIA status > info mice -- show which guest mouse is receiving events > info vnc -- show the vnc server status > info name -- show the current VM name > info slirp -- show SLIRP statistics > info migration -- show migration information > ' > --->8--- > > Result of this patch with qemu-kvm 0.11.1 installed is: > > ---8<--- > qemuMonitorTextGetMigrationStatus(): reply = 'Migration status: active > transferred ram: 108 kbytes > remaining ram: 540820 kbytes > total ram: 540928 kbytes > ' > --->8--- > > This message is continiously repeated. transferred ram, remaining ram and > total ram is always the same value! > > Signed-off-by: Andreas Bießmann <biessm...@corscience.de> > --- > src/qemu/qemu_monitor_text.c | 2 ++ > 1 files changed, 2 insertions(+), 0 deletions(-) > > diff --git a/src/qemu/qemu_monitor_text.c b/src/qemu/qemu_monitor_text.c > index 7f0e7f6..137fd7d 100644 > --- a/src/qemu/qemu_monitor_text.c > +++ b/src/qemu/qemu_monitor_text.c > @@ -1024,6 +1024,8 @@ int qemuMonitorTextGetMigrationStatus(qemuMonitorPtr > mon, > return -1; > } > > + printf("\n%s(): reply = '%s'\n", __func__, reply); > + > if ((tmp = strstr(reply, MIGRATION_PREFIX)) != NULL) { > tmp += strlen(MIGRATION_PREFIX); > end = strchr(tmp, '\r'); -- Andreas Bießmann, Dipl.-Ing. (FH) R&D Services Corscience GmbH & Co. KG Henkestr. 91 D-91052 Erlangen Germany Tel: +49 9131 977986-443 Fax: +49 9131 977986-59 e-mail: biessm...@corscience.de Internet: www.corscience.de ------------------------------------------------- Corscience GmbH & Co.KG Sitz der Gesellschaft/Place of business: Erlangen Amtsgericht/Local court: Fürth Handelsregisternummer/Commercial Register No.: HRA 7510 Geschäftsführer/Managing director: Prof. Dr. Armin Bolz, Dr. Karl-Andreas Feldhahn, Dipl.-Volksw. Marc Griefahn CONFIDENTIALITY: This e-mail and any attachments are confidential and may also be privileged. If received in error, please do not disclose the contents to anyone, but notify us immediately by return e-mail and delete this e-mail and any attachments from your system. Thank you.
>From cbb911ea32272b377e8ade9736e781c2fd7d8473 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20Bie=C3=9Fmann?= <biessm...@corscience.de> Date: Thu, 18 Mar 2010 13:05:59 +0100 Subject: [PATCH] patch qemuMonitorTextGetMigrationStatus to intercept unknown command 'info migrate' MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Debian package kvm up to version 72 has not implemented the command 'info migrate'. This command interface returns help page of info commands and looks like this: ---8<--- info version -- show the version of qemu info network -- show the network state info block -- show the block devices info blockstats -- show block device statistics info registers -- show the cpu registers info cpus -- show infos for each CPU info history -- show the command line history info irq -- show the interrupts statistics (if available) info pic -- show i8259 (PIC) state info pci -- show PCI info info tlb -- show virtual to physical memory mappings info mem -- show the active virtual memory mappings info jit -- show dynamic compiler info info kqemu -- show kqemu information info kvm -- show kvm information info usb -- show guest USB devices info usbhost -- show host USB devices info profile -- show profiling information info capture -- show capture information info snapshots -- show the currently saved VM snapshots info pcmcia -- show guest PCMCIA status info mice -- show which guest mouse is receiving events info vnc -- show the vnc server status info name -- show the current VM name info slirp -- show SLIRP statistics info migration -- show migration information --->8--- This patch triggers for 'info migration' in reply to 'info migrate' command to savely detect that the command 'info migrate' is not implemented. Signed-off-by: Andreas BieÃmann <biessm...@corscience.de> --- src/qemu/qemu_monitor_text.c | 10 +++++++++- 1 files changed, 9 insertions(+), 1 deletions(-) diff --git a/src/qemu/qemu_monitor_text.c b/src/qemu/qemu_monitor_text.c index 7f0e7f6..d0786e7 100644 --- a/src/qemu/qemu_monitor_text.c +++ b/src/qemu/qemu_monitor_text.c @@ -1078,7 +1078,15 @@ int qemuMonitorTextGetMigrationStatus(qemuMonitorPtr mon, *total *= 1024; } - } + } else if (strstr(reply, "info migration") != NULL) { + /* 'info migrate' returned help for info commands and the help page + * advertises 'info migration' command. Therefore we have an old + * command implementation installed and this must be kvm 72 on debian */ + qemuReportError(VIR_ERR_INTERNAL_ERROR, + _("command 'info migrate' is not implemented in kvm," + " please update to qemu-kvm")); + goto cleanup; + } done: ret = 0; -- 1.6.6.1