This patch adds tracepoints at creating and removing virtual devices. It is useful for investigation of trouble related to virtual devices.
Signed-off-by: Kazuya Saito <[email protected]> --- hw/qdev.c | 3 +++ trace-events | 4 ++++ 2 files changed, 7 insertions(+), 0 deletions(-) diff --git a/hw/qdev.c b/hw/qdev.c index 0b20280..0fda23e 100644 --- a/hw/qdev.c +++ b/hw/qdev.c @@ -30,6 +30,7 @@ #include "qapi/error.h" #include "qapi/qmp/qerror.h" #include "qapi/visitor.h" +#include "trace.h" int qdev_hotplug = 0; static bool qdev_hot_added = false; @@ -124,6 +125,7 @@ DeviceState *qdev_create(BusState *bus, const char *name) } } + trace_qdev_create(dev, dev->parent_bus); return dev; } @@ -268,6 +270,7 @@ void qdev_init_nofail(DeviceState *dev) /* Unlink device from bus and free the structure. */ void qdev_free(DeviceState *dev) { + trace_qdev_free(dev, dev->parent_bus); object_unparent(OBJECT(dev)); } diff --git a/trace-events b/trace-events index c691ce4..235b978 100644 --- a/trace-events +++ b/trace-events @@ -1102,3 +1102,7 @@ kvm_ioctl(int type) "type %d" kvm_vm_ioctl(int type) "type %d" kvm_vcpu_ioctl(int type) "type %d" kvm_run_exit(uint32_t reason) "reason %d" + +# qdev.c +qdev_create(void *dev, void *bus) "dev %p, bus %p" +qdev_free(void *dev, void *bus) "dev %p, bus %p" -- 1.7.1
