Add probe provider unregister function
[lttng-ust.git] / include / lttng / ust-events.h
index f3ade45c43558acddedefc5baf33d0a59798bef3..019b0ebb02af5512c893cfe72147963eec88d3cb 100644 (file)
@@ -101,11 +101,25 @@ enum lttng_string_encodings {
        NR_STRING_ENCODINGS,
 };
 
+struct lttng_enum_value {
+       unsigned long long value;
+       unsigned int signedness:1;
+};
+
+enum lttng_enum_entry_options {
+       LTTNG_ENUM_ENTRY_OPTION_IS_AUTO = 1U << 0,
+};
+
 #define LTTNG_UST_ENUM_ENTRY_PADDING   16
 struct lttng_enum_entry {
-       unsigned long long start, end;  /* start and end are inclusive */
+       struct lttng_enum_value start, end; /* start and end are inclusive */
        const char *string;
-       char padding[LTTNG_UST_ENUM_ENTRY_PADDING];
+       union {
+               struct {
+                       unsigned int options;
+               } LTTNG_PACKED extra;
+               char padding[LTTNG_UST_ENUM_ENTRY_PADDING];
+       } u;
 };
 
 #define __type_integer(_type, _byte_order, _base, _encoding)   \
@@ -328,7 +342,7 @@ struct lttng_probe_desc {
 /* Data structures used by the tracer. */
 
 enum lttng_enabler_type {
-       LTTNG_ENABLER_WILDCARD,
+       LTTNG_ENABLER_STAR_GLOB,
        LTTNG_ENABLER_EVENT,
 };
 
@@ -475,7 +489,8 @@ struct lttng_channel_ops {
                        unsigned int read_timer_interval,
                        unsigned char *uuid,
                        uint32_t chan_id,
-                       const int *stream_fds, int nr_stream_fds);
+                       const int *stream_fds, int nr_stream_fds,
+                       int64_t blocking_timeout);
        void (*channel_destroy)(struct lttng_channel *chan);
        union {
                void *_deprecated1;
@@ -601,6 +616,7 @@ struct lttng_transport {
 struct lttng_session *lttng_session_create(void);
 int lttng_session_enable(struct lttng_session *session);
 int lttng_session_disable(struct lttng_session *session);
+int lttng_session_statedump(struct lttng_session *session);
 void lttng_session_destroy(struct lttng_session *session);
 
 struct lttng_channel *lttng_channel_create(struct lttng_session *session,
@@ -629,6 +645,7 @@ int lttng_enabler_attach_exclusion(struct lttng_enabler *enabler,
                struct lttng_ust_excluder_node *excluder);
 
 int lttng_attach_context(struct lttng_ust_context *context_param,
+               union ust_args *uargs,
                struct lttng_ctx **ctx, struct lttng_session *session);
 int lttng_session_context_init(struct lttng_ctx **ctx);
 
@@ -639,6 +656,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);
@@ -716,6 +734,14 @@ struct cds_list_head *_lttng_get_sessions(void);
 struct lttng_enum *lttng_ust_enum_get(struct lttng_session *session,
                const char *enum_name);
 
+void lttng_ust_dl_update(void *ip);
+void lttng_ust_fixup_fd_tracker_tls(void);
+
+/* For backward compatibility. Leave those exported symbols in place. */
+extern struct lttng_ctx *lttng_static_ctx;
+void lttng_context_init(void);
+void lttng_context_exit(void);
+
 #ifdef __cplusplus
 }
 #endif
This page took 0.025659 seconds and 4 git commands to generate.