diff mbox series

[v1,03/13] hw/virtio: add vhost_user_[read|write] trace points

Message ID 20220321153037.3622127-4-alex.bennee@linaro.org
State New
Headers show
Series various virtio docs, fixes and tweaks | expand

Commit Message

Alex Bennée March 21, 2022, 3:30 p.m. UTC
These are useful when trying to debug the initial vhost-user
negotiation, especially when it hard to get logging from the low level
library on the other side.

Signed-off-by: Alex Bennée <alex.bennee@linaro.org>

---
v2
  - fixed arguments
---
 hw/virtio/vhost-user.c | 4 ++++
 hw/virtio/trace-events | 2 ++
 2 files changed, 6 insertions(+)

Comments

Philippe Mathieu-Daudé March 21, 2022, 10:29 p.m. UTC | #1
On 21/3/22 16:30, Alex Bennée wrote:
> These are useful when trying to debug the initial vhost-user
> negotiation, especially when it hard to get logging from the low level
> library on the other side.
> 
> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
> 
> ---
> v2
>    - fixed arguments
> ---
>   hw/virtio/vhost-user.c | 4 ++++
>   hw/virtio/trace-events | 2 ++
>   2 files changed, 6 insertions(+)
> 
> diff --git a/hw/virtio/vhost-user.c b/hw/virtio/vhost-user.c
> index 6abbc9da32..b27b8c56e2 100644
> --- a/hw/virtio/vhost-user.c
> +++ b/hw/virtio/vhost-user.c
> @@ -489,6 +489,8 @@ static int vhost_user_write(struct vhost_dev *dev, VhostUserMsg *msg,
>           return ret < 0 ? -saved_errno : -EIO;
>       }
>   
> +    trace_vhost_user_write(msg->hdr.request, msg->hdr.flags);
> +
>       return 0;
>   }
>   
> @@ -542,6 +544,8 @@ static int vhost_user_set_log_base(struct vhost_dev *dev, uint64_t base,
>           }
>       }
>   
> +    trace_vhost_user_read(msg.hdr.request, msg.hdr.flags);
> +
>       return 0;
>   }
>   
> diff --git a/hw/virtio/trace-events b/hw/virtio/trace-events
> index 46851a7cd1..fd213e2a27 100644
> --- a/hw/virtio/trace-events
> +++ b/hw/virtio/trace-events
> @@ -21,6 +21,8 @@ vhost_user_set_mem_table_withfd(int index, const char *name, uint64_t memory_siz
>   vhost_user_postcopy_waker(const char *rb, uint64_t rb_offset) "%s + 0x%"PRIx64
>   vhost_user_postcopy_waker_found(uint64_t client_addr) "0x%"PRIx64
>   vhost_user_postcopy_waker_nomatch(const char *rb, uint64_t rb_offset) "%s + 0x%"PRIx64
> +vhost_user_read(uint32_t req, uint32_t flags) "req:%d flags:0x%"PRIx32""
> +vhost_user_write(uint32_t req, uint32_t flags) "req:%d flags:0x%"PRIx32""

"req:%u", otherwise:
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
diff mbox series

Patch

diff --git a/hw/virtio/vhost-user.c b/hw/virtio/vhost-user.c
index 6abbc9da32..b27b8c56e2 100644
--- a/hw/virtio/vhost-user.c
+++ b/hw/virtio/vhost-user.c
@@ -489,6 +489,8 @@  static int vhost_user_write(struct vhost_dev *dev, VhostUserMsg *msg,
         return ret < 0 ? -saved_errno : -EIO;
     }
 
+    trace_vhost_user_write(msg->hdr.request, msg->hdr.flags);
+
     return 0;
 }
 
@@ -542,6 +544,8 @@  static int vhost_user_set_log_base(struct vhost_dev *dev, uint64_t base,
         }
     }
 
+    trace_vhost_user_read(msg.hdr.request, msg.hdr.flags);
+
     return 0;
 }
 
diff --git a/hw/virtio/trace-events b/hw/virtio/trace-events
index 46851a7cd1..fd213e2a27 100644
--- a/hw/virtio/trace-events
+++ b/hw/virtio/trace-events
@@ -21,6 +21,8 @@  vhost_user_set_mem_table_withfd(int index, const char *name, uint64_t memory_siz
 vhost_user_postcopy_waker(const char *rb, uint64_t rb_offset) "%s + 0x%"PRIx64
 vhost_user_postcopy_waker_found(uint64_t client_addr) "0x%"PRIx64
 vhost_user_postcopy_waker_nomatch(const char *rb, uint64_t rb_offset) "%s + 0x%"PRIx64
+vhost_user_read(uint32_t req, uint32_t flags) "req:%d flags:0x%"PRIx32""
+vhost_user_write(uint32_t req, uint32_t flags) "req:%d flags:0x%"PRIx32""
 
 # vhost-vdpa.c
 vhost_vdpa_dma_map(void *vdpa, int fd, uint32_t msg_type, uint64_t iova, uint64_t size, uint64_t uaddr, uint8_t perm, uint8_t type) "vdpa:%p fd: %d msg_type: %"PRIu32" iova: 0x%"PRIx64" size: 0x%"PRIx64" uaddr: 0x%"PRIx64" perm: 0x%"PRIx8" type: %"PRIu8