View | Details | Raw Unified | Return to ticket 7442 | Differences between
and this patch

Collapse All | Expand All

(-)a/src/plugins/sched/backfill/backfill.c (-2 / +16 lines)
Lines 1516-1521 static int _attempt_backfill(void) Link Here
1516
	time_t qos_blocked_until = 0, qos_part_blocked_until = 0;
1516
	time_t qos_blocked_until = 0, qos_part_blocked_until = 0;
1517
	time_t tmp_preempt_start_time = 0;
1517
	time_t tmp_preempt_start_time = 0;
1518
	bool tmp_preempt_in_progress = false;
1518
	bool tmp_preempt_in_progress = false;
1519
	bitstr_t *tmp_bitmap = NULL, *next_bitmap = NULL, *current_bitmap= NULL;
1519
	/* QOS Read lock */
1520
	/* QOS Read lock */
1520
	assoc_mgr_lock_t qos_read_lock =
1521
	assoc_mgr_lock_t qos_read_lock =
1521
		{ NO_LOCK, NO_LOCK, READ_LOCK, NO_LOCK,
1522
		{ NO_LOCK, NO_LOCK, READ_LOCK, NO_LOCK,
Lines 2066-2075 next_task: Link Here
2066
		bit_and_not(avail_bitmap, bf_ignore_node_bitmap);
2067
		bit_and_not(avail_bitmap, bf_ignore_node_bitmap);
2067
		filter_by_node_owner(job_ptr, avail_bitmap);
2068
		filter_by_node_owner(job_ptr, avail_bitmap);
2068
		filter_by_node_mcs(job_ptr, mcs_select, avail_bitmap);
2069
		filter_by_node_mcs(job_ptr, mcs_select, avail_bitmap);
2070
		tmp_bitmap = bit_copy(avail_bitmap);
2069
		for (j = 0; ; ) {
2071
		for (j = 0; ; ) {
2070
			if ((node_space[j].end_time > start_res) &&
2072
			if ((node_space[j].end_time > start_res) &&
2071
			     node_space[j].next && (later_start == 0))
2073
			     node_space[j].next && (later_start == 0)) {
2072
				later_start = node_space[j].end_time;
2074
				int tmp = node_space[j].next;
2075
				next_bitmap = bit_copy(tmp_bitmap);
2076
				current_bitmap = bit_copy(avail_bitmap);
2077
				bit_and(next_bitmap,
2078
					node_space[tmp].avail_bitmap);
2079
				bit_and(current_bitmap,
2080
					node_space[j].avail_bitmap);
2081
				if (!bit_super_set(next_bitmap,current_bitmap))
2082
					later_start = node_space[j].end_time;
2083
				FREE_NULL_BITMAP(next_bitmap);
2084
				FREE_NULL_BITMAP(current_bitmap);
2085
			}
2073
			if (node_space[j].end_time <= start_res)
2086
			if (node_space[j].end_time <= start_res)
2074
				;
2087
				;
2075
			else if (node_space[j].begin_time <= end_time) {
2088
			else if (node_space[j].begin_time <= end_time) {
Lines 2080-2085 next_task: Link Here
2080
			if ((j = node_space[j].next) == 0)
2093
			if ((j = node_space[j].next) == 0)
2081
				break;
2094
				break;
2082
		}
2095
		}
2096
		FREE_NULL_BITMAP(tmp_bitmap);
2083
		if (resv_end && (++resv_end < window_end) &&
2097
		if (resv_end && (++resv_end < window_end) &&
2084
		    ((later_start == 0) || (resv_end < later_start))) {
2098
		    ((later_start == 0) || (resv_end < later_start))) {
2085
			later_start = resv_end;
2099
			later_start = resv_end;

Return to ticket 7442