diff --git a/src/common/dist_tasks.c b/src/common/dist_tasks.c index cafa39da8221249a9d6e1eb163969bea3c0c82cb..b272c4b41ea9956b6a09d382f98fe2f17463a507 100644 --- a/src/common/dist_tasks.c +++ b/src/common/dist_tasks.c @@ -401,7 +401,7 @@ extern int task_layout(slurm_step_layout_t *step_layout) slurm_conf_get_addr(step_layout->host[i], &step_layout->node_addr[i]); - debug("host %d = %s", i, step_layout->host[i]); + debug2("host %d = %s", i, step_layout->host[i]); step_layout->cpus[i] = step_layout->cpus_per_node[cpu_inx]; if ((++cpu_cnt) >= step_layout->cpu_count_reps[cpu_inx]) { /* move to next record */ @@ -454,10 +454,10 @@ static int _task_layout_hostfile(slurm_step_layout_t *step_layout) hostlist_t job_alloc_hosts = NULL; hostlist_t step_alloc_hosts = NULL; - debug("job list is %s", step_layout->nodes); + debug2("job list is %s", step_layout->nodes); job_alloc_hosts = hostlist_create(step_layout->nodes); itr = hostlist_iterator_create(job_alloc_hosts); - debug("list is %s", step_layout->arbitrary_nodes); + debug2("list is %s", step_layout->arbitrary_nodes); step_alloc_hosts = hostlist_create(step_layout->arbitrary_nodes); if(hostlist_count(step_alloc_hosts) != step_layout->num_tasks) { error("Asked for %d tasks have %d in the nodelist. " diff --git a/src/slurmctld/step_mgr.c b/src/slurmctld/step_mgr.c index ca2d0e3cee4b2ec1d0bca9fdabfbe623fbd58b0f..d3770763a1cf897635e2b0709139707d86c62287 100644 --- a/src/slurmctld/step_mgr.c +++ b/src/slurmctld/step_mgr.c @@ -688,14 +688,14 @@ step_create(job_step_create_request_msg_t *step_specs, /* set the step_record values */ /* Here is where the node list is set for the job */ if(step_specs->node_list - && step_specs->task_dist == SLURM_DIST_ARBITRARY) + && step_specs->task_dist == SLURM_DIST_ARBITRARY) { step_ptr->step_node_list = xstrdup(step_specs->node_list); - else { + xfree(step_specs->node_list); + } else { step_ptr->step_node_list = bitmap2node_name(nodeset); step_specs->node_list = xstrdup(step_ptr->step_node_list); } - //xfree(step_specs->node_list); - //step_specs->node_list = bitmap2node_name(nodeset); + step_specs->node_list = bitmap2node_name(nodeset); step_ptr->step_node_bitmap = nodeset; step_ptr->cyclic_alloc = (uint16_t) (step_specs->task_dist == SLURM_DIST_CYCLIC); @@ -742,6 +742,12 @@ step_create(job_step_create_request_msg_t *step_specs, delete_step_record (job_ptr, step_ptr->step_id); return ESLURM_INTERCONNECT_FAILURE; } + /* FIXME: this var should be removed all together once the + switch_build_jobinfo is rewritten to take the step_layout + structure */ + xfree(step_ptr->step_node_list); + step_ptr->step_node_list = + xstrdup(step_ptr->step_layout->nodes); } if (checkpoint_alloc_jobinfo (&step_ptr->check_job) < 0) fatal ("step_create: checkpoint_alloc_jobinfo error");