diff options
Diffstat (limited to 'xlators/mgmt/glusterd')
-rw-r--r-- | xlators/mgmt/glusterd/src/glusterd-gfproxyd-svc.c | 7 | ||||
-rw-r--r-- | xlators/mgmt/glusterd/src/glusterd-locks.c | 4 | ||||
-rw-r--r-- | xlators/mgmt/glusterd/src/glusterd-log-ops.c | 1 | ||||
-rw-r--r-- | xlators/mgmt/glusterd/src/glusterd-server-quorum.c | 22 | ||||
-rw-r--r-- | xlators/mgmt/glusterd/src/glusterd-sm.c | 5 | ||||
-rw-r--r-- | xlators/mgmt/glusterd/src/glusterd.c | 6 |
6 files changed, 34 insertions, 11 deletions
diff --git a/xlators/mgmt/glusterd/src/glusterd-gfproxyd-svc.c b/xlators/mgmt/glusterd/src/glusterd-gfproxyd-svc.c index a3b0829d942..4ebc823619d 100644 --- a/xlators/mgmt/glusterd/src/glusterd-gfproxyd-svc.c +++ b/xlators/mgmt/glusterd/src/glusterd-gfproxyd-svc.c @@ -239,8 +239,11 @@ glusterd_gfproxydsvc_manager (glusterd_svc_t *svc, void *data, int flags) out: if (ret) { - gf_event (EVENT_SVC_MANAGER_FAILED, "volume=%s;svc_name=%s", - volinfo->volname, svc->name); + if (volinfo) { + gf_event (EVENT_SVC_MANAGER_FAILED, + "volume=%s;svc_name=%s", + volinfo->volname, svc->name); + } } gf_msg_debug ("glusterd", 0, "Returning %d", ret); diff --git a/xlators/mgmt/glusterd/src/glusterd-locks.c b/xlators/mgmt/glusterd/src/glusterd-locks.c index c7951b3cf24..45667be1894 100644 --- a/xlators/mgmt/glusterd/src/glusterd-locks.c +++ b/xlators/mgmt/glusterd/src/glusterd-locks.c @@ -699,6 +699,7 @@ glusterd_mgmt_v3_lock (const char *name, uuid_t uuid, uint32_t *op_errno, ret = 0; out: + GF_FREE (key_dup); gf_msg_trace (this->name, 0, "Returning %d", ret); return ret; } @@ -753,11 +754,10 @@ gd_mgmt_v3_unlock_timer_cbk (void *data) gf_msg (this->name, GF_LOG_ERROR, 0, GD_MSG_DICT_SET_FAILED, "Unable to get lock owner in mgmt_v3 lock"); - goto out; } out: - if (mgmt_lock_timer->timer) { + if (mgmt_lock_timer && mgmt_lock_timer->timer) { mgmt_lock_timer_xl = mgmt_lock_timer->xl; GF_VALIDATE_OR_GOTO (this->name, mgmt_lock_timer_xl, ret_function); diff --git a/xlators/mgmt/glusterd/src/glusterd-log-ops.c b/xlators/mgmt/glusterd/src/glusterd-log-ops.c index d04492af7cc..575c104d1c6 100644 --- a/xlators/mgmt/glusterd/src/glusterd-log-ops.c +++ b/xlators/mgmt/glusterd/src/glusterd-log-ops.c @@ -244,6 +244,7 @@ cont: ret = fscanf (file, "%d", &pid); if (ret <= 0) { + fclose (file); gf_msg ("glusterd", GF_LOG_ERROR, errno, GD_MSG_FILE_OP_FAILED, "Unable to read pidfile: %s", pidfile); diff --git a/xlators/mgmt/glusterd/src/glusterd-server-quorum.c b/xlators/mgmt/glusterd/src/glusterd-server-quorum.c index e1583c4a881..cc8fa963b50 100644 --- a/xlators/mgmt/glusterd/src/glusterd-server-quorum.c +++ b/xlators/mgmt/glusterd/src/glusterd-server-quorum.c @@ -364,16 +364,30 @@ glusterd_do_volume_quorum_action (xlator_t *this, glusterd_volinfo_t *volinfo, if (!glusterd_is_local_brick (this, volinfo, brickinfo)) continue; if (quorum_status == DOESNT_MEET_QUORUM) { - glusterd_brick_stop (volinfo, brickinfo, _gf_false); + ret = glusterd_brick_stop (volinfo, brickinfo, + _gf_false); + if (ret) { + gf_msg (this->name, GF_LOG_ERROR, 0, + GD_MSG_BRICK_STOP_FAIL, "Failed to " + "stop brick %s:%s", + brickinfo->hostname, brickinfo->path); + } } else { if (!brickinfo->start_triggered) { pthread_mutex_lock (&brickinfo->restart_mutex); { - glusterd_brick_start (volinfo, - brickinfo, - _gf_false); + ret = glusterd_brick_start (volinfo, + brickinfo, + _gf_false); } pthread_mutex_unlock (&brickinfo->restart_mutex); + if (ret) { + gf_msg (this->name, GF_LOG_ERROR, 0, + GD_MSG_BRICK_DISCONNECTED, + "Failed to start %s:%s", + brickinfo->hostname, + brickinfo->path); + } } } } diff --git a/xlators/mgmt/glusterd/src/glusterd-sm.c b/xlators/mgmt/glusterd/src/glusterd-sm.c index 18e5e5a3800..a952a4c179e 100644 --- a/xlators/mgmt/glusterd/src/glusterd-sm.c +++ b/xlators/mgmt/glusterd/src/glusterd-sm.c @@ -1475,6 +1475,11 @@ glusterd_friend_sm () } ret = glusterd_store_peerinfo (peerinfo); + if (ret) { + gf_msg (this->name, GF_LOG_ERROR, 0, + GD_MSG_PEERINFO_CREATE_FAIL, + "Failed to store peerinfo"); + } rcu_read_unlock (); glusterd_destroy_friend_event_context (event); diff --git a/xlators/mgmt/glusterd/src/glusterd.c b/xlators/mgmt/glusterd/src/glusterd.c index 96019a91050..85ae51ba9fc 100644 --- a/xlators/mgmt/glusterd/src/glusterd.c +++ b/xlators/mgmt/glusterd/src/glusterd.c @@ -1005,7 +1005,7 @@ check_prepare_mountbroker_root (char *mountbroker_root) sys_close (dfd0); if (dfd != -1) sys_close (dfd); - if (dfd2 != -1) + if (dfd2 != -1 && dfd != dfd2) sys_close (dfd2); return ret; @@ -1807,8 +1807,8 @@ init (xlator_t *this) conf->rpc = rpc; conf->uds_rpc = uds_rpc; conf->gfs_mgmt = &gd_brick_prog; - strncpy (conf->workdir, workdir, PATH_MAX); - strncpy (conf->rundir, rundir, PATH_MAX); + (void) strncpy (conf->workdir, workdir, strlen (workdir) + 1); + (void) strncpy (conf->rundir, rundir, strlen (rundir) + 1); synclock_init (&conf->big_lock, SYNC_LOCK_RECURSIVE); pthread_mutex_init (&conf->xprt_lock, NULL); |