diff --git a/src/slurmctld/step_mgr.c b/src/slurmctld/step_mgr.c
index abfe49c9b7233c8461f92425f0be1417f41c8571..33329cb56e991a66d12f92e04342d5f3556ebffc 100644
--- a/src/slurmctld/step_mgr.c
+++ b/src/slurmctld/step_mgr.c
@@ -1402,13 +1402,14 @@ _pick_step_nodes (struct job_record  *job_ptr,
 							 cpus_needed,
 							 usable_cpu_cnt);
 			if (node_tmp == NULL) {
-				int avail_node_cnt = bit_set_count(nodes_avail);
-				avail_node_cnt += nodes_picked_cnt;
-				if (step_spec->max_nodes <= avail_node_cnt) {
+				/* Count of nodes already picked for step */
+				int pick_node_cnt = bit_set_count(nodes_avail);
+				pick_node_cnt += nodes_picked_cnt;
+				if (step_spec->max_nodes <= pick_node_cnt) {
 					*return_code =
 						ESLURM_TOO_MANY_REQUESTED_CPUS;
 				} else if (step_spec->min_nodes <=
-					   (avail_node_cnt+mem_blocked_nodes)) {
+					   (pick_node_cnt+mem_blocked_nodes)) {
 					*return_code = ESLURM_NODES_BUSY;
 				} else if (!bit_super_set(job_ptr->node_bitmap,
 							  up_node_bitmap)) {