X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;f=ltt-events.h;h=e8171b032110138198e4405a30de191b2757912e;hb=681cc3bb4f00fd63ad65920ea6e201fcaed300c0;hp=6711341c86f60ac7d13eb952d706a0174b9a062e;hpb=11b5a3c23711e1119185011f791f599713914d67;p=lttng-modules.git diff --git a/ltt-events.h b/ltt-events.h index 6711341c..e8171b03 100644 --- a/ltt-events.h +++ b/ltt-events.h @@ -14,6 +14,7 @@ struct ltt_channel; struct ltt_session; +struct lib_ring_buffer_ctx; /* * ltt_event structure is referred to by the tracing fast path. It must be @@ -38,7 +39,11 @@ struct ltt_channel_ops { unsigned int read_timer_interval); void (*channel_destroy)(struct channel *chan); struct lib_ring_buffer *(*buffer_read_open)(struct channel *chan); - struct lib_ring_buffer *(*buffer_read_close)(struct lib_ring_buffer *buf); + void (*buffer_read_close)(struct lib_ring_buffer *buf); + int (*event_reserve)(struct lib_ring_buffer_ctx *ctx); + void (*event_commit)(struct lib_ring_buffer_ctx *ctx); + void (*event_write)(struct lib_ring_buffer_ctx *ctx, const void *src, + size_t len); }; struct ltt_channel { @@ -83,9 +88,20 @@ struct ltt_event *ltt_event_create(struct ltt_channel *chan, char *name, enum instrum_type itype, void *probe, void *filter); -int _ltt_event_destroy(struct ltt_event *event); +int _ltt_event_unregister(struct ltt_event *event); +void _ltt_event_destroy(struct ltt_event *event); void ltt_transport_register(struct ltt_transport *transport); void ltt_transport_unregister(struct ltt_transport *transport); +int ltt_debugfs_abi_init(void); +void ltt_debugfs_abi_exit(void); + +int ltt_probe_register(const char *name, void *cb); +void ltt_probe_unregister(const char *name); +void *ltt_probe_get(const char *name); +void ltt_probe_put(void *cb); +int ltt_probes_init(void); +void ltt_probes_exit(void); + #endif /* _LTT_EVENTS_H */