From: Jonathan Rajotte Date: Mon, 18 Nov 2019 20:12:20 +0000 (-0500) Subject: Fix: update apps on untrack only when session is active X-Git-Tag: v2.12.0-rc1~232 X-Git-Url: https://git.lttng.org/?p=lttng-tools.git;a=commitdiff_plain;h=a5a309207b81778262744a9de568f6d7c54996e2;ds=sidebyside Fix: update apps on untrack only when session is active This mimics what is done on the track side. Fixes #1210 Signed-off-by: Jonathan Rajotte Signed-off-by: Jérémie Galarneau --- diff --git a/src/bin/lttng-sessiond/trace-ust.c b/src/bin/lttng-sessiond/trace-ust.c index 486b53d30..a6c0c04ad 100644 --- a/src/bin/lttng-sessiond/trace-ust.c +++ b/src/bin/lttng-sessiond/trace-ust.c @@ -922,6 +922,7 @@ end: int trace_ust_untrack_pid(struct ltt_ust_session *session, int pid) { int retval = LTTNG_OK; + bool should_update_apps = false; if (pid == -1) { /* Create empty tracker, replace old tracker. */ @@ -938,7 +939,7 @@ int trace_ust_untrack_pid(struct ltt_ust_session *session, int pid) fini_pid_tracker(&tmp_tracker); /* Remove session from all applications */ - ust_app_global_update_all(session); + should_update_apps = true; } else { int ret; struct ust_app *app; @@ -957,9 +958,12 @@ int trace_ust_untrack_pid(struct ltt_ust_session *session, int pid) /* Remove session from application. */ app = ust_app_find_by_pid(pid); if (app) { - ust_app_global_update(session, app); + should_update_apps = true; } } + if (should_update_apps && session->active) { + ust_app_global_update_all(session); + } end: return retval; }