X-Git-Url: http://git.liburcu.org/?a=blobdiff_plain;f=include%2Flttng%2Fust-events.h;h=c1a851731a006eebfdf4fced1596d80d36df27fc;hb=416165a551d37c6501034a30401da626f3b6acff;hp=caf7e63a30642024cd6a2bb5a9638afe21c9b4d7;hpb=b2c5f61a9cb94a79c35167450666e540b3e0fffe;p=lttng-ust.git diff --git a/include/lttng/ust-events.h b/include/lttng/ust-events.h index caf7e63a..c1a85173 100644 --- a/include/lttng/ust-events.h +++ b/include/lttng/ust-events.h @@ -29,6 +29,7 @@ #include #include +#include #include #include #include @@ -39,6 +40,10 @@ #include #include +#ifndef LTTNG_PACKED +#error "LTTNG_PACKED should be defined" +#endif + #ifdef __cplusplus extern "C" { #endif @@ -361,6 +366,10 @@ struct lttng_enabler { struct lttng_ust_event event_param; struct lttng_channel *chan; + /* + * Unused, but kept around to make it explicit that the tracer can do + * it. + */ struct lttng_ctx *ctx; unsigned int enabled:1; }; @@ -423,6 +432,7 @@ struct lttng_bytecode_runtime { int link_failed; struct cds_list_head node; /* list of bytecode runtime in event */ struct lttng_session *session; + struct lttng_event *event; }; /* @@ -656,6 +666,7 @@ void synchronize_trace(void); int lttng_probe_register(struct lttng_probe_desc *desc); void lttng_probe_unregister(struct lttng_probe_desc *desc); +void lttng_probe_provider_unregister_events(struct lttng_probe_desc *desc); int lttng_fix_pending_events(void); int lttng_probes_init(void); void lttng_probes_exit(void); @@ -673,8 +684,35 @@ int lttng_add_procname_to_ctx(struct lttng_ctx **ctx); int lttng_add_ip_to_ctx(struct lttng_ctx **ctx); int lttng_add_cpu_id_to_ctx(struct lttng_ctx **ctx); int lttng_add_dyntest_to_ctx(struct lttng_ctx **ctx); +int lttng_add_cgroup_ns_to_ctx(struct lttng_ctx **ctx); +int lttng_add_ipc_ns_to_ctx(struct lttng_ctx **ctx); +int lttng_add_mnt_ns_to_ctx(struct lttng_ctx **ctx); +int lttng_add_net_ns_to_ctx(struct lttng_ctx **ctx); +int lttng_add_pid_ns_to_ctx(struct lttng_ctx **ctx); +int lttng_add_user_ns_to_ctx(struct lttng_ctx **ctx); +int lttng_add_uts_ns_to_ctx(struct lttng_ctx **ctx); +int lttng_add_vuid_to_ctx(struct lttng_ctx **ctx); +int lttng_add_veuid_to_ctx(struct lttng_ctx **ctx); +int lttng_add_vsuid_to_ctx(struct lttng_ctx **ctx); +int lttng_add_vgid_to_ctx(struct lttng_ctx **ctx); +int lttng_add_vegid_to_ctx(struct lttng_ctx **ctx); +int lttng_add_vsgid_to_ctx(struct lttng_ctx **ctx); void lttng_context_vtid_reset(void); void lttng_context_vpid_reset(void); +void lttng_context_procname_reset(void); +void lttng_context_cgroup_ns_reset(void); +void lttng_context_ipc_ns_reset(void); +void lttng_context_mnt_ns_reset(void); +void lttng_context_net_ns_reset(void); +void lttng_context_pid_ns_reset(void); +void lttng_context_user_ns_reset(void); +void lttng_context_uts_ns_reset(void); +void lttng_context_vuid_reset(void); +void lttng_context_veuid_reset(void); +void lttng_context_vsuid_reset(void); +void lttng_context_vgid_reset(void); +void lttng_context_vegid_reset(void); +void lttng_context_vsgid_reset(void); #ifdef LTTNG_UST_HAVE_PERF_EVENT int lttng_add_perf_counter_to_ctx(uint32_t type, @@ -718,7 +756,6 @@ void lttng_probes_prune_field_list(struct lttng_ust_field_list *list); struct lttng_ust_field_iter * lttng_ust_field_list_get_iter_next(struct lttng_ust_field_list *list); -void lttng_filter_event_link_bytecode(struct lttng_event *event); void lttng_enabler_event_link_bytecode(struct lttng_event *event, struct lttng_enabler *enabler); void lttng_free_event_filter_runtime(struct lttng_event *event); @@ -730,8 +767,9 @@ int lttng_session_active(void); typedef int (*t_statedump_func_ptr)(struct lttng_session *session); void lttng_handle_pending_statedump(void *owner); struct cds_list_head *_lttng_get_sessions(void); -struct lttng_enum *lttng_ust_enum_get(struct lttng_session *session, - const char *enum_name); + +struct lttng_enum *lttng_ust_enum_get_from_desc(struct lttng_session *session, + const struct lttng_enum_desc *enum_desc); void lttng_ust_dl_update(void *ip); void lttng_ust_fixup_fd_tracker_tls(void); @@ -740,6 +778,7 @@ void lttng_ust_fixup_fd_tracker_tls(void); extern struct lttng_ctx *lttng_static_ctx; void lttng_context_init(void); void lttng_context_exit(void); +void lttng_filter_event_link_bytecode(struct lttng_event *event); #ifdef __cplusplus }