diff options
author | Lai Jiangshan <laijs@cn.fujitsu.com> | 2008-10-27 22:51:53 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-11-03 04:28:52 -0500 |
commit | 127cafbb276266b1b8da967bfe25a062ab1d42ab (patch) | |
tree | 8f7183fa6f9a68b2bd3b3734da3575e4eff46a1d /include/linux/tracepoint.h | |
parent | 19dba33c43a2f0f2aa727ae075ec3b11330775ef (diff) |
tracepoint: introduce *_noupdate APIs.
Impact: add new tracepoint APIs to allow the batched registration of probes
new APIs separate tracepoint_probe_register(),
tracepoint_probe_unregister() into 2 steps. The first step of them
is just update tracepoint_entry, not connect or disconnect.
this patch introduces tracepoint_probe_update_all() for update all.
these APIs are very useful for registering lots of probes
but just updating once. Another very important thing is that
*_noupdate APIs do not require module_mutex.
Signed-off-by: Lai Jiangshan <laijs@cn.fujitsu.com>
Acked-by: Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'include/linux/tracepoint.h')
-rw-r--r-- | include/linux/tracepoint.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/include/linux/tracepoint.h b/include/linux/tracepoint.h index c5bb39c7a770..63064e9403f2 100644 --- a/include/linux/tracepoint.h +++ b/include/linux/tracepoint.h | |||
@@ -112,6 +112,10 @@ extern int tracepoint_probe_register(const char *name, void *probe); | |||
112 | */ | 112 | */ |
113 | extern int tracepoint_probe_unregister(const char *name, void *probe); | 113 | extern int tracepoint_probe_unregister(const char *name, void *probe); |
114 | 114 | ||
115 | extern int tracepoint_probe_register_noupdate(const char *name, void *probe); | ||
116 | extern int tracepoint_probe_unregister_noupdate(const char *name, void *probe); | ||
117 | extern void tracepoint_probe_update_all(void); | ||
118 | |||
115 | struct tracepoint_iter { | 119 | struct tracepoint_iter { |
116 | struct module *module; | 120 | struct module *module; |
117 | struct tracepoint *tracepoint; | 121 | struct tracepoint *tracepoint; |