X-Git-Url: http://git.lttng.org/?a=blobdiff_plain;f=libust%2Fbuffers.c;h=a36453dbb1a45e171eaccab01e7f5e746d0bec71;hb=02af3e607f471e9fcfe7ea6902cab56efb4c4516;hp=c644cfb72ad2ddc50e6fa324d3a17082cf8ed61b;hpb=e17571a59eef2b054c7432f6cba10c2cb467a182;p=lttng-ust.git diff --git a/libust/buffers.c b/libust/buffers.c index c644cfb7..a36453db 100644 --- a/libust/buffers.c +++ b/libust/buffers.c @@ -307,8 +307,9 @@ static void ltt_buffer_begin(struct ust_buffer *buf, subbuf_idx * buf->chan->subbuf_size); header->cycle_count_begin = tsc; - header->lost_size = 0xFFFFFFFF; /* for debugging */ - header->buf_size = buf->chan->subbuf_size; + header->data_size = 0xFFFFFFFF; /* for recognizing crashed buffers */ + header->sb_size = 0xFFFFFFFF; /* for recognizing crashed buffers */ + /* FIXME: add memory barrier? */ ltt_write_trace_header(channel->trace, header); } @@ -323,9 +324,10 @@ static notrace void ltt_buffer_end(struct ust_buffer *buf, (struct ltt_subbuffer_header *) ust_buffers_offset_address(buf, subbuf_idx * buf->chan->subbuf_size); + u32 data_size = SUBBUF_OFFSET(offset - 1, buf->chan) + 1; - header->lost_size = SUBBUF_OFFSET((buf->chan->subbuf_size - offset), - buf->chan); + header->data_size = data_size; + header->sb_size = PAGE_ALIGN(data_size); header->cycle_count_end = tsc; header->events_lost = local_read(&buf->events_lost); header->subbuf_corrupt = local_read(&buf->corrupted_subbuffers);