static void client_buffer_end(struct lttng_ust_ring_buffer *buf,
uint64_t tsc __attribute__((unused)),
unsigned int subbuf_idx, unsigned long data_size,
- struct lttng_ust_shm_handle *handle)
+ struct lttng_ust_shm_handle *handle,
+ const struct lttng_ust_ring_buffer_ctx *ctx)
{
struct lttng_ust_ring_buffer_channel *chan = shmp(handle, buf->backend.chan);
struct metadata_packet_header *header =
* We do not care about the records lost count, because the metadata
* channel waits and retry.
*/
- (void) lib_ring_buffer_get_records_lost_full(&client_config, buf);
- records_lost += lib_ring_buffer_get_records_lost_wrap(&client_config, buf);
- records_lost += lib_ring_buffer_get_records_lost_big(&client_config, buf);
+ (void) lib_ring_buffer_get_records_lost_full(&client_config, ctx);
+ records_lost += lib_ring_buffer_get_records_lost_wrap(&client_config, ctx);
+ records_lost += lib_ring_buffer_get_records_lost_big(&client_config, ctx);
WARN_ON_ONCE(records_lost != 0);
}
struct lttng_ust_ring_buffer *buf;
int shm_fd, wait_fd, wakeup_fd;
uint64_t memory_map_size;
+ void *memory_map_addr;
buf = channel_get_ring_buffer(&client_config, rb_chan,
0, rb_chan->handle, &shm_fd, &wait_fd, &wakeup_fd,
- &memory_map_size);
+ &memory_map_size, &memory_map_addr);
lib_ring_buffer_switch(&client_config, buf,
SWITCH_ACTIVE, rb_chan->handle);
return 0;