From: Mathieu Desnoyers Date: Mon, 11 Nov 2013 14:52:13 +0000 (-0500) Subject: Revert "Fix: remove relayd rundir on cleanup" X-Git-Tag: v2.4.0-rc1~68 X-Git-Url: https://git.lttng.org./?a=commitdiff_plain;h=c3844e398cb3ff08e16c2b6ecdac4582d381ae95;p=lttng-tools.git Revert "Fix: remove relayd rundir on cleanup" This reverts commit 3f28e5619d0a5c2aacef18251b3263bd632199da. When there are multiple relayd in parallel, we don't want to have a teardown vs startup race where the directory is removed just after its supposed creation. Signed-off-by: Mathieu Desnoyers --- diff --git a/src/bin/lttng-relayd/health-relayd.c b/src/bin/lttng-relayd/health-relayd.c index 2ce1c1fda..61e50367c 100644 --- a/src/bin/lttng-relayd/health-relayd.c +++ b/src/bin/lttng-relayd/health-relayd.c @@ -54,8 +54,6 @@ /* Global health check unix path */ static char health_unix_sock_path[PATH_MAX]; -static char *relayd_path; -static char *lttng_rundir; int health_quit_pipe[2]; @@ -135,12 +133,12 @@ static int setup_health_path(void) { int is_root, ret = 0; - char *home_path = NULL; + char *home_path = NULL, *rundir = NULL, *relayd_path; is_root = !getuid(); if (is_root) { - lttng_rundir = strdup(DEFAULT_LTTNG_RUNDIR); + rundir = strdup(DEFAULT_LTTNG_RUNDIR); } else { /* * Create rundir from home path. This will create something like @@ -155,20 +153,20 @@ int setup_health_path(void) goto end; } - ret = asprintf(<tng_rundir, DEFAULT_LTTNG_HOME_RUNDIR, home_path); + ret = asprintf(&rundir, DEFAULT_LTTNG_HOME_RUNDIR, home_path); if (ret < 0) { ret = -ENOMEM; goto end; } } - ret = asprintf(&relayd_path, DEFAULT_RELAYD_PATH, lttng_rundir); + ret = asprintf(&relayd_path, DEFAULT_RELAYD_PATH, rundir); if (ret < 0) { ret = -ENOMEM; goto end; } - ret = create_lttng_rundir_with_perm(lttng_rundir); + ret = create_lttng_rundir_with_perm(rundir); if (ret < 0) { goto end; } @@ -197,6 +195,7 @@ int setup_health_path(void) } end: + free(rundir); return ret; } @@ -379,11 +378,6 @@ error: } DBG("Health check thread dying"); unlink(health_unix_sock_path); - (void) rmdir(relayd_path); - free(relayd_path); - (void) rmdir(lttng_rundir); - free(lttng_rundir); - if (sock >= 0) { ret = close(sock); if (ret) {