int (*current_timestamp) (const struct lib_ring_buffer_config *config,
struct lib_ring_buffer *bufb,
uint64_t *ts);
+ int (*sequence_number) (const struct lib_ring_buffer_config *config,
+ struct lib_ring_buffer *bufb,
+ uint64_t *seq);
+ int (*instance_id) (const struct lib_ring_buffer_config *config,
+ struct lib_ring_buffer *bufb,
+ uint64_t *id);
};
struct lttng_transport {
wait_queue_head_t read_wait; /* Reader buffer-level wait queue */
struct list_head list; /* Stream list */
struct lttng_transport *transport;
- struct mutex lock;
};
struct kref refcount; /* Metadata cache usage */
struct list_head metadata_stream; /* Metadata stream list */
uuid_le uuid; /* Trace session unique ID (copy) */
+ struct mutex lock;
};
void lttng_lock_sessions(void);
struct lttng_ctx_field *field);
void lttng_destroy_context(struct lttng_ctx *ctx);
int lttng_add_pid_to_ctx(struct lttng_ctx **ctx);
+int lttng_add_cpu_id_to_ctx(struct lttng_ctx **ctx);
int lttng_add_procname_to_ctx(struct lttng_ctx **ctx);
int lttng_add_prio_to_ctx(struct lttng_ctx **ctx);
int lttng_add_nice_to_ctx(struct lttng_ctx **ctx);
struct lttng_event *event_exit);
void lttng_kretprobes_unregister(struct lttng_event *event);
void lttng_kretprobes_destroy_private(struct lttng_event *event);
+int lttng_kretprobes_event_enable_state(struct lttng_event *event,
+ int enable);
#else
static inline
int lttng_kretprobes_register(const char *name,
void lttng_kretprobes_destroy_private(struct lttng_event *event)
{
}
+
+static inline
+int lttng_kretprobes_event_enable_state(struct lttng_event *event,
+ int enable)
+{
+ return -ENOSYS;
+}
#endif
#ifdef CONFIG_DYNAMIC_FTRACE