Move all trace-events for files in the hw/virtio/ directory to their own file.
Signed-off-by: Daniel P. Berrange <berra...@redhat.com> --- Makefile.objs | 1 + hw/virtio/trace-events | 41 +++++++++++++++++++++++++++++++++++++++++ trace-events | 14 -------------- 3 files changed, 42 insertions(+), 14 deletions(-) create mode 100644 hw/virtio/trace-events diff --git a/Makefile.objs b/Makefile.objs index 867c135..165475c 100644 --- a/Makefile.objs +++ b/Makefile.objs @@ -128,3 +128,4 @@ trace-events-y += hw/block/trace-events trace-events-y += hw/char/trace-events trace-events-y += hw/intc/trace-events trace-events-y += hw/net/trace-events +trace-events-y += hw/virtio/trace-events diff --git a/hw/virtio/trace-events b/hw/virtio/trace-events new file mode 100644 index 0000000..b88c3dc --- /dev/null +++ b/hw/virtio/trace-events @@ -0,0 +1,41 @@ +# Trace events for debugging and performance instrumentation +# +# This file is processed by the tracetool script during the build. +# +# To add a new trace event: +# +# 1. Choose a name for the trace event. Declare its arguments and format +# string. +# +# 2. Call the trace event from code using trace_##name, e.g. multiwrite_cb() -> +# trace_multiwrite_cb(). The source file must #include "trace.h". +# +# Format of a trace event: +# +# [disable] <name>(<type1> <arg1>[, <type2> <arg2>] ...) "<format-string>" +# +# Example: g_malloc(size_t size) "size %zu" +# +# The "disable" keyword will build without the trace event. +# +# The <name> must be a valid as a C function name. +# +# Types should be standard C types. Use void * for pointers because the trace +# system may not have the necessary headers included. +# +# The <format-string> should be a sprintf()-compatible format string. + +# hw/virtio/virtio.c +virtqueue_fill(void *vq, const void *elem, unsigned int len, unsigned int idx) "vq %p elem %p len %u idx %u" +virtqueue_flush(void *vq, unsigned int count) "vq %p count %u" +virtqueue_pop(void *vq, void *elem, unsigned int in_num, unsigned int out_num) "vq %p elem %p in_num %u out_num %u" +virtio_queue_notify(void *vdev, int n, void *vq) "vdev %p n %d vq %p" +virtio_irq(void *vq) "vq %p" +virtio_notify(void *vdev, void *vq) "vdev %p vq %p" +virtio_set_status(void *vdev, uint8_t val) "vdev %p val %u" + +# hw/virtio/virtio-rng.c +virtio_rng_guest_not_ready(void *rng) "rng %p: guest not ready" +virtio_rng_pushed(void *rng, size_t len) "rng %p: %zd bytes pushed" +virtio_rng_request(void *rng, size_t size, unsigned quota) "rng %p: %zd bytes requested, %u bytes quota left" + diff --git a/trace-events b/trace-events index 1792f2b..8e8de59 100644 --- a/trace-events +++ b/trace-events @@ -25,20 +25,6 @@ # # The <format-string> should be a sprintf()-compatible format string. -# hw/virtio/virtio.c -virtqueue_fill(void *vq, const void *elem, unsigned int len, unsigned int idx) "vq %p elem %p len %u idx %u" -virtqueue_flush(void *vq, unsigned int count) "vq %p count %u" -virtqueue_pop(void *vq, void *elem, unsigned int in_num, unsigned int out_num) "vq %p elem %p in_num %u out_num %u" -virtio_queue_notify(void *vdev, int n, void *vq) "vdev %p n %d vq %p" -virtio_irq(void *vq) "vq %p" -virtio_notify(void *vdev, void *vq) "vdev %p vq %p" -virtio_set_status(void *vdev, uint8_t val) "vdev %p val %u" - -# hw/virtio/virtio-rng.c -virtio_rng_guest_not_ready(void *rng) "rng %p: guest not ready" -virtio_rng_pushed(void *rng, size_t len) "rng %p: %zd bytes pushed" -virtio_rng_request(void *rng, size_t size, unsigned quota) "rng %p: %zd bytes requested, %u bytes quota left" - # thread-pool.c thread_pool_submit(void *pool, void *req, void *opaque) "pool %p req %p opaque %p" thread_pool_complete(void *pool, void *req, void *opaque, int ret) "pool %p req %p opaque %p ret %d" -- 2.5.5