projects
/
lttng-tools.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Load x86-exceptions lttng-modules probe
[lttng-tools.git]
/
src
/
bin
/
lttng-sessiond
/
main.c
diff --git
a/src/bin/lttng-sessiond/main.c
b/src/bin/lttng-sessiond/main.c
index 13bd649180452ad8346f8d7a5729446a9c58b157..c1f466ed72a6e470d88f085a81af3f8edf71a83c 100644
(file)
--- a/
src/bin/lttng-sessiond/main.c
+++ b/
src/bin/lttng-sessiond/main.c
@@
-17,7
+17,6
@@
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
-#define _GNU_SOURCE
#define _LGPL_SOURCE
#include <getopt.h>
#include <grp.h>
#define _LGPL_SOURCE
#include <getopt.h>
#include <grp.h>
@@
-38,7
+37,6
@@
#include <sys/wait.h>
#include <urcu/uatomic.h>
#include <unistd.h>
#include <sys/wait.h>
#include <urcu/uatomic.h>
#include <unistd.h>
-#include <config.h>
#include <common/common.h>
#include <common/compat/socket.h>
#include <common/common.h>
#include <common/compat/socket.h>
@@
-49,7
+47,7
@@
#include <common/relayd/relayd.h>
#include <common/utils.h>
#include <common/daemonize.h>
#include <common/relayd/relayd.h>
#include <common/utils.h>
#include <common/daemonize.h>
-#include <common/config/config.h>
+#include <common/config/
session-
config.h>
#include "lttng-sessiond.h"
#include "buffer-registry.h"
#include "lttng-sessiond.h"
#include "buffer-registry.h"
@@
-801,6
+799,8
@@
static void sessiond_cleanup_options(void)
free(kmod_probes_list);
free(kmod_extra_probes_list);
free(kmod_probes_list);
free(kmod_extra_probes_list);
+ run_as_destroy_worker();
+
/* <fun> */
DBG("%c[%d;%dm*** assert failed :-) *** ==> %c[%dm%c[%d;%dm"
"Matthew, BEET driven development works!%c[%dm",
/* <fun> */
DBG("%c[%d;%dm*** assert failed :-) *** ==> %c[%dm%c[%d;%dm"
"Matthew, BEET driven development works!%c[%dm",
@@
-4901,7
+4901,7
@@
end:
/*
* config_entry_handler_cb used to handle options read from a config file.
/*
* config_entry_handler_cb used to handle options read from a config file.
- * See config_entry_handler_cb comment in common/config/config.h for the
+ * See config_entry_handler_cb comment in common/config/
session-
config.h for the
* return value conventions.
*/
static int config_entry_handler(const struct config_entry *entry, void *unused)
* return value conventions.
*/
static int config_entry_handler(const struct config_entry *entry, void *unused)
@@
-5510,6
+5510,10
@@
int main(int argc, char **argv)
}
}
}
}
+ if (run_as_create_worker(argv[0]) < 0) {
+ goto exit_create_run_as_worker_cleanup;
+ }
+
/*
* Starting from here, we can create threads. This needs to be after
* lttng_daemonize due to RCU.
/*
* Starting from here, we can create threads. This needs to be after
* lttng_daemonize due to RCU.
@@
-6127,13
+6131,15
@@
exit_ht_cleanup_quit_pipe:
health_app_destroy(health_sessiond);
exit_health_sessiond_cleanup:
health_app_destroy(health_sessiond);
exit_health_sessiond_cleanup:
+exit_create_run_as_worker_cleanup:
exit_options:
exit_options:
+ /* Ensure all prior call_rcu are done. */
+ rcu_barrier();
+
sessiond_cleanup_options();
exit_set_signal_handler:
sessiond_cleanup_options();
exit_set_signal_handler:
- /* Ensure all prior call_rcu are done. */
- rcu_barrier();
if (!retval) {
exit(EXIT_SUCCESS);
if (!retval) {
exit(EXIT_SUCCESS);
This page took
0.025383 seconds
and
5
git commands to generate.