From b10f55ae6a687bc869f00f16a8f248c8faf442a7 Mon Sep 17 00:00:00 2001 From: Morris Jette <jette@schedmd.com> Date: Thu, 20 Aug 2015 15:44:03 -0700 Subject: [PATCH] Fix CLANG reported errors --- src/common/slurm_protocol_pack.c | 1 - src/plugins/priority/basic/priority_basic.c | 4 +++- src/scontrol/update_job.c | 9 ++++----- src/slurmctld/acct_policy.c | 11 +++++------ 4 files changed, 12 insertions(+), 13 deletions(-) diff --git a/src/common/slurm_protocol_pack.c b/src/common/slurm_protocol_pack.c index 1614634f79a..b6b3103541c 100644 --- a/src/common/slurm_protocol_pack.c +++ b/src/common/slurm_protocol_pack.c @@ -13854,7 +13854,6 @@ _pack_assoc_mgr_info_request_msg(assoc_mgr_info_request_msg_t *msg, packstr(tmp_info, buffer); list_iterator_destroy(itr); } - count = NO_VAL; pack32(msg->flags, buffer); diff --git a/src/plugins/priority/basic/priority_basic.c b/src/plugins/priority/basic/priority_basic.c index 10ed3c73772..95af7941894 100644 --- a/src/plugins/priority/basic/priority_basic.c +++ b/src/plugins/priority/basic/priority_basic.c @@ -177,7 +177,7 @@ extern void priority_p_job_end(struct job_record *job_ptr) uint64_t time_limit_secs = (uint64_t)job_ptr->time_limit * 60; slurmdb_assoc_rec_t *assoc_ptr; int i; - uint64_t unused_tres_run_secs[slurmctld_tres_cnt]; + uint64_t *unused_tres_run_secs; assoc_mgr_lock_t locks = { NO_LOCK, WRITE_LOCK, NO_LOCK, WRITE_LOCK, NO_LOCK, NO_LOCK, NO_LOCK }; @@ -185,6 +185,7 @@ extern void priority_p_job_end(struct job_record *job_ptr) if (job_ptr->end_time >= job_ptr->start_time + time_limit_secs) return; + unused_tres_run_secs = xmalloc(sizeof(uint64_t) * slurmctld_tres_cnt); for (i=0; i<slurmctld_tres_cnt; i++) { unused_tres_run_secs[i] = (uint64_t)(job_ptr->start_time + @@ -241,6 +242,7 @@ extern void priority_p_job_end(struct job_record *job_ptr) assoc_ptr = assoc_ptr->usage->parent_assoc_ptr; } assoc_mgr_unlock(&locks); + xfree(unused_tres_run_secs); return; } diff --git a/src/scontrol/update_job.c b/src/scontrol/update_job.c index b2ed8f190a3..0d4d6fca750 100644 --- a/src/scontrol/update_job.c +++ b/src/scontrol/update_job.c @@ -736,12 +736,11 @@ scontrol_update_job (int argc, char *argv[]) job_msg.nice = NICE_OFFSET + 100; update_cnt++; continue; - } else if (! val) { + } else if (!val && argv[i + 1]) { tag = argv[i]; - val = argv[i + 1]; - ++i; - if (val) - vallen = strlen(val); + taglen = strlen(tag); + val = argv[++i]; + vallen = strlen(val); } else { exit_code = 1; fprintf (stderr, "Invalid input: %s\n", argv[i]); diff --git a/src/slurmctld/acct_policy.c b/src/slurmctld/acct_policy.c index 62ee310f292..99cb2be6201 100644 --- a/src/slurmctld/acct_policy.c +++ b/src/slurmctld/acct_policy.c @@ -1665,9 +1665,13 @@ static int _qos_job_runnable_post_select(struct job_record *job_ptr, qos_out_ptr->max_tres_pn_ctld, job_ptr->limit_set.tres, 1, 1)) { + uint64_t req_per_node; xfree(job_ptr->state_desc); job_ptr->state_reason = get_tres_state_reason( tres_pos, WAIT_QOS_MAX_UNK_PER_NODE); + req_per_node = tres_req_cnt[tres_pos]; + if (tres_req_cnt[TRES_ARRAY_NODE] > 1) + req_per_node /= tres_req_cnt[TRES_ARRAY_NODE]; debug2("job %u is being held, " "QOS %s min tres(%s) per node " "request %"PRIu64" exceeds " @@ -1675,7 +1679,7 @@ static int _qos_job_runnable_post_select(struct job_record *job_ptr, job_ptr->job_id, qos_ptr->name, assoc_mgr_tres_name_array[tres_pos], - tres_req_cnt[tres_pos] / tres_req_cnt[TRES_ARRAY_NODE], + req_per_node, qos_ptr->max_tres_pn_ctld[tres_pos]); rc = false; goto end_it; @@ -2484,11 +2488,6 @@ extern bool acct_policy_job_runnable_post_select( job_ptr->state_reason = WAIT_NO_REASON; } - /* Sanity check, you have to have at least 1 node, this - * really is here to avoid a clang error. */ - if (!tres_req_cnt[TRES_ARRAY_NODE]) - tres_req_cnt[TRES_ARRAY_NODE] = 1; - /* clang needs this memset to avoid a warning */ memset(tres_run_mins, 0, sizeof(tres_run_mins)); memset(tres_usage_mins, 0, sizeof(tres_usage_mins)); -- GitLab