projects
/
lttng-ust.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix: many-events registration/unregistration speed
[lttng-ust.git]
/
liblttng-ust
/
lttng-events.c
diff --git
a/liblttng-ust/lttng-events.c
b/liblttng-ust/lttng-events.c
index 373995d08e61135bdd71b7991ba10749132d9116..64f70f92bd9701ff15936d9fb6ec84176d389187 100644
(file)
--- a/
liblttng-ust/lttng-events.c
+++ b/
liblttng-ust/lttng-events.c
@@
-184,7
+184,7
@@
void register_event(struct lttng_event *event)
assert(event->registered == 0);
desc = event->desc;
assert(event->registered == 0);
desc = event->desc;
- ret = __tracepoint_probe_register(desc->name,
+ ret = __tracepoint_probe_register
_queue_release
(desc->name,
desc->probe_callback,
event, desc->signature);
WARN_ON_ONCE(ret);
desc->probe_callback,
event, desc->signature);
WARN_ON_ONCE(ret);
@@
-200,7
+200,7
@@
void unregister_event(struct lttng_event *event)
assert(event->registered == 1);
desc = event->desc;
assert(event->registered == 1);
desc = event->desc;
- ret = __tracepoint_probe_unregister(desc->name,
+ ret = __tracepoint_probe_unregister
_queue_release
(desc->name,
desc->probe_callback,
event);
WARN_ON_ONCE(ret);
desc->probe_callback,
event);
WARN_ON_ONCE(ret);
@@
-230,6
+230,7
@@
void lttng_session_destroy(struct lttng_session *session)
_lttng_event_unregister(event);
}
synchronize_trace(); /* Wait for in-flight events to complete */
_lttng_event_unregister(event);
}
synchronize_trace(); /* Wait for in-flight events to complete */
+ __tracepoint_probe_prune_release_queue();
cds_list_for_each_entry_safe(enabler, tmpenabler,
&session->enablers_head, node)
lttng_enabler_destroy(enabler);
cds_list_for_each_entry_safe(enabler, tmpenabler,
&session->enablers_head, node)
lttng_enabler_destroy(enabler);
@@
-1125,6
+1126,7
@@
void lttng_session_sync_enablers(struct lttng_session *session)
lttng_filter_sync_state(runtime);
}
}
lttng_filter_sync_state(runtime);
}
}
+ __tracepoint_probe_prune_release_queue();
}
/*
}
/*
This page took
0.025073 seconds
and
4
git commands to generate.