X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;f=src%2Fcommon%2Fkernel-consumer%2Fkernel-consumer.h;h=2aee20327d944e9ddf5386138be24688447b3ccb;hb=02d02e31d47c091a38154c9c188c08387902d97b;hp=8ae1834020f1a6d2cb7701bd9f45bc9a7423a203;hpb=6d805429e9cb049eb0c9205fcf742a53e3166caf;p=lttng-tools.git diff --git a/src/common/kernel-consumer/kernel-consumer.h b/src/common/kernel-consumer/kernel-consumer.h index 8ae183402..2aee20327 100644 --- a/src/common/kernel-consumer/kernel-consumer.h +++ b/src/common/kernel-consumer/kernel-consumer.h @@ -1,6 +1,7 @@ /* * Copyright (C) 2011 - Julien Desfossez * Copyright (C) 2011 - Mathieu Desnoyers + * Copyright (C) 2017 - Jérémie Galarneau * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 2 only, @@ -19,33 +20,22 @@ #ifndef _LTTNG_KCONSUMER_H #define _LTTNG_KCONSUMER_H -#include +#include +#include -/* - * Take a snapshot for a specific fd - * - * Returns 0 on success, < 0 on error - */ -int lttng_kconsumer_take_snapshot(struct lttng_consumer_local_data *ctx, - struct lttng_consumer_stream *stream); - -/* - * Get the produced position - * - * Returns 0 on success, < 0 on error - */ -int lttng_kconsumer_get_produced_snapshot( - struct lttng_consumer_local_data *ctx, - struct lttng_consumer_stream *stream, +int lttng_kconsumer_take_snapshot(struct lttng_consumer_stream *stream); +int lttng_kconsumer_sample_snapshot_positions( + struct lttng_consumer_stream *stream); +int lttng_kconsumer_get_produced_snapshot(struct lttng_consumer_stream *stream, unsigned long *pos); - +int lttng_kconsumer_get_consumed_snapshot(struct lttng_consumer_stream *stream, + unsigned long *pos); int lttng_kconsumer_recv_cmd(struct lttng_consumer_local_data *ctx, int sock, struct pollfd *consumer_sockpoll); - - ssize_t lttng_kconsumer_read_subbuffer(struct lttng_consumer_stream *stream, - struct lttng_consumer_local_data *ctx); + struct lttng_consumer_local_data *ctx, bool *rotated); int lttng_kconsumer_on_recv_stream(struct lttng_consumer_stream *stream); int lttng_kconsumer_data_pending(struct lttng_consumer_stream *stream); +int lttng_kconsumer_sync_metadata(struct lttng_consumer_stream *metadata); #endif /* _LTTNG_KCONSUMER_H */