summaryrefslogtreecommitdiffstats
path: root/xlators/mgmt/glusterd/src
diff options
context:
space:
mode:
Diffstat (limited to 'xlators/mgmt/glusterd/src')
-rw-r--r--xlators/mgmt/glusterd/src/glusterd-hooks.c8
-rw-r--r--xlators/mgmt/glusterd/src/glusterd-rebalance.c2
-rw-r--r--xlators/mgmt/glusterd/src/glusterd-utils.c41
-rw-r--r--xlators/mgmt/glusterd/src/glusterd-utils.h9
-rw-r--r--xlators/mgmt/glusterd/src/glusterd.c8
5 files changed, 12 insertions, 56 deletions
diff --git a/xlators/mgmt/glusterd/src/glusterd-hooks.c b/xlators/mgmt/glusterd/src/glusterd-hooks.c
index ba428b0f359..b0c4c2638f7 100644
--- a/xlators/mgmt/glusterd/src/glusterd-hooks.c
+++ b/xlators/mgmt/glusterd/src/glusterd-hooks.c
@@ -93,7 +93,7 @@ glusterd_hooks_create_hooks_directory (char *basedir)
priv = THIS->private;
snprintf (path, sizeof (path), "%s/hooks", basedir);
- ret = mkdir_if_missing (path, NULL);
+ ret = mkdir_p (path, 0777, _gf_true);
if (ret) {
gf_log (THIS->name, GF_LOG_CRITICAL, "Unable to create %s due"
"to %s", path, strerror (errno));
@@ -101,7 +101,7 @@ glusterd_hooks_create_hooks_directory (char *basedir)
}
GLUSTERD_GET_HOOKS_DIR (version_dir, GLUSTERD_HOOK_VER, priv);
- ret = mkdir_if_missing (version_dir, NULL);
+ ret = mkdir_p (version_dir, 0777, _gf_true);
if (ret) {
gf_log (THIS->name, GF_LOG_CRITICAL, "Unable to create %s due "
"to %s", version_dir, strerror (errno));
@@ -115,7 +115,7 @@ glusterd_hooks_create_hooks_directory (char *basedir)
snprintf (path, sizeof (path), "%s/%s", version_dir,
cmd_subdir);
- ret = mkdir_if_missing (path, NULL);
+ ret = mkdir_p (path, 0777, _gf_true);
if (ret) {
gf_log (THIS->name, GF_LOG_CRITICAL,
"Unable to create %s due to %s",
@@ -127,7 +127,7 @@ glusterd_hooks_create_hooks_directory (char *basedir)
type++) {
snprintf (path, sizeof (path), "%s/%s/%s",
version_dir, cmd_subdir, type_subdir[type]);
- ret = mkdir_if_missing (path, NULL);
+ ret = mkdir_p (path, 0777, _gf_true);
if (ret) {
gf_log (THIS->name, GF_LOG_CRITICAL,
"Unable to create %s due to %s",
diff --git a/xlators/mgmt/glusterd/src/glusterd-rebalance.c b/xlators/mgmt/glusterd/src/glusterd-rebalance.c
index 686b9b36db3..8312610f5be 100644
--- a/xlators/mgmt/glusterd/src/glusterd-rebalance.c
+++ b/xlators/mgmt/glusterd/src/glusterd-rebalance.c
@@ -262,7 +262,7 @@ glusterd_handle_defrag_start (glusterd_volinfo_t *volinfo, char *op_errstr,
glusterd_store_perform_node_state_store (volinfo);
GLUSTERD_GET_DEFRAG_DIR (defrag_path, volinfo, priv);
- ret = mkdir_p (defrag_path, 0777, 0, NULL);
+ ret = mkdir_p (defrag_path, 0777, _gf_true);
if (ret) {
gf_log (THIS->name, GF_LOG_ERROR, "Failed to create "
"directory %s", defrag_path);
diff --git a/xlators/mgmt/glusterd/src/glusterd-utils.c b/xlators/mgmt/glusterd/src/glusterd-utils.c
index ea0ee68e680..1b5a58dd73d 100644
--- a/xlators/mgmt/glusterd/src/glusterd-utils.c
+++ b/xlators/mgmt/glusterd/src/glusterd-utils.c
@@ -4474,9 +4474,8 @@ glusterd_brick_create_path (char *host, char *path, uuid_t uuid,
int ret = -1;
char msg[2048] = {0,};
gf_boolean_t in_use = _gf_false;
- gf_boolean_t created = _gf_true;
- ret = mkdir_if_missing (path, &created);
+ ret = mkdir_p (path, 0777, _gf_true);
if (ret)
goto out;
@@ -4510,8 +4509,6 @@ glusterd_brick_create_path (char *host, char *path, uuid_t uuid,
snprintf (msg, sizeof (msg), "Failed to set extended "
"attributes %s, reason: %s",
GF_XATTR_VOL_ID_KEY, strerror (errno));
- if (created)
- rmdir (path);
goto out;
}
@@ -4862,38 +4859,6 @@ glusterd_delete_all_bricks (glusterd_volinfo_t* volinfo)
return ret;
}
-/* @new should be used by caller only if ret is zero.
- * caller should set @new to 'true' by default.*/
-int
-mkdir_if_missing (char *path, gf_boolean_t *new)
-{
- struct stat st = {0,};
- int ret = 0;
- gf_boolean_t created = _gf_true;
-
- ret = mkdir (path, 0777);
- if (ret && errno != EEXIST)
- goto out;
-
- if (ret && errno == EEXIST)
- created = _gf_false;
-
- ret = stat (path, &st);
- if (ret == -1 || !S_ISDIR (st.st_mode)) {
- ret = -1;
- goto out;
- }
-
- if (new)
- *new = created;
-
-out:
- if (ret)
- gf_log ("", GF_LOG_WARNING, "Failed to create the"
- " directory %s", path);
- return ret;
-}
-
int
glusterd_start_gsync (glusterd_volinfo_t *master_vol, char *slave,
char *glusterd_uuid_str, char **op_errstr)
@@ -4921,7 +4886,7 @@ glusterd_start_gsync (glusterd_volinfo_t *master_vol, char *slave,
goto out;
snprintf (buf, PATH_MAX, "%s/"GEOREP"/%s", priv->workdir, master_vol->volname);
- ret = mkdir_if_missing (buf, NULL);
+ ret = mkdir_p (buf, 0777, _gf_true);
if (ret) {
errcode = -1;
goto out;
@@ -4929,7 +4894,7 @@ glusterd_start_gsync (glusterd_volinfo_t *master_vol, char *slave,
snprintf (buf, PATH_MAX, DEFAULT_LOG_FILE_DIRECTORY"/"GEOREP"/%s",
master_vol->volname);
- ret = mkdir_if_missing (buf, NULL);
+ ret = mkdir_p (buf, 0777, _gf_true);
if (ret) {
errcode = -1;
goto out;
diff --git a/xlators/mgmt/glusterd/src/glusterd-utils.h b/xlators/mgmt/glusterd/src/glusterd-utils.h
index d149cb9d0dd..c1b2ee9aea9 100644
--- a/xlators/mgmt/glusterd/src/glusterd-utils.h
+++ b/xlators/mgmt/glusterd/src/glusterd-utils.h
@@ -57,15 +57,6 @@ typedef struct glusterd_voldict_ctx_ {
char *val_name;
} glusterd_voldict_ctx_t;
-/* Moved the definition from gluster-utils.c avoiding
- * extern'ing in multiple places.
- * (Indeed, XXX: we'd rather need a general
- * "mkdir -p" like routine in libglusterfs)
-*/
-
-int
-mkdir_if_missing (char *path, gf_boolean_t *new);
-
int
glusterd_compare_lines (const void *a, const void *b);
diff --git a/xlators/mgmt/glusterd/src/glusterd.c b/xlators/mgmt/glusterd/src/glusterd.c
index a2c59d0de15..58890985f96 100644
--- a/xlators/mgmt/glusterd/src/glusterd.c
+++ b/xlators/mgmt/glusterd/src/glusterd.c
@@ -344,7 +344,7 @@ glusterd_crt_georep_folders (char *georepdir, glusterd_conf_t *conf)
}
snprintf (georepdir, PATH_MAX, "%s/"GEOREP, conf->workdir);
- ret = mkdir_if_missing (georepdir, NULL);
+ ret = mkdir_p (georepdir, 0777, _gf_true);
if (-1 == ret) {
gf_log ("glusterd", GF_LOG_CRITICAL,
"Unable to create "GEOREP" directory %s",
@@ -359,7 +359,7 @@ glusterd_crt_georep_folders (char *georepdir, glusterd_conf_t *conf)
georepdir);
goto out;
}
- ret = mkdir_if_missing (DEFAULT_LOG_FILE_DIRECTORY"/"GEOREP, NULL);
+ ret = mkdir_p (DEFAULT_LOG_FILE_DIRECTORY"/"GEOREP, 0777, _gf_true);
if (-1 == ret) {
gf_log ("glusterd", GF_LOG_CRITICAL,
"Unable to create "GEOREP" log directory");
@@ -373,8 +373,8 @@ glusterd_crt_georep_folders (char *georepdir, glusterd_conf_t *conf)
georepdir);
goto out;
}
- ret = mkdir_if_missing (DEFAULT_LOG_FILE_DIRECTORY"/"GEOREP"-slaves",
- NULL);
+ ret = mkdir_p (DEFAULT_LOG_FILE_DIRECTORY"/"GEOREP"-slaves", 0777,
+ _gf_true);
if (-1 == ret) {
gf_log ("glusterd", GF_LOG_CRITICAL,
"Unable to create "GEOREP" slave log directory");