summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorLluís Vilanova <vilanova@ac.upc.edu>2016-12-26 22:24:46 +0100
committerStefan Hajnoczi <stefanha@redhat.com>2017-01-16 13:40:56 +0000
commita47e87151e785977d34e7b726495e7781860ca9f (patch)
treeb207220550273555dfef0b7168c72c9d0f85ff65
parent82e95ec847757c1a2b6accf0e8312925ada3dca8 (diff)
downloadfocaccia-qemu-a47e87151e785977d34e7b726495e7781860ca9f.tar.gz
focaccia-qemu-a47e87151e785977d34e7b726495e7781860ca9f.zip
trace: Add event "guest_cpu_exit"
Signals the hot-unplugging of a virtual (guest) CPU.

Signed-off-by: Lluís Vilanova <vilanova@ac.upc.edu>
Message-id: 148278748597.1404.10546320797997984932.stgit@fimbulvetr.bsc.es
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
-rw-r--r--trace-events6
-rw-r--r--trace/control.c3
2 files changed, 9 insertions, 0 deletions
diff --git a/trace-events b/trace-events
index 2c66780706..839a9d0fba 100644
--- a/trace-events
+++ b/trace-events
@@ -141,6 +141,12 @@ memory_region_ram_device_write(int cpu_index, void *mr, uint64_t addr, uint64_t
 # Targets: all
 vcpu guest_cpu_enter(void)
 
+# Hot-unplug a virtual (guest) CPU
+#
+# Mode: user, softmmu
+# Targets: all
+vcpu guest_cpu_exit(void)
+
 # Reset the state of a virtual (guest) CPU
 #
 # Mode: user, softmmu
diff --git a/trace/control.c b/trace/control.c
index cb79bb17ec..56a2632584 100644
--- a/trace/control.c
+++ b/trace/control.c
@@ -26,6 +26,7 @@
 #include "qemu/error-report.h"
 #include "qemu/config-file.h"
 #include "monitor/monitor.h"
+#include "trace.h"
 
 int trace_events_enabled_count;
 
@@ -264,6 +265,8 @@ void trace_fini_vcpu(CPUState *vcpu)
     TraceEventIter iter;
     TraceEvent *ev;
 
+    trace_guest_cpu_exit(vcpu);
+
     trace_event_iter_init(&iter, NULL);
     while ((ev = trace_event_iter_next(&iter)) != NULL) {
         if (trace_event_is_vcpu(ev) &&