On Sun, Jun 22, 2014 at 02:43:03AM +0800, Yang Zhiyong wrote: > We have the experience that the guest doesn't stop successfully > though it was instructed to shut down. > > The root cause may be not in QEMU mostly. However, QEMU is often > suspected at the beginning just because the issue occurred in > virtualization environment. > > Therefore, we need to affirm that QEMU received the shutdown > request and raised ACPI irq from "virsh shutdown" command, > virt-manger or stopping QEMU process to the VM . > So that we can affirm the problems was belonged to the Guset OS > rather than the QEMU itself. > > When we stop guests by "virsh shutdown" command or virt-manger, > or stopping QEMU process, qemu_system_powerdown_request() or > qemu_system_shutdown_request() is called. Then the below functions > in main_loop_should_exit() of Vl.c are called roughly in the > following order. > > if (qemu_powerdown_requested()) > qemu_system_powerdown() > monitor_protocol_event(QEVENT_POWERDOWN, NULL) > > OR > > if(qemu_shutdown_requested()} > monitor_protocol_event(QEVENT_SHUTDOWN, NULL); > > The tracepoint of monitor_protocol_event() already exists, but no > tracepoints are defined for qemu_system_powerdown_request() and > qemu_system_shutdown_request(). So this patch adds two tracepoints for > the two functions. We believe that it will become much easier to > isolate the problem mentioned above by these tracepoints. > > > Signed-off-by: Yang Zhiyong > > --- > trace-events | 2 ++ > vl.c | 2 ++ > 2 files changed, 4 insertions(+), 0 deletions(-) Thanks, applied to my tracing tree: https://github.com/stefanha/qemu/commits/tracing Stefan