X-Git-Url: http://git.liburcu.org/?a=blobdiff_plain;f=liblttng-ust%2Flttng-tracer-core.h;h=bd837237590201f89b2fcd3eaa6363964037e1c1;hb=94be38e8fd2d71397f79c0a368ba95678052e32d;hp=f643a7e5023f85fcb8091b56930d7cfaa8d0f95a;hpb=32ce85691c17b331072b1c0df96f69e8b388d134;p=lttng-ust.git diff --git a/liblttng-ust/lttng-tracer-core.h b/liblttng-ust/lttng-tracer-core.h index f643a7e5..bd837237 100644 --- a/liblttng-ust/lttng-tracer-core.h +++ b/liblttng-ust/lttng-tracer-core.h @@ -29,20 +29,74 @@ #include #include #include +#include + +/* + * The longuest possible namespace proc path is with the cgroup ns + * and the maximum theoretical linux pid of 536870912 : + * + * /proc/self/task/536870912/ns/cgroup + */ +#define LTTNG_PROC_NS_PATH_MAX 40 struct lttng_session; struct lttng_channel; struct lttng_event; +struct lttng_ctx_field; +struct lttng_ust_lib_ring_buffer_ctx; +struct lttng_ctx_value; -void ust_lock(void); +int ust_lock(void) __attribute__ ((warn_unused_result)); +void ust_lock_nocheck(void); void ust_unlock(void); void lttng_fixup_event_tls(void); void lttng_fixup_vtid_tls(void); void lttng_fixup_procname_tls(void); +void lttng_fixup_cgroup_ns_tls(void); +void lttng_fixup_ipc_ns_tls(void); +void lttng_fixup_net_ns_tls(void); +void lttng_fixup_uts_ns_tls(void); const char *lttng_ust_obj_get_name(int id); int lttng_get_notify_socket(void *owner); +LTTNG_HIDDEN +char* lttng_ust_sockinfo_get_procname(void *owner); + +void lttng_ust_sockinfo_session_enabled(void *owner); + +void lttng_ust_malloc_wrapper_init(void); + +ssize_t lttng_ust_read(int fd, void *buf, size_t len); + +size_t lttng_ust_dummy_get_size(struct lttng_ctx_field *field, size_t offset); +void lttng_ust_dummy_record(struct lttng_ctx_field *field, + struct lttng_ust_lib_ring_buffer_ctx *ctx, + struct lttng_channel *chan); +void lttng_ust_dummy_get_value(struct lttng_ctx_field *field, + struct lttng_ctx_value *value); +int lttng_context_is_app(const char *name); +void lttng_ust_fixup_tls(void); + +#ifdef LTTNG_UST_HAVE_PERF_EVENT +void lttng_ust_fixup_perf_counter_tls(void); +void lttng_perf_lock(void); +void lttng_perf_unlock(void); +#else /* #ifdef LTTNG_UST_HAVE_PERF_EVENT */ +static inline +void lttng_ust_fixup_perf_counter_tls(void) +{ +} +static inline +void lttng_perf_lock(void) +{ +} +static inline +void lttng_perf_unlock(void) +{ +} +#endif /* #else #ifdef LTTNG_UST_HAVE_PERF_EVENT */ + #endif /* _LTTNG_TRACER_CORE_H */