From 2c4000c044ba8721bc93b52497c0ad6ec3b20146 Mon Sep 17 00:00:00 2001 From: Brian Christiansen <brian@schedmd.com> Date: Tue, 26 Jul 2016 15:18:46 -0600 Subject: [PATCH] Fix coverity issues. --- src/api/federation_info.c | 4 +++- .../accounting_storage/mysql/as_mysql_federation.c | 1 + src/sacctmgr/cluster_functions.c | 2 +- src/sacctmgr/federation_functions.c | 9 +-------- src/slurmctld/fed_mgr.c | 6 ++++-- 5 files changed, 10 insertions(+), 12 deletions(-) diff --git a/src/api/federation_info.c b/src/api/federation_info.c index 0d765b64e35..2cf02465d36 100644 --- a/src/api/federation_info.c +++ b/src/api/federation_info.c @@ -100,7 +100,7 @@ extern void slurm_print_federation(void *ptr) slurmdb_cluster_rec_t *cluster; int left_col_size; char *conn_status[] = {"Disconnected", "Connected"}; - char *cluster_name = slurm_get_cluster_name(); + char *cluster_name = NULL; slurmdb_federation_rec_t *fed = (slurmdb_federation_rec_t *)ptr; @@ -109,6 +109,8 @@ extern void slurm_print_federation(void *ptr) if (!fed->name) return; + cluster_name = slurm_get_cluster_name(); + left_col_size = strlen("federation:"); printf("%-*s %s\n", left_col_size, "Federation:", fed->name); list_sort(fed->cluster_list, (ListCmpF)_sort_clusters_by_name); diff --git a/src/plugins/accounting_storage/mysql/as_mysql_federation.c b/src/plugins/accounting_storage/mysql/as_mysql_federation.c index 9baf6f7cff7..df28f899154 100644 --- a/src/plugins/accounting_storage/mysql/as_mysql_federation.c +++ b/src/plugins/accounting_storage/mysql/as_mysql_federation.c @@ -367,6 +367,7 @@ extern int as_mysql_add_federations(mysql_conn_t *mysql_conn, uint32_t uid, xfree(cols); xfree(vals); xfree(extra); + xfree(user_name); return SLURM_ERROR; } diff --git a/src/sacctmgr/cluster_functions.c b/src/sacctmgr/cluster_functions.c index d9e6c5bfd9f..9ecb3f8c12c 100644 --- a/src/sacctmgr/cluster_functions.c +++ b/src/sacctmgr/cluster_functions.c @@ -356,7 +356,7 @@ extern int sacctmgr_add_cluster(int argc, char *argv[]) } } - if (start_cluster && start_cluster->fed.name) { + if (start_cluster->fed.name) { int rc; List fed_list = list_create(slurm_destroy_char); list_append(fed_list, xstrdup(start_cluster->fed.name)); diff --git a/src/sacctmgr/federation_functions.c b/src/sacctmgr/federation_functions.c index 2bf270c47a7..970951ff5ed 100644 --- a/src/sacctmgr/federation_functions.c +++ b/src/sacctmgr/federation_functions.c @@ -42,7 +42,6 @@ static int _set_cond(int *start, int argc, char *argv[], List format_list) { int i; - int c_set = 0; int a_set = 0; int end = 0; int command_len = 0; @@ -96,13 +95,7 @@ static int _set_cond(int *start, int argc, char *argv[], } (*start) = i; - if (c_set && a_set) - return 3; - else if (a_set) { - return 2; - } else if (c_set) - return 1; - return 0; + return a_set; } static int _set_rec(int *start, int argc, char *argv[], diff --git a/src/slurmctld/fed_mgr.c b/src/slurmctld/fed_mgr.c index 4048f6a8624..9e33109d10a 100644 --- a/src/slurmctld/fed_mgr.c +++ b/src/slurmctld/fed_mgr.c @@ -410,9 +410,12 @@ extern int fed_mgr_state_save(char *state_save_location) pack_time(time(NULL), buffer); memset(&msg, 0, sizeof(dbd_list_msg_t)); + + slurm_mutex_lock(&fed_mutex); msg.my_list = fed_mgr_siblings; slurmdbd_pack_list_msg(&msg, SLURM_PROTOCOL_VERSION, DBD_ADD_CLUSTERS, buffer); + slurm_mutex_unlock(&fed_mutex); /* write the buffer to file */ reg_file = xstrdup_printf("%s/%s", state_save_location, @@ -562,8 +565,7 @@ extern int fed_mgr_state_load(char *state_save_location) return SLURM_SUCCESS; unpack_error: - if (buffer) - free_buf(buffer); + free_buf(buffer); slurm_mutex_unlock(&fed_mutex); return SLURM_ERROR; -- GitLab