diff options
author | Amit Shah <amit.shah@redhat.com> | 2011-07-05 16:37:49 +0530 |
---|---|---|
committer | Amit Shah <amit.shah@redhat.com> | 2011-07-18 15:30:14 +0530 |
commit | d02e4fa4a8e180c0a312b7c520a167894a0c8a83 (patch) | |
tree | c8d09fddfb8ff4014045365a8ad7a689b12eb58d | |
parent | 49e3fdd7f2f3ecccc6f75d976246124d0edaec3f (diff) |
virtio-console: Add some trace events
Add some trace events for messages passed between the char layer and the
virtio-serial bus.
Signed-off-by: Amit Shah <amit.shah@redhat.com>
-rw-r--r-- | hw/virtio-console.c | 9 | ||||
-rw-r--r-- | trace-events | 5 |
2 files changed, 13 insertions, 1 deletions
diff --git a/hw/virtio-console.c b/hw/virtio-console.c index b076331d37..713a761dfa 100644 --- a/hw/virtio-console.c +++ b/hw/virtio-console.c @@ -12,6 +12,7 @@ #include "qemu-char.h" #include "qemu-error.h" +#include "trace.h" #include "virtio-serial.h" typedef struct VirtConsole { @@ -24,8 +25,12 @@ typedef struct VirtConsole { static ssize_t flush_buf(VirtIOSerialPort *port, const uint8_t *buf, size_t len) { VirtConsole *vcon = DO_UPCAST(VirtConsole, port, port); + ssize_t ret; - return qemu_chr_write(vcon->chr, buf, len); + ret = qemu_chr_write(vcon->chr, buf, len); + + trace_virtio_console_flush_buf(port->id, len, ret); + return ret; } /* Callback function that's called when the guest opens the port */ @@ -57,6 +62,7 @@ static void chr_read(void *opaque, const uint8_t *buf, int size) { VirtConsole *vcon = opaque; + trace_virtio_console_chr_read(vcon->port.id, size); virtio_serial_write(&vcon->port, buf, size); } @@ -64,6 +70,7 @@ static void chr_event(void *opaque, int event) { VirtConsole *vcon = opaque; + trace_virtio_console_chr_event(vcon->port.id, event); switch (event) { case CHR_EVENT_OPENED: virtio_serial_open(&vcon->port); diff --git a/trace-events b/trace-events index 59420e8a6e..765a15ed77 100644 --- a/trace-events +++ b/trace-events @@ -52,6 +52,11 @@ disable virtio_serial_throttle_port(unsigned int port, bool throttle) "port %u, disable virtio_serial_handle_control_message(uint16_t event, uint16_t value) "event %u, value %u" disable virtio_serial_handle_control_message_port(unsigned int port) "port %u" +# hw/virtio-console.c +disable virtio_console_flush_buf(unsigned int port, size_t len, ssize_t ret) "port %u, in_len %zu, out_len %zd" +disable virtio_console_chr_read(unsigned int port, int size) "port %u, size %d" +disable virtio_console_chr_event(unsigned int port, int event) "port %u, event %d" + # block.c disable multiwrite_cb(void *mcb, int ret) "mcb %p ret %d" disable bdrv_aio_multiwrite(void *mcb, int num_callbacks, int num_reqs) "mcb %p num_callbacks %d num_reqs %d" |