X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;f=lttng-sessiond%2Fust-app.c;h=6de177564a0c53b38af847b3453c72e740301cf1;hb=9bb127554f24d6157eba95a22a39df503ad2ea5c;hp=e8dc32733492f39d012b2a3a34fd542d14969471;hpb=aee6bafd6ea002e75bc69d0c476543b9f807fd0b;p=lttng-tools.git diff --git a/lttng-sessiond/ust-app.c b/lttng-sessiond/ust-app.c index e8dc32733..6de177564 100644 --- a/lttng-sessiond/ust-app.c +++ b/lttng-sessiond/ust-app.c @@ -1944,13 +1944,17 @@ int ust_app_stop_trace(struct ltt_ust_session *usess, struct ust_app *app) goto error_rcu_unlock; } - /* Flush all buffers before stopping */ - ret = ustctl_sock_flush_buffer(app->key.sock, ua_sess->metadata->obj); + /* This inhibits UST tracing */ + ret = ustctl_stop_session(app->key.sock, ua_sess->handle); if (ret < 0) { - ERR("UST app PID %d metadata flush failed", app->key.pid); - ERR("Ended with ret %d", ret); + ERR("Error stopping tracing for app pid: %d", app->key.pid); + goto error_rcu_unlock; } + /* Quiescent wait after stopping trace */ + ustctl_wait_quiescent(app->key.sock); + + /* Flushing buffers */ cds_lfht_for_each_entry(ua_sess->channels, &iter, ua_chan, node) { ret = ustctl_sock_flush_buffer(app->key.sock, ua_chan->obj); if (ret < 0) { @@ -1962,18 +1966,15 @@ int ust_app_stop_trace(struct ltt_ust_session *usess, struct ust_app *app) } } - /* This inhibits UST tracing */ - ret = ustctl_stop_session(app->key.sock, ua_sess->handle); + /* Flush all buffers before stopping */ + ret = ustctl_sock_flush_buffer(app->key.sock, ua_sess->metadata->obj); if (ret < 0) { - ERR("Error stopping tracing for app pid: %d", app->key.pid); - goto error_rcu_unlock; + ERR("UST app PID %d metadata flush failed", app->key.pid); + ERR("Ended with ret %d", ret); } rcu_read_unlock(); - /* Quiescent wait after stopping trace */ - ustctl_wait_quiescent(app->key.sock); - return 0; error_rcu_unlock: