summaryrefslogtreecommitdiffstats
path: root/base
diff options
context:
space:
mode:
authordyen <dyen@chromium.org>2015-01-07 17:09:56 -0800
committerCommit bot <commit-bot@chromium.org>2015-01-08 01:11:06 +0000
commit4bb4328938b0bfa4d2fa59403ce3de5639952e16 (patch)
treebbc65a25d9447ba948dbdf6516e428ed3968b693 /base
parent9622c69027d984bbbeba14878836dc16067b5926 (diff)
downloadchromium_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.h10
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.