X-Git-Url: http://git.liburcu.org/?a=blobdiff_plain;f=liblttng-ust%2Ftracepoint-internal.h;h=01d8c8bfdfc3dc9dae05429153d76c745581678f;hb=23c8854a5fa1120df5cfdfbf08f00e00976f95fa;hp=c883c7bda62ef8ce1bf9e3d10de9894237ac5ead;hpb=2fed87aef82aaa8edfb6d8d8ac6bbf5f1e67b955;p=lttng-ust.git diff --git a/liblttng-ust/tracepoint-internal.h b/liblttng-ust/tracepoint-internal.h index c883c7bd..01d8c8bf 100644 --- a/liblttng-ust/tracepoint-internal.h +++ b/liblttng-ust/tracepoint-internal.h @@ -20,21 +20,23 @@ */ #include +#include #include struct tracepoint_lib { struct cds_list_head list; - struct tracepoint tracepoints_start; + struct tracepoint * const *tracepoints_start; int tracepoints_count; }; struct tracepoint_iter { struct tracepoint_lib *lib; struct tracepoint * const *tracepoint; +}; 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_update_all(void); +extern void tracepoint_probe_update_all(void); extern void tracepoint_iter_start(struct tracepoint_iter *iter); extern void tracepoint_iter_next(struct tracepoint_iter *iter); @@ -49,7 +51,7 @@ extern int tracepoint_get_iter_range(struct tracepoint * const **tracepoint, */ static inline void tracepoint_synchronize_unregister(void) { - synchronize_rcu(); + synchronize_rcu_bp(); } extern void init_tracepoint(void);