From: Mathieu Desnoyers Date: Thu, 27 Sep 2012 23:59:43 +0000 (-0400) Subject: Use uint64_t for packet header content size and packet size X-Git-Tag: v2.1.0-rc2~36 X-Git-Url: https://git.lttng.org./?a=commitdiff_plain;h=0c00a107869c4edce9b6ebded5992bde4575bc7c;p=lttng-ust.git Use uint64_t for packet header content size and packet size Allow packets larger than 256MB (4GB / 8 bits per byte). Fixes #353 Signed-off-by: Mathieu Desnoyers --- diff --git a/liblttng-ust/ltt-events.c b/liblttng-ust/ltt-events.c index 5d147519..32135c85 100644 --- a/liblttng-ust/ltt-events.c +++ b/liblttng-ust/ltt-events.c @@ -1034,9 +1034,9 @@ int _ltt_stream_packet_context_declare(struct ltt_session *session) "struct packet_context {\n" " uint64_clock_monotonic_t timestamp_begin;\n" " uint64_clock_monotonic_t timestamp_end;\n" + " uint64_t content_size;\n" + " uint64_t packet_size;\n" " unsigned long events_discarded;\n" - " uint32_t content_size;\n" - " uint32_t packet_size;\n" " uint32_t cpu_id;\n" "};\n\n" ); diff --git a/liblttng-ust/ltt-ring-buffer-client.h b/liblttng-ust/ltt-ring-buffer-client.h index 0b6cd3e4..e47a508c 100644 --- a/liblttng-ust/ltt-ring-buffer-client.h +++ b/liblttng-ust/ltt-ring-buffer-client.h @@ -51,13 +51,13 @@ struct packet_header { /* Stream packet context */ uint64_t timestamp_begin; /* Cycle count at subbuffer start */ uint64_t timestamp_end; /* Cycle count at subbuffer end */ + uint64_t content_size; /* Size of data in subbuffer */ + uint64_t packet_size; /* Subbuffer size (include padding) */ unsigned long events_discarded; /* * Events lost in this subbuffer since * the beginning of the trace. * (may overflow) */ - uint32_t content_size; /* Size of data in subbuffer */ - uint32_t packet_size; /* Subbuffer size (include padding) */ uint32_t cpu_id; /* CPU id associated with stream */ uint8_t header_end; /* End of header */ } ctx; @@ -342,9 +342,9 @@ static void client_buffer_begin(struct lttng_ust_lib_ring_buffer *buf, uint64_t header->stream_id = ltt_chan->id; header->ctx.timestamp_begin = tsc; header->ctx.timestamp_end = 0; + header->ctx.content_size = ~0ULL; /* for debugging */ + header->ctx.packet_size = ~0ULL; header->ctx.events_discarded = 0; - header->ctx.content_size = 0xFFFFFFFF; /* for debugging */ - header->ctx.packet_size = 0xFFFFFFFF; header->ctx.cpu_id = buf->backend.cpu; }