diff mbox

[v3,08/11] virtio-gpu: add cursor update tracepoint

Message ID 1443789116-27876-9-git-send-email-kraxel@redhat.com
State New
Headers show

Commit Message

Gerd Hoffmann Oct. 2, 2015, 12:31 p.m. UTC
---
 hw/display/virtio-gpu.c | 9 ++++++++-
 trace-events            | 1 +
 2 files changed, 9 insertions(+), 1 deletion(-)

Comments

Marc-André Lureau Oct. 2, 2015, 2:36 p.m. UTC | #1
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>



On Fri, Oct 2, 2015 at 2:31 PM, Gerd Hoffmann <kraxel@redhat.com> wrote:
> ---
>  hw/display/virtio-gpu.c | 9 ++++++++-
>  trace-events            | 1 +
>  2 files changed, 9 insertions(+), 1 deletion(-)
>
> diff --git a/hw/display/virtio-gpu.c b/hw/display/virtio-gpu.c
> index 0f8d35c..a836ce3 100644
> --- a/hw/display/virtio-gpu.c
> +++ b/hw/display/virtio-gpu.c
> @@ -91,13 +91,20 @@ static void update_cursor_data_virgl(VirtIOGPU *g,
>  static void update_cursor(VirtIOGPU *g, struct virtio_gpu_update_cursor *cursor)
>  {
>      struct virtio_gpu_scanout *s;
> +    bool move = cursor->hdr.type != VIRTIO_GPU_CMD_MOVE_CURSOR;
>
>      if (cursor->pos.scanout_id >= g->conf.max_outputs) {
>          return;
>      }
>      s = &g->scanout[cursor->pos.scanout_id];
>
> -    if (cursor->hdr.type != VIRTIO_GPU_CMD_MOVE_CURSOR) {
> +    trace_virtio_gpu_update_cursor(cursor->pos.scanout_id,
> +                                   cursor->pos.x,
> +                                   cursor->pos.y,
> +                                   move ? "move" : "update",
> +                                   cursor->resource_id);
> +
> +    if (move) {
>          if (!s->current_cursor) {
>              s->current_cursor = cursor_alloc(64, 64);
>          }
> diff --git a/trace-events b/trace-events
> index 02ff51b..2da6832 100644
> --- a/trace-events
> +++ b/trace-events
> @@ -1199,6 +1199,7 @@ virtio_gpu_cmd_ctx_destroy(uint32_t ctx) "ctx 0x%x"
>  virtio_gpu_cmd_ctx_res_attach(uint32_t ctx, uint32_t res) "ctx 0x%x, res 0x%x"
>  virtio_gpu_cmd_ctx_res_detach(uint32_t ctx, uint32_t res) "ctx 0x%x, res 0x%x"
>  virtio_gpu_cmd_ctx_submit(uint32_t ctx, uint32_t size) "ctx 0x%x, size %d"
> +virtio_gpu_update_cursor(uint32_t scanout, uint32_t x, uint32_t y, const char *type, uint32_t res) "scanout %d, x %d, y %d, %s, res 0x%x"
>  virtio_gpu_fence_ctrl(uint64_t fence, uint32_t type) "fence 0x%" PRIx64 ", type 0x%x"
>  virtio_gpu_fence_resp(uint64_t fence) "fence 0x%" PRIx64
>
> --
> 1.8.3.1
>
>
diff mbox

Patch

diff --git a/hw/display/virtio-gpu.c b/hw/display/virtio-gpu.c
index 0f8d35c..a836ce3 100644
--- a/hw/display/virtio-gpu.c
+++ b/hw/display/virtio-gpu.c
@@ -91,13 +91,20 @@  static void update_cursor_data_virgl(VirtIOGPU *g,
 static void update_cursor(VirtIOGPU *g, struct virtio_gpu_update_cursor *cursor)
 {
     struct virtio_gpu_scanout *s;
+    bool move = cursor->hdr.type != VIRTIO_GPU_CMD_MOVE_CURSOR;
 
     if (cursor->pos.scanout_id >= g->conf.max_outputs) {
         return;
     }
     s = &g->scanout[cursor->pos.scanout_id];
 
-    if (cursor->hdr.type != VIRTIO_GPU_CMD_MOVE_CURSOR) {
+    trace_virtio_gpu_update_cursor(cursor->pos.scanout_id,
+                                   cursor->pos.x,
+                                   cursor->pos.y,
+                                   move ? "move" : "update",
+                                   cursor->resource_id);
+
+    if (move) {
         if (!s->current_cursor) {
             s->current_cursor = cursor_alloc(64, 64);
         }
diff --git a/trace-events b/trace-events
index 02ff51b..2da6832 100644
--- a/trace-events
+++ b/trace-events
@@ -1199,6 +1199,7 @@  virtio_gpu_cmd_ctx_destroy(uint32_t ctx) "ctx 0x%x"
 virtio_gpu_cmd_ctx_res_attach(uint32_t ctx, uint32_t res) "ctx 0x%x, res 0x%x"
 virtio_gpu_cmd_ctx_res_detach(uint32_t ctx, uint32_t res) "ctx 0x%x, res 0x%x"
 virtio_gpu_cmd_ctx_submit(uint32_t ctx, uint32_t size) "ctx 0x%x, size %d"
+virtio_gpu_update_cursor(uint32_t scanout, uint32_t x, uint32_t y, const char *type, uint32_t res) "scanout %d, x %d, y %d, %s, res 0x%x"
 virtio_gpu_fence_ctrl(uint64_t fence, uint32_t type) "fence 0x%" PRIx64 ", type 0x%x"
 virtio_gpu_fence_resp(uint64_t fence) "fence 0x%" PRIx64