Fix timestamps for slow-paced event rates
authorMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mon, 9 Jan 2012 16:42:57 +0000 (11:42 -0500)
committerMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mon, 9 Jan 2012 16:42:57 +0000 (11:42 -0500)
Given that we currently do not implement any timer that provides
guarantees of 27-bit timestamps overflow detection, force the timestamp
to 64-bit.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
liblttng-ust/ltt-events.c

index f69eb07a8181ebb395afbc28d877c62291d0217c..94e06780f9de58822d259979bca000f968f0c696 100644 (file)
@@ -309,10 +309,20 @@ int ltt_session_enable(struct ltt_session *session)
        cds_list_for_each_entry(chan, &session->chan, list) {
                if (chan->header_type)
                        continue;               /* don't change it if session stop/restart */
+               /*
+                * Because we don't use any timer in the application, we
+                * currently cannot guarantee that we have frequent
+                * events that let us detect 27-bit overflows.
+                * Therefore, for now, we force large event headers,
+                * which contain 64-bit timestamps.
+                */
+               chan->header_type = 2;  /* large */
+#if 0
                if (chan->free_event_id < 31)
                        chan->header_type = 1;  /* compact */
                else
                        chan->header_type = 2;  /* large */
+#endif //0
        }
 
        CMM_ACCESS_ONCE(session->active) = 1;
This page took 0.025519 seconds and 4 git commands to generate.