From 1284f2f2a9728560789a017356593ee58860418c Mon Sep 17 00:00:00 2001 From: Moe Jette <jette1@llnl.gov> Date: Fri, 4 Jan 2008 00:47:07 +0000 Subject: [PATCH] move AND of will-run bitmap with available nodes to sched/wiki2 from select/linear --- src/plugins/sched/wiki2/job_will_run.c | 10 ++++++---- src/plugins/select/linear/select_linear.c | 1 - 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/src/plugins/sched/wiki2/job_will_run.c b/src/plugins/sched/wiki2/job_will_run.c index e4d401aa789..502f76a4ee9 100644 --- a/src/plugins/sched/wiki2/job_will_run.c +++ b/src/plugins/sched/wiki2/job_will_run.c @@ -140,8 +140,10 @@ static char * _will_run_test(uint32_t jobid, char *node_list, return NULL; } - if ((node_list == NULL) || - (node_name2bitmap(node_list, false, &avail_bitmap) != 0)) { + if ((node_list == NULL) || (node_list[0] == '\0')) { + /* assume all nodes available to job for testing */ + avail_bitmap = bit_copy(avail_node_bitmap); + } else if (node_name2bitmap(node_list, false, &avail_bitmap) != 0) { *err_code = -700; *err_msg = "Invalid AVAIL_NODES value"; error("wiki: Attempt to set invalid available node " @@ -149,8 +151,8 @@ static char * _will_run_test(uint32_t jobid, char *node_list, jobid, node_list); return NULL; } else { - /* assume all nodes available to job for testing */ - avail_bitmap = bit_copy(avail_node_bitmap); + /* Only consider nodes that are not DOWN or DRAINED */ + bit_and(avail_bitmap, avail_node_bitmap); } min_nodes = MAX(job_ptr->details->min_nodes, part_ptr->min_nodes); diff --git a/src/plugins/select/linear/select_linear.c b/src/plugins/select/linear/select_linear.c index 05a7d8c66e1..be95f078446 100644 --- a/src/plugins/select/linear/select_linear.c +++ b/src/plugins/select/linear/select_linear.c @@ -1275,7 +1275,6 @@ static int _will_run_test(struct job_record *job_ptr, bitstr_t *bitmap, bitstr_t *orig_map; int i, rc = SLURM_ERROR; - bit_and(bitmap, avail_node_bitmap); orig_map = bit_copy(bitmap); /* Try to run with currently available nodes */ -- GitLab