X-Git-Url: http://git.liburcu.org/?a=blobdiff_plain;f=liblttng-ust%2Flttng-ring-buffer-client.h;h=cac61343acc8723f714d0e794bbe6439bcf5716c;hb=115db533af4d56a1b5c8b3a5ff6a15dc58579cd8;hp=62d1ff82552fb8b04abc1d2ab8162bfe4c4bb9fb;hpb=b4051ad8c170901d5297e1b3005b24e63cb0ab1e;p=lttng-ust.git diff --git a/liblttng-ust/lttng-ring-buffer-client.h b/liblttng-ust/lttng-ring-buffer-client.h index 62d1ff82..cac61343 100644 --- a/liblttng-ust/lttng-ring-buffer-client.h +++ b/liblttng-ust/lttng-ring-buffer-client.h @@ -1,30 +1,19 @@ /* - * lttng-ring-buffer-client.h - * - * LTTng lib ring buffer client template. + * SPDX-License-Identifier: LGPL-2.1-only * * Copyright (C) 2010-2012 Mathieu Desnoyers * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; only - * version 2.1 of the License. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * LTTng lib ring buffer client template. */ #include #include -#include -#include "lttng/bitfield.h" + +#include +#include "ust-bitfield.h" +#include "ust-compat.h" #include "clock.h" +#include "context-internal.h" #include "lttng-tracer.h" #include "../libringbuffer/frontend_types.h" @@ -183,7 +172,7 @@ size_t record_header_size(const struct lttng_ust_lib_ring_buffer_config *config, struct lttng_client_ctx *client_ctx) { struct lttng_channel *lttng_chan = channel_get_private(chan); - struct lttng_event *event = ctx->priv; + struct lttng_ust_event_recorder *event_recorder = ctx->priv; struct lttng_stack_ctx *lttng_ctx = ctx->priv2; size_t orig_offset = offset; size_t padding; @@ -233,7 +222,7 @@ size_t record_header_size(const struct lttng_ust_lib_ring_buffer_config *config, /* Pre 2.8 probe ABI. */ offset += ctx_get_aligned_size(offset, lttng_chan->ctx, client_ctx->packet_context_len); - offset += ctx_get_aligned_size(offset, event->ctx, + offset += ctx_get_aligned_size(offset, event_recorder->ctx, client_ctx->event_context_len); } *pre_header_padding = padding; @@ -263,7 +252,7 @@ void lttng_write_event_header(const struct lttng_ust_lib_ring_buffer_config *con uint32_t event_id) { struct lttng_channel *lttng_chan = channel_get_private(ctx->chan); - struct lttng_event *event = ctx->priv; + struct lttng_ust_event_recorder *event_recorder = ctx->priv; struct lttng_stack_ctx *lttng_ctx = ctx->priv2; if (caa_unlikely(ctx->rflags)) @@ -306,7 +295,7 @@ void lttng_write_event_header(const struct lttng_ust_lib_ring_buffer_config *con } else { /* Pre 2.8 probe ABI. */ ctx_record(ctx, lttng_chan, lttng_chan->ctx, APP_CTX_DISABLED); - ctx_record(ctx, lttng_chan, event->ctx, APP_CTX_DISABLED); + ctx_record(ctx, lttng_chan, event_recorder->ctx, APP_CTX_DISABLED); } lib_ring_buffer_align_ctx(ctx, ctx->largest_align); @@ -322,7 +311,7 @@ void lttng_write_event_header_slow(const struct lttng_ust_lib_ring_buffer_config uint32_t event_id) { struct lttng_channel *lttng_chan = channel_get_private(ctx->chan); - struct lttng_event *event = ctx->priv; + struct lttng_ust_event_recorder *event_recorder = ctx->priv; struct lttng_stack_ctx *lttng_ctx = ctx->priv2; switch (lttng_chan->header_type) { @@ -387,7 +376,7 @@ void lttng_write_event_header_slow(const struct lttng_ust_lib_ring_buffer_config } else { /* Pre 2.8 probe ABI. */ ctx_record(ctx, lttng_chan, lttng_chan->ctx, APP_CTX_DISABLED); - ctx_record(ctx, lttng_chan, event->ctx, APP_CTX_DISABLED); + ctx_record(ctx, lttng_chan, event_recorder->ctx, APP_CTX_DISABLED); } lib_ring_buffer_align_ctx(ctx, ctx->largest_align); } @@ -474,7 +463,7 @@ static void client_buffer_end(struct lttng_ust_lib_ring_buffer *buf, uint64_t ts header->ctx.content_size = (uint64_t) data_size * CHAR_BIT; /* in bits */ header->ctx.packet_size = - (uint64_t) PAGE_ALIGN(data_size) * CHAR_BIT; /* in bits */ + (uint64_t) LTTNG_UST_PAGE_ALIGN(data_size) * CHAR_BIT; /* in bits */ records_lost += lib_ring_buffer_get_records_lost_full(&client_config, buf); records_lost += lib_ring_buffer_get_records_lost_wrap(&client_config, buf); @@ -672,8 +661,6 @@ static const struct lttng_ust_lib_ring_buffer_config client_config = { .cb_ptr = &client_cb.parent, }; -const struct lttng_ust_client_lib_ring_buffer_client_cb *LTTNG_CLIENT_CALLBACKS = &client_cb; - static struct lttng_channel *_channel_create(const char *name, void *buf_addr, @@ -719,7 +706,7 @@ int lttng_event_reserve(struct lttng_ust_lib_ring_buffer_ctx *ctx, uint32_t event_id) { struct lttng_channel *lttng_chan = channel_get_private(ctx->chan); - struct lttng_event *event = ctx->priv; + struct lttng_ust_event_recorder *event_recorder = ctx->priv; struct lttng_stack_ctx *lttng_ctx = ctx->priv2; struct lttng_client_ctx client_ctx; int ret, cpu; @@ -736,7 +723,7 @@ int lttng_event_reserve(struct lttng_ust_lib_ring_buffer_ctx *ctx, /* Pre 2.8 probe ABI. */ ctx_get_struct_size(lttng_chan->ctx, &client_ctx.packet_context_len, APP_CTX_DISABLED); - ctx_get_struct_size(event->ctx, &client_ctx.event_context_len, + ctx_get_struct_size(event_recorder->ctx, &client_ctx.event_context_len, APP_CTX_DISABLED); } @@ -847,13 +834,10 @@ static struct lttng_transport lttng_relay_transport = { .ops = { .channel_create = _channel_create, .channel_destroy = lttng_channel_destroy, - .u.has_strcpy = 1, .event_reserve = lttng_event_reserve, .event_commit = lttng_event_commit, .event_write = lttng_event_write, .packet_avail_size = NULL, /* Would be racy anyway */ - //.get_reader_wait_queue = lttng_get_reader_wait_queue, - //.get_hp_wait_queue = lttng_get_hp_wait_queue, .is_finalized = lttng_is_finalized, .is_disabled = lttng_is_disabled, .flush_buffer = lttng_flush_buffer,