monitor: enhance ttrace option for layer, pp, capture 50/163550/1
authorBoram Park <boram1288.park@samsung.com>
Tue, 12 Dec 2017 02:44:44 +0000 (11:44 +0900)
committerBoram Park <boram1288.park@samsung.com>
Tue, 12 Dec 2017 04:03:38 +0000 (13:03 +0900)
Change-Id: I3c142a49bff04844734137ea912cd5a84a81e05c

src/tdm.c
src/tdm_capture.c
src/tdm_layer.c
src/tdm_monitor_server.c
src/tdm_pp.c
src/tdm_private.h
src/tdm_server.c
src/tdm_vblank.c

index 418010c..a66ebad 100644 (file)
--- a/src/tdm.c
+++ b/src/tdm.c
@@ -679,6 +679,8 @@ tdm_display_update(tdm_display *dpy)
 
 int tdm_debug_module;
 int tdm_debug_dump;
+int tdm_ttrace_module;
+int tdm_ttrace_output;
 
 static tdm_private_display *g_private_display;
 static pthread_mutex_t gLock = PTHREAD_MUTEX_INITIALIZER;
@@ -1362,6 +1364,75 @@ enable_fail:
 }
 
 INTERN tdm_error
+tdm_display_enable_ttrace(tdm_private_display *private_display, const char *ttrace, int output_id, char *reply, int *len)
+{
+       char temp[TDM_PATH_LEN];
+       char *arg;
+       char *end;
+       tdm_output *output;
+       tdm_error ret;
+       tdm_output_type type;
+
+       snprintf(temp, TDM_PATH_LEN, "%s", ttrace);
+
+       tdm_ttrace_output = output_id;
+       tdm_ttrace_module = 0;
+
+       output = tdm_display_get_output(private_display, output_id, &ret);
+       if (!output) {
+               TDM_SNPRINTF(reply, len, "can't find the output_id(%d)\n", output_id);
+               return ret;
+       }
+
+       ret = tdm_output_get_output_type(output, &type);
+       if (ret != TDM_ERROR_NONE) {
+               TDM_SNPRINTF(reply, len, "can't find the type of output_id(%d)\n", output_id);
+               return ret;
+       }
+
+       arg = strtok_r(temp, TDM_DELIM, &end);
+       while (arg) {
+               if (!strncmp(arg, "none", 4))
+                       tdm_ttrace_module = 0;
+               else if (!strncmp(arg, "all", 3))
+                       tdm_ttrace_module = 0xFFFFFFFF;
+               else if (!strncmp(arg, "vblank", 6))
+                       tdm_ttrace_module |= TDM_TTRACE_VBLANK;
+               else if (!strncmp(arg, "client", 6))
+                       tdm_ttrace_module |= TDM_TTRACE_CLIENT;
+               else if (!strncmp(arg, "layer", 5))
+                       tdm_ttrace_module |= TDM_TTRACE_LAYER;
+               else if (!strncmp(arg, "pp", 2))
+                       tdm_ttrace_module |= TDM_TTRACE_PP;
+               else if (!strncmp(arg, "capture", 7))
+                       tdm_ttrace_module |= TDM_TTRACE_CAPTURE;
+               else  {
+                       tdm_ttrace_module = 0;
+                       tdm_display_enable_ttrace_vblank(private_display, NULL, 0);
+                       tdm_server_enable_ttrace_client_vblank(private_display, NULL, 0);
+                       TDM_SNPRINTF(reply, len, "unknown option: '%s'\n", arg);
+                       return TDM_ERROR_NONE;
+               }
+
+               arg = strtok_r(NULL, TDM_DELIM, &end);
+       }
+
+       TDM_SNPRINTF(reply, len, "ttrace debugging... '%s' %x\n", ttrace, tdm_ttrace_module);
+
+       if (tdm_ttrace_module & TDM_TTRACE_VBLANK)
+               tdm_display_enable_ttrace_vblank(private_display, output, 1);
+       else
+               tdm_display_enable_ttrace_vblank(private_display, NULL, 0);
+
+       if (tdm_ttrace_module & TDM_TTRACE_CLIENT)
+               tdm_server_enable_ttrace_client_vblank(private_display, output, 1);
+       else
+               tdm_server_enable_ttrace_client_vblank(private_display, NULL, 0);
+
+       return TDM_ERROR_NONE;
+}
+
+INTERN tdm_error
 tdm_display_enable_fps(tdm_private_display *private_display, int enable)
 {
        private_display->print_fps = enable;
index bfb9e40..f0b4be6 100644 (file)
@@ -141,6 +141,11 @@ tdm_capture_cb_done(tdm_capture *capture_backend, tbm_surface_h buffer,
        if (tdm_debug_module & TDM_DEBUG_BUFFER)
                TDM_INFO("capture(%p) done: %p", private_capture, buffer);
 
+       if (tdm_ttrace_module & TDM_TTRACE_CAPTURE) {
+               tbm_bo bo = tbm_surface_internal_get_bo(buffer, 0);
+               TDM_TRACE_ASYNC_END((int)private_capture, "[CAPTURE] %d", tbm_bo_export(bo));
+       }
+
        if (!LIST_IS_EMPTY(&private_capture->buffer_list)) {
                first_entry = container_of((&private_capture->buffer_list)->next, capture_buffer, link);
                if (first_entry->buffer != buffer)
@@ -370,6 +375,12 @@ tdm_capture_destroy_internal(tdm_private_capture *private_capture)
                _pthread_mutex_unlock(&private_display->lock);
                LIST_FOR_EACH_ENTRY_SAFE(b, bb, &clone_list, link) {
                        LIST_DEL(&b->link);
+
+                       if (tdm_ttrace_module & TDM_TTRACE_CAPTURE) {
+                               tbm_bo bo = tbm_surface_internal_get_bo(b->buffer, 0);
+                               TDM_TRACE_ASYNC_END((int)private_capture, "[CAPTURE] %d", tbm_bo_export(bo));
+                       }
+
                        tdm_buffer_unref_backend(b->buffer);
                        free(b);
                }
@@ -389,6 +400,12 @@ tdm_capture_destroy_internal(tdm_private_capture *private_capture)
                _pthread_mutex_unlock(&private_display->lock);
                LIST_FOR_EACH_ENTRY_SAFE(b, bb, &clone_list, link) {
                        LIST_DEL(&b->link);
+
+                       if (tdm_ttrace_module & TDM_TTRACE_CAPTURE) {
+                               tbm_bo bo = tbm_surface_internal_get_bo(b->buffer, 0);
+                               TDM_TRACE_ASYNC_END((int)private_capture, "[CAPTURE] %d", tbm_bo_export(bo));
+                       }
+
                        tdm_buffer_unref_backend(b->buffer);
                        free(b);
                }
@@ -544,6 +561,11 @@ tdm_capture_attach(tdm_capture *capture, tbm_surface_h buffer)
                tdm_buffer_list_dump(&private_capture->buffer_list);
        }
 
+       if (tdm_ttrace_module & TDM_TTRACE_CAPTURE) {
+               tbm_bo bo = tbm_surface_internal_get_bo(buffer, 0);
+               TDM_TRACE_ASYNC_BEGIN((int)capture, "[CAPTURE] %d", tbm_bo_export(bo));
+       }
+
        _pthread_mutex_unlock(&private_display->lock);
 
        return ret;
index 5d3d1c9..d378622 100644 (file)
@@ -453,11 +453,17 @@ tdm_layer_set_buffer(tdm_layer *layer, tbm_surface_h buffer)
        private_layer->pending_buffer_changed = 1;
 
        if (private_layer->pending_buffer) {
-               tbm_surface_internal_unref(private_layer->pending_buffer);
 
                if (tdm_debug_module & TDM_DEBUG_BUFFER)
                        TDM_INFO("layer(%p) pending_buffer(%p) skipped",
                                         private_layer, private_layer->pending_buffer);
+
+               if (tdm_ttrace_module & TDM_TTRACE_LAYER) {
+                       tbm_bo bo = tbm_surface_internal_get_bo(private_layer->pending_buffer, 0);
+                       TDM_TRACE_ASYNC_END((int)private_layer, "[LAYER] %d", tbm_bo_export(bo));
+               }
+
+               tbm_surface_internal_unref(private_layer->pending_buffer);
        }
 
        tbm_surface_internal_ref(buffer);
@@ -467,6 +473,11 @@ tdm_layer_set_buffer(tdm_layer *layer, tbm_surface_h buffer)
                TDM_INFO("layer(%p) pending_buffer(%p)",
                                 private_layer, private_layer->pending_buffer);
 
+       if (tdm_ttrace_module & TDM_TTRACE_LAYER) {
+               tbm_bo bo = tbm_surface_internal_get_bo(private_layer->pending_buffer, 0);
+               TDM_TRACE_ASYNC_BEGIN((int)private_layer, "[LAYER] %d", tbm_bo_export(bo));
+       }
+
        _pthread_mutex_unlock(&private_display->lock);
 
        return ret;
@@ -528,8 +539,14 @@ tdm_layer_committed(tdm_private_layer *private_layer, tdm_private_layer_buffer *
        }
        /* LCOV_EXCL_STOP */
 
-       if (private_layer->showing_buffer)
+       if (private_layer->showing_buffer) {
+               if (tdm_ttrace_module & TDM_TTRACE_LAYER) {
+                       tbm_bo bo = tbm_surface_internal_get_bo(private_layer->showing_buffer->buffer, 0);
+                       TDM_TRACE_ASYNC_END((int)private_layer, "[LAYER] %d", tbm_bo_export(bo));
+               }
+
                _tdm_layer_free_buffer(private_layer, private_layer->showing_buffer);
+       }
 
        private_layer->showing_buffer = *committed_buffer;
        *committed_buffer = NULL;
index ea56a8b..7dbdc3c 100644 (file)
@@ -107,57 +107,22 @@ _tdm_monitor_server_dpms(unsigned int pid, char *cwd, int argc, char *argv[], ch
 }
 
 static void
-_tdm_monitor_server_ttrace_vblank(unsigned int pid, char *cwd, int argc, char *argv[], char *reply, int *len, tdm_display *dpy)
+_tdm_monitor_server_ttrace(unsigned int pid, char *cwd, int argc, char *argv[], char *reply, int *len, tdm_display *dpy)
 {
-       int ttrace_vblank, output_id = 0;
-       char *arg;
+       int output_id = 0;
        char *end;
+       tdm_error ret;
 
        if (argc < 3) {
                _tdm_monitor_server_usage(argv[0], reply, len);
                return;
        }
 
-       arg = argv[2];
-       ttrace_vblank = strtol(arg, &end, 10);
-
-       if (ttrace_vblank > 0) {
-               tdm_output *output;
-               tdm_error ret;
-               tdm_output_type type;
-               char *temp;
-
-               if (*end == '@') {
-                       arg = end + 1;
-                       output_id = strtol(arg, &end, 10);
-               }
-
-               output = tdm_display_get_output(dpy, output_id, NULL);
-               if (!output) {
-                       TDM_SNPRINTF(reply, len, "can't find the output_id(%d)\n", output_id);
-                       return;
-               }
-
-               ret = tdm_output_get_output_type(output, &type);
-               if (ret != TDM_ERROR_NONE) {
-                       TDM_SNPRINTF(reply, len, "can't find the type of output_id(%d)\n", output_id);
-                       return;
-               }
-
-               temp = "server";
-               tdm_display_enable_ttrace_vblank(dpy, output, 1);
-
-               if (ttrace_vblank > 1) {
-                       temp = "clients";
-                       tdm_server_enable_ttrace_vblank(dpy, output, 1);
-               }
+       if (argv[3])
+               output_id = strtol(argv[3], &end, 10);
 
-               TDM_SNPRINTF(reply, len, "enable ttrace vblank for '%s': %s \n", tdm_conn_str(type), temp);
-       } else {
-               tdm_display_enable_ttrace_vblank(dpy, NULL, 0);
-               tdm_server_enable_ttrace_vblank(dpy, NULL, 0);
-               TDM_SNPRINTF(reply, len, "disable ttrace vblank\n");
-       }
+       ret = tdm_display_enable_ttrace(dpy, argv[2], output_id, reply, len);
+       TDM_DBG_RETURN_IF_FAIL(ret == TDM_ERROR_NONE);
 }
 
 static void
@@ -547,9 +512,10 @@ static struct {
                "set output dpms", "<output_idx>:<dpms>", "0:3 or 0:0"
        },
        {
-               "ttrace_vblank", _tdm_monitor_server_ttrace_vblank,
-               "enable/disable the vblank for ttrace [0:disable, 1:server, 2:clients]",
-               "<enable>[@<output_idx>]", "0 or 1 or 2 or 1@0 or 2@0 or 1@1 or 2@1"
+               "ttrace", _tdm_monitor_server_ttrace,
+               "enable/disable ttrace (module: none, vblank, client, layer, pp, capture, all",
+               "<module>[@<output_idx>]",
+               NULL
        },
        {
                "debug", _tdm_monitor_server_debug,
index a58e4fc..53f8c73 100644 (file)
@@ -139,9 +139,6 @@ tdm_pp_cb_done(tdm_pp *pp_backend, tbm_surface_h src, tbm_surface_h dst,
                /* LCOV_EXCL_STOP */
        }
 
-       if (tdm_debug_module & TDM_DEBUG_BUFFER)
-               TDM_INFO("pp(%p) done: src(%p) dst(%p)", private_pp, src, dst);
-
        if (!LIST_IS_EMPTY(&private_pp->buffer_list)) {
                first_entry = container_of((&private_pp->buffer_list)->next, pp_buffer, link);
                if (first_entry->src != src || first_entry->dst != dst)
@@ -154,6 +151,14 @@ tdm_pp_cb_done(tdm_pp *pp_backend, tbm_surface_h src, tbm_surface_h dst,
                LIST_DEL(&pp_buffer->link);
                LIST_DELINIT(&pp_buffer->commit_link);
 
+               if (tdm_debug_module & TDM_DEBUG_BUFFER)
+                       TDM_INFO("pp(%p) done: src(%p) dst(%p)", private_pp, src, dst);
+
+               if (tdm_ttrace_module & TDM_TTRACE_PP) {
+                       tbm_bo bo = tbm_surface_internal_get_bo(dst, 0);
+                       TDM_TRACE_ASYNC_END((int)private_pp, "[PP] %d", tbm_bo_export(bo));
+               }
+
                _pthread_mutex_unlock(&private_display->lock);
                if (private_pp->done_func)
                        private_pp->done_func(private_pp, src, dst, private_pp->done_user_data);
@@ -285,6 +290,12 @@ tdm_pp_destroy_internal(tdm_private_pp *private_pp)
                _pthread_mutex_unlock(&private_display->lock);
                LIST_FOR_EACH_ENTRY_SAFE(b, bb, &clone_list, link) {
                        LIST_DEL(&b->link);
+
+                       if (tdm_ttrace_module & TDM_TTRACE_PP) {
+                               tbm_bo bo = tbm_surface_internal_get_bo(b->dst, 0);
+                               TDM_TRACE_ASYNC_END((int)private_pp, "[PP] %d", tbm_bo_export(bo));
+                       }
+
                        tdm_buffer_unref_backend(b->src);
                        tdm_buffer_unref_backend(b->dst);
                        free(b);
@@ -305,6 +316,12 @@ tdm_pp_destroy_internal(tdm_private_pp *private_pp)
                _pthread_mutex_unlock(&private_display->lock);
                LIST_FOR_EACH_ENTRY_SAFE(b, bb, &clone_list, link) {
                        LIST_DEL(&b->link);
+
+                       if (tdm_ttrace_module & TDM_TTRACE_PP) {
+                               tbm_bo bo = tbm_surface_internal_get_bo(b->dst, 0);
+                               TDM_TRACE_ASYNC_END((int)private_pp, "[PP] %d", tbm_bo_export(bo));
+                       }
+
                        tdm_buffer_unref_backend(b->src);
                        tdm_buffer_unref_backend(b->dst);
                        free(b);
@@ -467,6 +484,11 @@ tdm_pp_attach(tdm_pp *pp, tbm_surface_h src, tbm_surface_h dst)
                _tdm_pp_print_list(&private_pp->pending_buffer_list);
        }
 
+       if (tdm_ttrace_module & TDM_TTRACE_PP) {
+               tbm_bo bo = tbm_surface_internal_get_bo(dst, 0);
+               TDM_TRACE_ASYNC_BEGIN((int)pp, "[PP] %d", tbm_bo_export(bo));
+       }
+
        _pthread_mutex_unlock(&private_display->lock);
 
        return ret;
index 37cceb0..8c710a8 100644 (file)
@@ -86,8 +86,19 @@ enum {
        TDM_DEBUG_COMMIT    = (1 << 5),
 };
 
+enum {
+       TDM_TTRACE_NONE,
+       TDM_TTRACE_VBLANK    = (1 << 0),
+       TDM_TTRACE_CLIENT    = (1 << 1),
+       TDM_TTRACE_LAYER     = (1 << 2),
+       TDM_TTRACE_PP        = (1 << 3),
+       TDM_TTRACE_CAPTURE   = (1 << 4),
+};
+
 extern int tdm_debug_module;
 extern int tdm_debug_dump;
+extern int tdm_ttrace_module;
+extern int tdm_ttrace_output;
 
 #ifdef HAVE_TTRACE
 #include <ttrace.h>
@@ -238,7 +249,6 @@ struct _tdm_private_output {
 
        /* for ttrace vblank */
        tdm_vblank *ttrace_vblank;
-       unsigned int ttrace_vblank_client;
 };
 
 struct _tdm_private_layer {
@@ -658,7 +668,7 @@ tdm_server_deinit(tdm_private_loop *private_loop);
 const char*
 tdm_server_get_client_name(pid_t pid);
 tdm_error
-tdm_server_enable_ttrace_vblank(tdm_display *dpy, tdm_output *output, int enable);
+tdm_server_enable_ttrace_client_vblank(tdm_display *dpy, tdm_output *output, int enable);
 
 char *
 tdm_helper_dump_make_directory(const char *path, char *reply, int *len);
@@ -753,7 +763,7 @@ tdm_display_enable_dump(tdm_private_display *private_display, const char *dump_s
 tdm_error
 tdm_display_enable_path(const char *path);
 tdm_error
-tdm_display_enable_ttrace_vblank(tdm_display *dpy, tdm_output *output, int enable);
+tdm_display_enable_ttrace(tdm_private_display *private_display, const char *ttrace, int output_id, char *reply, int *len);
 tdm_error
 tdm_display_enable_fps(tdm_private_display *private_display, int enable);
 
index 3932819..3d9daf3 100644 (file)
@@ -88,7 +88,6 @@ typedef struct _tdm_server_client_info {
        pid_t pid;
        char name[TDM_NAME_LEN];
        struct wl_resource *resource;
-       tdm_private_server *private_server;
 } tdm_server_client_info;
 
 static tdm_private_server *keep_private_server;
@@ -169,7 +168,6 @@ _tdm_server_send_done(tdm_server_wait_info *wait_info, tdm_error error,
 {
        tdm_server_wait_info *found;
        tdm_server_vblank_info *vblank_info;
-       tdm_private_output *private_output;
 
        if (!keep_private_server)
                return;
@@ -188,10 +186,6 @@ _tdm_server_send_done(tdm_server_wait_info *wait_info, tdm_error error,
        wl_tdm_vblank_send_done(vblank_info->resource, wait_info->req_id,
                                                        sequence, tv_sec, tv_usec, error);
 
-       private_output = vblank_info->output_info->output;
-       if (private_output->ttrace_vblank_client)
-               TDM_TRACE_ASYNC_END((int)wait_info->req_time, "TDM_Server_Vblank:%u", vblank_info->stamp);
-
        destroy_wait(wait_info);
 }
 /* LCOV_EXCL_STOP */
@@ -322,7 +316,6 @@ _tdm_server_vblank_cb_wait_vblank(struct wl_client *client, struct wl_resource *
        tdm_server_vblank_info *vblank_info = wl_resource_get_user_data(resource);
        tdm_server_output_info *output_info = vblank_info->output_info;
        tdm_private_server *private_server = output_info->private_server;
-       tdm_private_output *private_output = output_info->output;
        tdm_server_wait_info *wait_info;
        unsigned int enable_fake = 0;
        tdm_error ret;
@@ -346,10 +339,6 @@ _tdm_server_vblank_cb_wait_vblank(struct wl_client *client, struct wl_resource *
        if (tdm_debug_module & TDM_DEBUG_VBLANK)
                TDM_DBG("req_id(%d) wait", req_id);
 
-       private_output = vblank_info->output_info->output;
-       if (private_output->ttrace_vblank_client)
-               TDM_TRACE_ASYNC_BEGIN((int)wait_info->req_time, "TDM_Server_Vblank:%u", vblank_info->stamp);
-
        ret = tdm_vblank_wait(vblank_info->vblank, req_sec, req_usec, interval, _tdm_server_cb_vblank, wait_info);
 
        tdm_vblank_get_enable_fake(vblank_info->vblank, &enable_fake);
@@ -376,7 +365,6 @@ _tdm_server_vblank_cb_wait_vblank_seq(struct wl_client *client, struct wl_resour
        tdm_server_vblank_info *vblank_info = wl_resource_get_user_data(resource);
        tdm_server_output_info *output_info = vblank_info->output_info;
        tdm_private_server *private_server = output_info->private_server;
-       tdm_private_output *private_output = output_info->output;
        tdm_server_wait_info *wait_info;
        unsigned int enable_fake = 0;
        tdm_error ret;
@@ -400,10 +388,6 @@ _tdm_server_vblank_cb_wait_vblank_seq(struct wl_client *client, struct wl_resour
        if (tdm_debug_module & TDM_DEBUG_VBLANK)
                TDM_DBG("req_id(%d) wait", req_id);
 
-       private_output = vblank_info->output_info->output;
-       if (private_output->ttrace_vblank_client)
-               TDM_TRACE_ASYNC_BEGIN((int)wait_info->req_time, "TDM_Server_Vblank:%u", vblank_info->stamp);
-
        ret = tdm_vblank_wait_seq(vblank_info->vblank, req_sec, req_usec, sequence, _tdm_server_cb_vblank, wait_info);
 
        tdm_vblank_get_enable_fake(vblank_info->vblank, &enable_fake);
@@ -502,6 +486,12 @@ _tdm_server_output_cb_create_vblank(struct wl_client *client, struct wl_resource
 
        wl_tdm_vblank_send_stamp(vblank_info->resource, vblank_info->stamp);
 
+       if (tdm_ttrace_module & TDM_TTRACE_CLIENT) {
+               tdm_output *output = tdm_display_get_output(private_loop->dpy, tdm_ttrace_output, NULL);
+               if (output == output_info->output)
+                       wl_tdm_vblank_send_ttrace(vblank_info->resource, 1);
+       }
+
        return;
 }
 
@@ -815,7 +805,6 @@ _tdm_server_bind(struct wl_client *client, void *data,
        }
 
        cinfo->resource = resource;
-       cinfo->private_server = data;
 
        LIST_ADDTAIL(&cinfo->link, &client_list);
        wl_client_get_credentials(client, &cinfo->pid, NULL, NULL);
@@ -1046,26 +1035,22 @@ tdm_server_get_client_name(pid_t pid)
 
 /* LCOV_EXCL_START */
 INTERN tdm_error
-tdm_server_enable_ttrace_vblank(tdm_display *dpy, tdm_output *output, int enable)
+tdm_server_enable_ttrace_client_vblank(tdm_display *dpy, tdm_output *output, int enable)
 {
-       tdm_server_client_info *cinfo = NULL;
-
-       LIST_FOR_EACH_ENTRY(cinfo, &client_list, link) {
-               tdm_private_server *private_server = cinfo->private_server;
-               tdm_server_output_info *output_info = NULL;
+       tdm_private_server *private_server = keep_private_server;
+       tdm_server_output_info *output_info = NULL;
 
-               LIST_FOR_EACH_ENTRY(output_info, &private_server->output_list, link) {
-                       tdm_server_vblank_info *vblank_info = NULL;
-                       tdm_private_output *private_output = output_info->output;
+       if (!keep_private_server)
+               return TDM_ERROR_NONE;
 
-                       if (output && output_info->output != output)
-                               continue;
+       LIST_FOR_EACH_ENTRY(output_info, &private_server->output_list, link) {
+               tdm_server_vblank_info *vblank_info = NULL;
 
-                       private_output->ttrace_vblank_client = enable;
+               if (output && output_info->output != output)
+                       continue;
 
-                       LIST_FOR_EACH_ENTRY(vblank_info, &output_info->vblank_list, link) {
-                               wl_tdm_vblank_send_ttrace(vblank_info->resource, enable);
-                       }
+               LIST_FOR_EACH_ENTRY(vblank_info, &output_info->vblank_list, link) {
+                       wl_tdm_vblank_send_ttrace(vblank_info->resource, enable);
                }
        }
 
index 19c12dd..72b2525 100644 (file)
@@ -971,8 +971,6 @@ tdm_vblank_cb_vblank_SW(tdm_vblank *vblank, double vblank_stamp)
                if (w->target_time != first_wait_info->target_time)
                        break;
 
-               TDM_TRACE_ASYNC_END((int)w->req_time, "TDM_SW_Vblank:%u", (unsigned int)private_vblank->stamp);
-
                LIST_DEL(&w->link);
                _tdm_vblank_valid_list_del(&w->valid_link);
 
@@ -1044,8 +1042,6 @@ _tdm_vblank_wait_SW(tdm_vblank_wait_info *wait_info)
 
        _tdm_vblank_insert_wait(wait_info, &private_vblank->SW_wait_list);
 
-       TDM_TRACE_ASYNC_BEGIN((int)wait_info->req_time, "TDM_SW_Vblank:%u", (unsigned int)private_vblank->stamp);
-
        ret = _tdm_vblank_sw_timer_update(private_vblank);
        if (ret != TDM_ERROR_NONE) {
                /* LCOV_EXCL_START */