X-Git-Url: http://git.lttng.org/?a=blobdiff_plain;f=liblttng-ust%2Ftracepoint-internal.h;h=1e6f92b677e812dfe6d4b5a2d75eb695417f4894;hb=a211b293bc6a610bed73a60006967663a30e4931;hp=8ac6487f7b00078db5fa12496991b6d72decde5c;hpb=c8fcf224e283ed7679c84cbcccf70ac65ca7e41d;p=lttng-ust.git diff --git a/liblttng-ust/tracepoint-internal.h b/liblttng-ust/tracepoint-internal.h index 8ac6487f..1e6f92b6 100644 --- a/liblttng-ust/tracepoint-internal.h +++ b/liblttng-ust/tracepoint-internal.h @@ -23,15 +23,26 @@ #include #include +#define TRACE_DEFAULT TRACE_DEBUG_LINE + struct tracepoint_lib { - struct cds_list_head list; - struct tracepoint * const *tracepoints_start; + struct cds_list_head list; /* list of registered libs */ + struct lttng_ust_tracepoint * const *tracepoints_start; int tracepoints_count; + struct cds_list_head callsites; }; -extern int tracepoint_probe_register_noupdate(const char *name, void *callback, void *priv); -extern int tracepoint_probe_unregister_noupdate(const char *name, void *callback, void *priv); +extern int tracepoint_probe_register_noupdate(const char *name, + void (*callback)(void), void *priv, + const char *signature); +extern int tracepoint_probe_unregister_noupdate(const char *name, + void (*callback)(void), void *priv); extern void tracepoint_probe_update_all(void); +extern int __tracepoint_probe_register_queue_release(const char *name, + void (*func)(void), void *data, const char *signature); +extern int __tracepoint_probe_unregister_queue_release(const char *name, + void (*func)(void), void *data); +extern void __tracepoint_probe_prune_release_queue(void); /* * call after disconnection of last probe implemented within a @@ -39,10 +50,14 @@ extern void tracepoint_probe_update_all(void); */ static inline void tracepoint_synchronize_unregister(void) { - synchronize_rcu_bp(); + urcu_bp_synchronize_rcu(); } extern void init_tracepoint(void); extern void exit_tracepoint(void); +void *lttng_ust_tp_check_weak_hidden1(void); +void *lttng_ust_tp_check_weak_hidden2(void); +void *lttng_ust_tp_check_weak_hidden3(void); + #endif /* _LTTNG_TRACEPOINT_INTERNAL_H */