X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;f=src%2Flib%2Flttng-ust%2Flttng-ust-statedump.c;h=309a98fa2201243913dbf09fcc16c8e2ae134338;hb=2ebb27909ba460be6b58e24750e1cd55b12729df;hp=2dae71f963794d8578af14ffbb552bbdb017f2fb;hpb=910dcd720731c190adbfb9bb50c67bb9c4235003;p=lttng-ust.git diff --git a/src/lib/lttng-ust/lttng-ust-statedump.c b/src/lib/lttng-ust/lttng-ust-statedump.c index 2dae71f9..309a98fa 100644 --- a/src/lib/lttng-ust/lttng-ust-statedump.c +++ b/src/lib/lttng-ust/lttng-ust-statedump.c @@ -20,15 +20,18 @@ #include "common/macros.h" #include "lttng-tracer-core.h" #include "lttng-ust-statedump.h" -#include "jhash.h" +#include "common/jhash.h" #include "common/getenv.h" -#include "ust-events-internal.h" +#include "lib/lttng-ust/events.h" -#define TRACEPOINT_DEFINE +#define LTTNG_UST_TRACEPOINT_HIDDEN_DEFINITION +#define LTTNG_UST_TRACEPOINT_PROVIDER_HIDDEN_DEFINITION + +#define LTTNG_UST_TRACEPOINT_DEFINE #include "ust_lib.h" /* Only define. */ -#define TRACEPOINT_CREATE_PROBES -#define TP_SESSION_CHECK +#define LTTNG_UST_TRACEPOINT_CREATE_PROBES +#define LTTNG_UST_TP_SESSION_CHECK #include "lttng-ust-statedump-provider.h" /* Define and create probes. */ struct dl_iterate_data { @@ -60,7 +63,7 @@ struct lttng_ust_dl_node { #define UST_DL_STATE_HASH_BITS 8 #define UST_DL_STATE_TABLE_SIZE (1 << UST_DL_STATE_HASH_BITS) -struct cds_hlist_head dl_state_table[UST_DL_STATE_TABLE_SIZE]; +static struct cds_hlist_head dl_state_table[UST_DL_STATE_TABLE_SIZE]; typedef void (*tracepoint_cb)(struct lttng_ust_session *session, void *priv); @@ -207,7 +210,7 @@ void trace_bin_info_cb(struct lttng_ust_session *session, void *priv) { struct bin_info_data *bin_data = (struct bin_info_data *) priv; - tracepoint(lttng_ust_statedump, bin_info, + lttng_ust_tracepoint(lttng_ust_statedump, bin_info, session, bin_data->base_addr_ptr, bin_data->resolved_path, bin_data->memsz, bin_data->is_pic, bin_data->has_build_id, @@ -219,7 +222,7 @@ void trace_build_id_cb(struct lttng_ust_session *session, void *priv) { struct bin_info_data *bin_data = (struct bin_info_data *) priv; - tracepoint(lttng_ust_statedump, build_id, + lttng_ust_tracepoint(lttng_ust_statedump, build_id, session, bin_data->base_addr_ptr, bin_data->build_id, bin_data->build_id_len); } @@ -229,7 +232,7 @@ void trace_debug_link_cb(struct lttng_ust_session *session, void *priv) { struct bin_info_data *bin_data = (struct bin_info_data *) priv; - tracepoint(lttng_ust_statedump, debug_link, + lttng_ust_tracepoint(lttng_ust_statedump, debug_link, session, bin_data->base_addr_ptr, bin_data->dbg_file, bin_data->crc); } @@ -238,19 +241,19 @@ static void procname_cb(struct lttng_ust_session *session, void *priv) { char *procname = (char *) priv; - tracepoint(lttng_ust_statedump, procname, session, procname); + lttng_ust_tracepoint(lttng_ust_statedump, procname, session, procname); } static void trace_start_cb(struct lttng_ust_session *session, void *priv __attribute__((unused))) { - tracepoint(lttng_ust_statedump, start, session); + lttng_ust_tracepoint(lttng_ust_statedump, start, session); } static void trace_end_cb(struct lttng_ust_session *session, void *priv __attribute__((unused))) { - tracepoint(lttng_ust_statedump, end, session); + lttng_ust_tracepoint(lttng_ust_statedump, end, session); } static @@ -380,19 +383,19 @@ void iter_begin(struct dl_iterate_data *data) static void trace_lib_load(const struct bin_info_data *bin_data, void *ip) { - tracepoint(lttng_ust_lib, load, + lttng_ust_tracepoint(lttng_ust_lib, load, ip, bin_data->base_addr_ptr, bin_data->resolved_path, bin_data->memsz, bin_data->has_build_id, bin_data->has_debug_link); if (bin_data->has_build_id) { - tracepoint(lttng_ust_lib, build_id, + lttng_ust_tracepoint(lttng_ust_lib, build_id, ip, bin_data->base_addr_ptr, bin_data->build_id, bin_data->build_id_len); } if (bin_data->has_debug_link) { - tracepoint(lttng_ust_lib, debug_link, + lttng_ust_tracepoint(lttng_ust_lib, debug_link, ip, bin_data->base_addr_ptr, bin_data->dbg_file, bin_data->crc); } @@ -401,7 +404,7 @@ void trace_lib_load(const struct bin_info_data *bin_data, void *ip) static void trace_lib_unload(const struct bin_info_data *bin_data, void *ip) { - tracepoint(lttng_ust_lib, unload, ip, bin_data->base_addr_ptr); + lttng_ust_tracepoint(lttng_ust_lib, unload, ip, bin_data->base_addr_ptr); } static @@ -420,10 +423,10 @@ void iter_end(struct dl_iterate_data *data, void *ip) */ for (i = 0; i < UST_DL_STATE_TABLE_SIZE; i++) { struct cds_hlist_head *head; - struct lttng_ust_dl_node *e; + struct lttng_ust_dl_node *e, *tmp; head = &dl_state_table[i]; - cds_hlist_for_each_entry_2(e, head, node) { + cds_hlist_for_each_entry_safe_2(e, tmp, head, node) { if (e->marked) { if (!e->traced) { trace_lib_load(&e->bin_data, ip); @@ -551,10 +554,10 @@ void lttng_ust_dl_update(void *ip) return; /* - * Fixup lttng-ust TLS when called from dlopen/dlclose - * instrumentation. + * Force the allocation of lttng-ust TLS variables when called from + * dlopen/dlclose instrumentation. */ - lttng_ust_fixup_tls(); + lttng_ust_alloc_tls(); data.exec_found = 0; data.first = true; @@ -628,9 +631,9 @@ int do_lttng_ust_statedump(void *owner) void lttng_ust_statedump_init(void) { - __tracepoints__init(); - __tracepoints__ptrs_init(); - __lttng_events_init__lttng_ust_statedump(); + lttng_ust__tracepoints__init(); + lttng_ust__tracepoints__ptrs_init(); + lttng_ust__events_init__lttng_ust_statedump(); lttng_ust_dl_update(LTTNG_UST_CALLER_IP()); } @@ -652,8 +655,8 @@ void ust_dl_state_destroy(void) void lttng_ust_statedump_destroy(void) { - __lttng_events_exit__lttng_ust_statedump(); - __tracepoints__ptrs_destroy(); - __tracepoints__destroy(); + lttng_ust__events_exit__lttng_ust_statedump(); + lttng_ust__tracepoints__ptrs_destroy(); + lttng_ust__tracepoints__destroy(); ust_dl_state_destroy(); }