diff options
author | dyen <dyen@chromium.org> | 2015-01-07 17:09:56 -0800 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-01-08 01:11:06 +0000 |
commit | 4bb4328938b0bfa4d2fa59403ce3de5639952e16 (patch) | |
tree | bbc65a25d9447ba948dbdf6516e428ed3968b693 /base | |
parent | 9622c69027d984bbbeba14878836dc16067b5926 (diff) | |
download | chromium_src-4bb4328938b0bfa4d2fa59403ce3de5639952e16.zip chromium_src-4bb4328938b0bfa4d2fa59403ce3de5639952e16.tar.gz chromium_src-4bb4328938b0bfa4d2fa59403ce3de5639952e16.tar.bz2 |
Fixed GPU tracing so the categories do not get mixed.
Because of how the chromium tracing macros work, it is not possible
to use the same line for multiple tracing categories. I have moved
the GPU categories to a separate trace arg "gl_categories" instead,
and changed the trace categories back to gpu.device and gpu.service.
GroupPushMarkerEXT calls can no longer be disabled by their category.
We currently use these to trace top level GPU traces which are
constructed before the tracing categories are initialized.
There were also some other issues related to having multiple channels
in the GPU Tracer. Now functions that query the current trace take
in a channel argument as well to differentiate the channels.
R=vmiura@chromium.org
BUG=None
TEST=trybots
Review URL: https://codereview.chromium.org/813573003
Cr-Commit-Position: refs/heads/master@{#310426}
Diffstat (limited to 'base')
-rw-r--r-- | base/debug/trace_event.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/base/debug/trace_event.h b/base/debug/trace_event.h index 62a9b1f..9754036 100644 --- a/base/debug/trace_event.h +++ b/base/debug/trace_event.h @@ -395,6 +395,11 @@ INTERNAL_TRACE_EVENT_ADD_WITH_ID_TID_AND_TIMESTAMP( \ TRACE_EVENT_PHASE_ASYNC_BEGIN, category_group, name, id, thread_id, \ timestamp, TRACE_EVENT_FLAG_COPY) +#define TRACE_EVENT_COPY_BEGIN_WITH_ID_TID_AND_TIMESTAMP1( \ + category_group, name, id, thread_id, timestamp, arg1_name, arg1_val) \ + INTERNAL_TRACE_EVENT_ADD_WITH_ID_TID_AND_TIMESTAMP( \ + TRACE_EVENT_PHASE_ASYNC_BEGIN, category_group, name, id, thread_id, \ + timestamp, TRACE_EVENT_FLAG_COPY, arg1_name, arg1_val) // Records a single END event for "name" immediately. If the category // is not enabled, then this does nothing. @@ -439,6 +444,11 @@ INTERNAL_TRACE_EVENT_ADD_WITH_ID_TID_AND_TIMESTAMP( \ TRACE_EVENT_PHASE_ASYNC_END, category_group, name, id, thread_id, \ timestamp, TRACE_EVENT_FLAG_COPY) +#define TRACE_EVENT_COPY_END_WITH_ID_TID_AND_TIMESTAMP1( \ + category_group, name, id, thread_id, timestamp, arg1_name, arg1_val) \ + INTERNAL_TRACE_EVENT_ADD_WITH_ID_TID_AND_TIMESTAMP( \ + TRACE_EVENT_PHASE_ASYNC_END, category_group, name, id, thread_id, \ + timestamp, TRACE_EVENT_FLAG_COPY, arg1_name, arg1_val) // Records the value of a counter called "name" immediately. Value // must be representable as a 32 bit integer. |