Fix: client_packet_header() uses wrong packet
authorMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Sat, 30 Nov 2013 10:47:05 +0000 (11:47 +0100)
committerMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Sat, 30 Nov 2013 10:47:05 +0000 (11:47 +0100)
It should use lib_ring_buffer_read_offset_address() to get the packet
being read, rather than lib_ring_buffer_offset_address(), which is only
meant to be used when writing to the packet.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
liblttng-ust/lttng-ring-buffer-client.h

index 2cdecbe9f6bfdd8cf670304b20b29cc06cdaa4f1..87d1a8cdb3fe98fca98dcc051e4ab591e65a8269 100644 (file)
@@ -389,19 +389,7 @@ static void client_buffer_finalize(struct lttng_ust_lib_ring_buffer *buf, void *
 static struct packet_header *client_packet_header(struct lttng_ust_lib_ring_buffer *buf,
                struct lttng_ust_shm_handle *handle)
 {
-       struct channel *chan = shmp(handle, buf->backend.chan);
-       struct lttng_channel *lttng_chan = channel_get_private(chan);
-       unsigned long sb_index;
-       struct lttng_ust_lib_ring_buffer_backend *bufb;
-       struct packet_header *header;
-
-       bufb = &buf->backend;
-       sb_index = subbuffer_id_get_index(&lttng_chan->chan->backend.config,
-                       bufb->buf_rsb.id);
-       header = lib_ring_buffer_offset_address(bufb,
-                       sb_index * lttng_chan->chan->backend.subbuf_size,
-                       handle);
-       return header;
+       return lib_ring_buffer_read_offset_address(&buf->backend, 0, handle);
 }
 
 static int client_timestamp_begin(struct lttng_ust_lib_ring_buffer *buf,
This page took 0.025467 seconds and 4 git commands to generate.