[libvirt] RFC: <memory units=...> [was: libvirt doesn't boot kVM, hangs, qemu on 100% CPU]
by Eric Blake
On 02/21/2012 03:46 PM, Igor Galić wrote:
>
> Hi folks,
>
> it's been adventurous.
> Yesterday night I've started debugging this particular
> issue of why my KVMs don't boot on Ubuntu 11.10.
On IRC, we identified the culprit:
> <uuid>8cfcb7b0-10ee-7d08-9b64-9f39c154292a</uuid>
> <memory>2048</memory>
> <currentMemory>2048</currentMemory>
There ain't no way on earth you're going to boot a kernel in 2 megabytes
of memory!
I propose enhancing the XML; on output, libvirt should produce:
<memory units='k'>2048</memory> => 2048 * kibibyte
the output unit must remain the same as it has always been, but the new
attribute will make it easier for humans reading the XML to spot
blunders like what spawned this thread.
On input, the optional attribute is more useful - we can use it to
provide a multiplier (of course, the result will be rounded up to k, and
again rounded up to any higher granularity per the hypervisor):
b => bytes
k, KiB => kibibyte (1024)
KB => kilobyte (1000)
M, MiB => mebibyte (1024*1024)
MB => megabyte (1000000)
and so on for at least G and T (do we need P, E, Z, or Y? and I'm
jealous if you have a machine with 1Y memory).
Thoughts before I propose such a patch?
--
Eric Blake eblake(a)redhat.com +1-919-301-3266
Libvirt virtualization library http://libvirt.org
12 years, 9 months
[libvirt] [PATCH 0/3] Forbid migration with cache != none
by Jiri Denemark
Migrating qemu domains with disks using cache != none is unsafe unless
the disk images are stored on coherent clustered filesystem. Thus we
forbid migrating such domains unless VIR_MIGRATE_UNSAFE flags is used.
This series uses similar aproach to forbidding unsafe PCI passthrough
or disk format probing when we forbade those by default with the
possibility to force them.
Domain configuration is only checked on source, which makes migrating
affected domains from an old libvirt to the new one possible. Migrating
back is impossible since destination libvirtd would complain about
unknown flag (the flag is not filtered so it gets to the destination
even though it's not really used there).
However, users of clustered filesystems now have to always pass the new
flag to be able to migrate because libvirtd would think they are doing
something unsafe. Perhaps we should provide a system wide (i.e.,
/etc/libvirt/qemu.conf) tunable which would disable cache mode checking
for all domains at once?
I was also wondering if we should rather use more specific name for both
the error code and flag, such as VIR(_ERR)?_MIGRATE_UNSAFE_CACHE
(or ...UNSAFE_DISK) in the case we find other unsafe conditions...
Jiri Denemark (3):
Add support for unsafe migration
virsh: Add --unsafe option to migrate command
qemu: Forbid migration with cache != none
include/libvirt/libvirt.h.in | 2 +-
include/libvirt/virterror.h | 1 +
src/libvirt.c | 4 ++++
src/qemu/qemu_driver.c | 3 ++-
src/qemu/qemu_migration.c | 36 ++++++++++++++++++++++++++++++++----
src/qemu/qemu_migration.h | 6 ++++--
src/util/virterror.c | 6 ++++++
tools/virsh.c | 4 ++++
tools/virsh.pod | 10 +++++++++-
9 files changed, 63 insertions(+), 9 deletions(-)
--
1.7.8.4
12 years, 9 months
[libvirt] Cluster_size parameter issue on qcow2 image format
by Pankaj Rawat
I have been working o the qcow2 image format ,
I theory regarding cluster size it is written that as the size of
cluster increase performance should increase.
But something surprising happen The performance is degrading as the size
of cluster increased from 64K to 1M ( during expansion of qcow2 image)
can any one tell why ?
DISCLAIMER:
-----------------------------------------------------------------------------------------------------------------------
The contents of this e-mail and any attachment(s) are confidential and
intended
for the named recipient(s) only.
It shall not attach any liability on the originator or NECHCL or its
affiliates. Any views or opinions presented in
this email are solely those of the author and may not necessarily reflect the
opinions of NECHCL or its affiliates.
Any form of reproduction, dissemination, copying, disclosure, modification,
distribution and / or publication of
this message without the prior written consent of the author of this e-mail is
strictly prohibited. If you have
received this email in error please delete it and notify the sender
immediately. .
-----------------------------------------------------------------------------------------------------------------------
12 years, 9 months
[libvirt] [PATCH v4 0/7] Console corruption patchset
by Peter Krempa
Rebased and tweaked to current upstream. Some patches still need review:
* 1/7 pidfile: Make checking binary path in virPidFileRead optional
- ACKed in v3 by Eric
- minor spelling fixes
* 2/7 Add flags for virDomainOpenConsole
- ACKed in v3 by Eric
- spelling fixes
- added docs about behavior with older server suggested by Eric
* 3/7 virsh: add support for VIR_DOMAIN_CONSOLE_* flags
- ACKed in v3 by Eric
- tweaked grammar/spelling
- added reason why --safe and --force was not implemented in start/create
* 4/7 fdstream: Emit stream abort callback even if poll() doesnt.
- no change to v3
- Eric requested final ack by danpb
* 5/7 fdstream: Add internal callback on stream close
- no change to v3
- needs review
* 6/7 util: Add helpers for safe domain console operations
- fixed include of hash.h -> virhash.h
- needs review of changes done in v3
* 7/7 qemu: Add ability to abort existing console while creating new one
- needs review of changes done in v3
configure.ac | 39 ++++-
include/libvirt/libvirt.h.in | 12 ++
po/POTFILES.in | 1 +
src/Makefile.am | 6 +-
src/conf/virconsole.c | 396 ++++++++++++++++++++++++++++++++++++++++++
src/conf/virconsole.h | 36 ++++
src/fdstream.c | 89 +++++++++-
src/fdstream.h | 11 ++
src/libvirt.c | 18 ++-
src/libvirt_private.syms | 6 +
src/qemu/qemu_domain.c | 5 +
src/qemu/qemu_domain.h | 3 +
src/qemu/qemu_driver.c | 21 ++-
src/util/virpidfile.c | 21 ++-
tools/console.c | 5 +-
tools/console.h | 3 +-
tools/virsh.c | 24 ++-
tools/virsh.pod | 8 +-
18 files changed, 666 insertions(+), 38 deletions(-)
create mode 100644 src/conf/virconsole.c
create mode 100644 src/conf/virconsole.h
--
1.7.3.4
12 years, 9 months
[libvirt] [perl-Sys-Virt][PATCH] de-mortalize the return value from hv_delete
by Guannan Ren
when calling block_stats() like $dom->block_stats(), it will reprot errors:
Attempt to free unreferenced scalar: SV 0x2598498, Perl interpreter: 0x11a0010.
Attempt to free unreferenced scalar: SV 0x258c498, Perl interpreter: 0x11a0010.
This patch fix it.
---
Virt.xs | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
diff --git a/Virt.xs b/Virt.xs
index e5d8438..9ef9715 100644
--- a/Virt.xs
+++ b/Virt.xs
@@ -3358,6 +3358,7 @@ block_stats(dom, path, flags=0)
field = "flush_reqs";
if (field) {
SV *val = hv_delete(RETVAL, params[i].field, strlen(params[i].field), 0);
+ SvREFCNT_inc(val);
(void)hv_store(RETVAL, field, strlen(field), val, 0);
}
}
--
1.7.1
12 years, 9 months
[libvirt] [PATCH] libvirt-guests: Enable parallel operations and improve error handling
by Peter Krempa
This patch modifies the libvirt-guests init script to enable parallel
shiutdown on guest machines and gets rid of error messages if the client
is unable connect to the URI specified in the config file.
---
Simultaneous shutdown of machines may speed up the shutdown process as the shutdown sequence
of guests often consists of timeouts and storage un-intensive tasks. Simultaneous resume
of machines was already supported, although not documented well enough.
This patch also checks if connection to the URI can be done, and prints a error
message if it's not the case. This get's rid of unrelevant and repeated error messages
if the URI is unreachable.
The last improvement is while using managed-save. Transient domains are excluded
from the save sequence to get rid of error messages and a list of domains that are left
behind is printed.
Please tell me your suggestions how to improve this, as I'm not a bash "native speaker".
tools/libvirt-guests.init.sh | 214 ++++++++++++++++++++++++++++++++++++++----
tools/libvirt-guests.sysconf | 10 ++-
2 files changed, 204 insertions(+), 20 deletions(-)
diff --git a/tools/libvirt-guests.init.sh b/tools/libvirt-guests.init.sh
index 367177e..c858747 100644
--- a/tools/libvirt-guests.init.sh
+++ b/tools/libvirt-guests.init.sh
@@ -78,8 +78,25 @@ run_virsh_c() {
( export LC_ALL=C; run_virsh "$@" )
}
+test_connect()
+{
+ uri=$1
+
+ run_virsh "$uri" connect 2>/dev/null
+ if [ $? -ne 0 ]; then
+ eval_gettext "Can't connect to \$uri. Skipping."
+ echo
+ return 1
+ fi
+}
+
+# "persistent" argument options:
+# yes: list only persistent guests
+# no: list only transient guests
+# all: list both persistent and transient guests
list_guests() {
uri=$1
+ persistent=$2
list=$(run_virsh_c "$uri" list)
if [ $? -ne 0 ]; then
@@ -89,12 +106,19 @@ list_guests() {
uuids=
for id in $(echo "$list" | awk 'NR > 2 {print $1}'); do
- uuid=$(run_virsh_c "$uri" dominfo "$id" | awk '/^UUID:/{print $2}')
- if [ -z "$uuid" ]; then
+ dominfo=$(run_virsh_c "$uri" dominfo "$id")
+ uuid=$(echo "$dominfo" | awk '/^UUID:/{print $2}')
+ dompersist=$(echo "$dominfo" | awk '/^Persistent:/{print $2}')
+
+ if [ -z "$uuid" ] || [ -z "$dompersist" ]; then
RETVAL=1
return 1
fi
- uuids="$uuids $uuid"
+
+ if [ "$persistent" == "$dompersist" ] ||
+ [ "$persistent" == "all" ]; then
+ uuids="$uuids $uuid"
+ fi
done
echo $uuids
@@ -162,6 +186,8 @@ start() {
continue
fi
+ test_connect "$uri" || continue
+
eval_gettext "Resuming guests on \$uri URI..."; echo
for guest in $list; do
name=$(guest_name "$uri" "$guest")
@@ -241,6 +267,102 @@ shutdown_guest()
fi
}
+shutdown_guest_async()
+{
+ uri=$1
+ guest=$2
+
+ name=$(guest_name "$uri" "$guest")
+ label=$(eval_gettext "Starting shutdown on guest: \$name")
+ echo $label
+ retval run_virsh "$uri" shutdown "$guest" >/dev/null || return
+}
+
+set_add()
+{
+ item=$1
+ items=$2
+
+ echo "$items $item"
+}
+
+set_remove()
+{
+ item=$1
+ items=$2
+
+ newitems=
+ for nit in $items; do
+ if [ "$nit" != "$domain" ]; then
+ newitems="$newitems $nit"
+ fi
+ done
+
+ echo "$newitems"
+}
+
+set_count()
+{
+ items=$1
+
+ count="0"
+ for item in $items; do
+ count=$((count+1))
+ done
+
+ echo $count
+}
+
+set_head()
+{
+ items=$1
+
+ for item in $items; do
+ echo $item
+ return 0
+ done
+}
+
+remove_shutdown_domains()
+{
+ uri=$1
+ domains=$2
+
+ newlist=
+ for dom in $domains; do
+ guest_is_on "$uri" "$dom" 2>&1 > /dev/null || return
+ if "$guest_running"; then
+ newlist="$newlist $dom"
+ fi
+ done
+
+ echo "$newlist"
+}
+
+notify_shutdown_domains()
+{
+ uri=$1
+ all=$2
+ running=$3
+
+ for dom in $all; do
+ found=false
+ for run in $running; do
+ if [ $dom = $run ]; then
+ found=true
+ break
+ fi
+ done
+
+ if ! "$found"; then
+ name=$(guest_name "$uri" "$dom")
+ eval_gettext "Shutdown of guest \$name complete."
+ echo
+ fi
+ done
+}
+
+
stop() {
# last stop was not followed by start
[ -f "$LISTFILE" ] && return 0
@@ -260,14 +382,12 @@ stop() {
set -f
for uri in $URIS; do
set +f
- eval_gettext "Running guests on \$uri URI: "
- if [ "x$uri" = xdefault ] && [ ! -x "$libvirtd" ]; then
- gettext "libvirtd not installed; skipping this URI."; echo
- continue
- fi
+ test_connect "$uri" || continue
+
+ eval_gettext "Running guests on \$uri URI: "
- list=$(list_guests "$uri")
+ list=$(list_guests "$uri" "all")
if [ $? -eq 0 ]; then
empty=true
for uuid in $list; do
@@ -275,13 +395,45 @@ stop() {
printf %s "$(guest_name "$uri" "$uuid")"
empty=false
done
+
if "$empty"; then
- gettext "no running guests."; echo
+ gettext "no running guests."
+ fi
+ echo
+ fi
+
+ if "$suspending"; then
+ transient=$(list_guests "$uri" "no")
+ if [ $? -eq 0 ]; then
+ empty=true
+ for uuid in $transient; do
+ if "$empty"; then
+ eval_gettext "Not suspending transient domains on URI: \$uri: "
+ empty=false
+ else
+ printf ", "
+ fi
+ printf %s "$(guest_name "$uri" "$uuid")"
+ done
+ # reload domain list to contain only persistent domains
+ list=$(list_guests "$uri" "yes")
+ if [ $? -ne 0 ]; then
+ eval_gettext "Failed to list persistent domains on \$uri"
+ echo
+ RETVAL=1
+ return
+ fi
else
+ gettext "Failed to list transient domains"
echo
- echo "$uri" "$list" >>"$LISTFILE"
+ RETVAL=1
+ return
fi
fi
+
+ if [ -n "$list" ]; then
+ echo "$uri" "$list" >>"$LISTFILE"
+ fi
done
set +f
@@ -292,13 +444,39 @@ stop() {
eval_gettext "Shutting down guests on \$uri URI..."; echo
fi
- for guest in $list; do
- if "$suspending"; then
- suspend_guest "$uri" "$guest"
- else
- shutdown_guest "$uri" "$guest"
- fi
- done
+ if [ "$PARALLEL_SHUTDOWN" -gt 1 ] &&
+ ! "$suspending"; then
+ on_shutdown=
+ timeout=$SHUTDOWN_TIMEOUT
+ while [ $(set_count "$on_shutdown") -gt "0" ] ||
+ [ $(set_count "$list") -gt "0" ]; do
+ while [ $(set_count "$on_shutdown") -lt "$PARALLEL_SHUTDOWN" ] &&
+ [ $(set_count "$list") -gt "0" ]; do
+ domain=$(set_head "$list")
+ shutdown_guest_async "$uri" "$domain"
+ on_shutdown=$(set_add "$domain" "$on_shutdown");
+ list=$(set_remove "$domain" "$list");
+ done
+ sleep 1
+ timeout=$((timeout - 1))
+ if [ $timeout -le 0 ]; then
+ eval_gettext "Timeout expired while shutting down domains"; echo
+ RETVAL=1
+ return
+ fi
+ on_shutdown_old=$on_shutdown
+ on_shutdown=$(remove_shutdown_domains "$uri" "$on_shutdown" || return)
+ notify_shutdown_domains "$uri" "$on_shutdown_old" "$on_shutdown"
+ done
+ else
+ for guest in $list; do
+ if "$suspending"; then
+ suspend_guest "$uri" "$guest"
+ else
+ shutdown_guest "$uri" "$guest"
+ fi
+ done
+ fi
done <"$LISTFILE"
rm -f "$VAR_SUBSYS_LIBVIRT_GUESTS"
diff --git a/tools/libvirt-guests.sysconf b/tools/libvirt-guests.sysconf
index 9b8b64f..e16af4f 100644
--- a/tools/libvirt-guests.sysconf
+++ b/tools/libvirt-guests.sysconf
@@ -10,7 +10,8 @@
# libvirtd
#ON_BOOT=start
-# number of seconds to wait between each guest start
+# number of seconds to wait between each guest start. Set to 0 to allow parallel
+# startup.
#START_DELAY=0
# action taken on host shutdown
@@ -23,7 +24,12 @@
# value suitable for your guests.
#ON_SHUTDOWN=suspend
-# number of seconds we're willing to wait for a guest to shut down
+# If set to non-zero, shutdown will suspend domains concurently. Number of domains
+# on shutdown at any time will not exceed number set in this variable.
+#PARALLEL_SHUTDOWN=0
+
+# number of seconds we're willing to wait for a guest to shut down. If parallel
+# shutdown is enabled, this timeout applies as a timeout for shutting down all guests.
#SHUTDOWN_TIMEOUT=0
# If non-zero, try to bypass the file system cache when saving and
--
1.7.3.4
12 years, 9 months
[libvirt] non-TLS spice connections
by Christophe Fergeau
Hey,
I recently setup ovirt/vdsm on one of my boxes. For some reason spice TLS
was disabled through spice_tls = no in /etc/libvirt/qemu.conf.
Then I created a VM, started it, and had troubles connecting to it with
spicec. After investigating (thanks djasa), I realized that qemu was
started with some encrypted SPICE channels but with no TLS port configured,
which explained why I couldn't connect.
https://bugzilla.redhat.com/show_bug.cgi?id=790436 was filed against
libvirt about this, but now we are wondering how to best fix things in
libvirt.
What is currently happening is that libvirt doesn't warn when a domain has
<channel name='main' mode='secure'/> with spice_tls = no in qemu.conf, and
it adds the corresponding tls-channel=main to qemu command-line, but
doesn't set a TLS port (if one is set it's silently ignored).
There are at least two ways of solving this problem in libvirt:
* either the current behaviour is kept, but "tls-channel=main" is not
added to qemu command line when spice-tls is disabled. The drawback of
this is that some security options that have been explicitly set in the
domain XML are silently ignored
* or the current behaviour is changed, and in this situation (SPICE secure
channels in the XML, but TLS disabled in qemu.conf), libvirt errors out,
which would change the current behaviour.
This has been discussed on the libvirt mailing list (cc'ed) in this thread:
https://www.redhat.com/archives/libvir-list/2012-February/msg00656.html
Before making a decision, we were wondering what behaviour oVirt
would expect in this case (error or silently ignoring the secure channels),
and if a setup with spice_tls = no in /etc/libvirt/qemu.conf is something
widely deployed that you have to support, or if it's more of an
experimental feature at this point.
Thanks for any input you can give on this matter,
Christophe
12 years, 9 months
[libvirt] [PATCH] caps: Improve error if passed an unknown arch
by Cole Robinson
Previously we would have:
"os type 'hvm' & arch 'idontexist' combination is not supported"
Now we get
"No guest options available for arch 'idontexist'"
or if options available but guest OS type not applicable:
"No os type 'xen' available for arch 'x86_64'"
---
src/conf/capabilities.c | 28 ++++++++++++++++++++++++----
src/conf/capabilities.h | 9 ++++++---
src/conf/domain_conf.c | 13 +++++++++++--
3 files changed, 41 insertions(+), 9 deletions(-)
diff --git a/src/conf/capabilities.c b/src/conf/capabilities.c
index d44ce1b..542bf03 100644
--- a/src/conf/capabilities.c
+++ b/src/conf/capabilities.c
@@ -497,6 +497,26 @@ virCapabilitiesAddGuestFeature(virCapsGuestPtr guest,
return NULL;
}
+/**
+ * virCapabilitiesSupportsGuestArch:
+ * @caps: capabilities to query
+ * @arch: Architecture to search for (eg, 'i686', 'x86_64')
+ *
+ * Returns non-zero if the capabilities support the
+ * requested architecture
+ */
+extern int
+virCapabilitiesSupportsGuestArch(virCapsPtr caps,
+ const char *arch)
+{
+ int i;
+ for (i = 0 ; i < caps->nguests ; i++) {
+ if (STREQ(caps->guests[i]->arch.name, arch))
+ return 1;
+ }
+ return 0;
+}
+
/**
* virCapabilitiesSupportsGuestOSType:
@@ -520,7 +540,7 @@ virCapabilitiesSupportsGuestOSType(virCapsPtr caps,
/**
- * virCapabilitiesSupportsGuestOSType:
+ * virCapabilitiesSupportsGuestOSTypeArch:
* @caps: capabilities to query
* @ostype: OS type to search for (eg 'hvm', 'xen')
* @arch: Architecture to search for (eg, 'i686', 'x86_64')
@@ -529,9 +549,9 @@ virCapabilitiesSupportsGuestOSType(virCapsPtr caps,
* requested operating system type
*/
extern int
-virCapabilitiesSupportsGuestArch(virCapsPtr caps,
- const char *ostype,
- const char *arch)
+virCapabilitiesSupportsGuestOSTypeArch(virCapsPtr caps,
+ const char *ostype,
+ const char *arch)
{
int i;
for (i = 0 ; i < caps->nguests ; i++) {
diff --git a/src/conf/capabilities.h b/src/conf/capabilities.h
index 38d07c4..421030d 100644
--- a/src/conf/capabilities.h
+++ b/src/conf/capabilities.h
@@ -237,12 +237,15 @@ virCapabilitiesAddGuestFeature(virCapsGuestPtr guest,
int toggle);
extern int
+virCapabilitiesSupportsGuestArch(virCapsPtr caps,
+ const char *arch);
+extern int
virCapabilitiesSupportsGuestOSType(virCapsPtr caps,
const char *ostype);
extern int
-virCapabilitiesSupportsGuestArch(virCapsPtr caps,
- const char *ostype,
- const char *arch);
+virCapabilitiesSupportsGuestOSTypeArch(virCapsPtr caps,
+ const char *ostype,
+ const char *arch);
extern const char *
diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
index 85a2058..b0c3fa6 100644
--- a/src/conf/domain_conf.c
+++ b/src/conf/domain_conf.c
@@ -7581,9 +7581,18 @@ static virDomainDefPtr virDomainDefParseXML(virCapsPtr caps,
def->os.arch = virXPathString("string(./os/type[1]/@arch)", ctxt);
if (def->os.arch) {
- if (!virCapabilitiesSupportsGuestArch(caps, def->os.type, def->os.arch)) {
+ if (!virCapabilitiesSupportsGuestArch(caps, def->os.arch)) {
virDomainReportError(VIR_ERR_INTERNAL_ERROR,
- _("os type '%s' & arch '%s' combination is not supported"),
+ _("No guest options available for arch '%s'"),
+ def->os.arch);
+ goto error;
+ }
+
+ if (!virCapabilitiesSupportsGuestOSTypeArch(caps,
+ def->os.type,
+ def->os.arch)) {
+ virDomainReportError(VIR_ERR_INTERNAL_ERROR,
+ _("No os type '%s' available for arch '%s'"),
def->os.type, def->os.arch);
goto error;
}
--
1.7.7.5
12 years, 9 months
[libvirt] Migration failure related to EOF from Monitor
by Shradha Shah
Hello All,
I am trying to migrate a KVM guest while implementing the patches for PCI-Passthrough of SRIOV Vf's and
I repeatedly see the following error:
[root@c6100k cwd]# virsh migrate --live dibenchvm1 qemu+ssh://c6100l.uk.level5networks.com/system
error: operation failed: migration job: unexpectedly failed
I have turned on debugging in /etc/libvirt/libvirtd.conf and I see the following debug in
/var/log/libvirt/libvirtd.log
10:37:26.632: 2449: error : qemuMonitorIO:584 : internal error End of file from monitor
10:37:26.632: 2449: debug : qemuMonitorIO:617 : Error on monitor internal error End of file from monitor
10:37:26.632: 2449: debug : virEventPollUpdateHandle:145 : Update handle w=21 e=12
10:37:26.632: 2449: debug : virEventPollInterruptLocked:676 : Skip interrupt, 1 -1497479264
10:37:26.632: 2449: debug : qemuMonitorIO:640 : Triggering EOF callback
10:37:26.632: 2449: debug : qemuProcessHandleMonitorEOF:125 : Received EOF on 0x7f588c003540 'dibenchvm1'
10:37:26.632: 2449: debug : qemuProcessStop:3271 : Shutting down VM 'dibenchvm1' pid=18739 migrated=0
10:37:26.632: 2449: debug : qemuMonitorClose:765 : mon=0x7f588c00c7f0
10:37:26.632: 2449: debug : virEventPollRemoveHandle:172 : Remove handle w=21
10:37:26.633: 2449: debug : virEventPollRemoveHandle:185 : mark delete 9 20
10:37:26.633: 2449: debug : virEventPollInterruptLocked:676 : Skip interrupt, 1 -1497479264
10:37:26.633: 2449: debug : qemuProcessKill:3217 : vm=dibenchvm1 pid=18739 gracefully=0
10:37:26.633: 2449: debug : qemuProcessAutoDestroyRemove:3736 : vm=dibenchvm1 uuid=a4452511-0f97-734a-dbcc-f4c66f821956
10:37:26.633: 2449: debug : virSecurityDACRestoreSecurityAllLabel:504 : Restoring security label on dibenchvm1 migrated=0
May I ask for suggestions on how I can debug the monitor and find out the reason why the qemu monitor dies?
Many Thanks,
Regards,
Shradha Shah
12 years, 9 months