X-Git-Url: http://git.liburcu.org/?a=blobdiff_plain;f=include%2Flttng%2Fust-events.h;h=40955e2d385e34f5c6f5b04ff6e1279a9c4bcd90;hb=14b545e3dc23d01d7189372c7381c7e77e3b5afb;hp=4cc507a05c52c1363a7ba20d0aae503955b7d3f1;hpb=5f733922ed1e2db5b397292ede81303a9e538a08;p=lttng-ust.git diff --git a/include/lttng/ust-events.h b/include/lttng/ust-events.h index 4cc507a0..40955e2d 100644 --- a/include/lttng/ust-events.h +++ b/include/lttng/ust-events.h @@ -37,6 +37,15 @@ #define LTTNG_UST_UUID_LEN 16 +/* + * Tracepoint provider version. Compatibility based on the major number. + * Older tracepoint providers can always register to newer lttng-ust + * library, but the opposite is rejected: a newer tracepoint provider is + * rejected by an older lttng-ust library. + */ +#define LTTNG_UST_PROVIDER_MAJOR 1 +#define LTTNG_UST_PROVIDER_MINOR 0 + struct lttng_channel; struct lttng_session; struct lttng_ust_lib_ring_buffer_ctx; @@ -251,7 +260,7 @@ struct lttng_event_desc { } u; }; -#define LTTNG_UST_PROBE_DESC_PADDING 20 +#define LTTNG_UST_PROBE_DESC_PADDING 12 struct lttng_probe_desc { const char *provider; const struct lttng_event_desc **event_desc; @@ -259,6 +268,8 @@ struct lttng_probe_desc { struct cds_list_head head; /* chain registered probes */ struct cds_list_head lazy_init_head; int lazy; /* lazy registration */ + uint32_t major; + uint32_t minor; char padding[LTTNG_UST_PROBE_DESC_PADDING]; }; @@ -395,6 +406,8 @@ struct lttng_channel_ops { unsigned char *uuid, uint32_t chan_id); void (*channel_destroy)(struct lttng_channel *chan); + void *_deprecated1; + void *_deprecated2; int (*event_reserve)(struct lttng_ust_lib_ring_buffer_ctx *ctx, uint32_t event_id); void (*event_commit)(struct lttng_ust_lib_ring_buffer_ctx *ctx); @@ -518,7 +531,7 @@ int lttng_attach_context(struct lttng_ust_context *context_param, struct lttng_ctx **ctx, struct lttng_session *session); void lttng_context_init(void); void lttng_context_exit(void); -struct lttng_ctx *lttng_static_ctx; /* Used by filtering */ +extern struct lttng_ctx *lttng_static_ctx; /* Used by filtering */ void lttng_transport_register(struct lttng_transport *transport); void lttng_transport_unregister(struct lttng_transport *transport);