Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 6bab9bee authored by Maria Yu's avatar Maria Yu
Browse files

sched: fair: Add strict skip buddy support



Skip buddy i.e task called yield() is always skipped and the
next entity is selected to run irrespective of the unfairness.

Change-Id: Ia9b9fbe46917152b58dc6406c718eb1cfb3b0fb2
Signed-off-by: default avatarMaria Yu <aiquny@codeaurora.org>
parent 86979a83
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -3939,7 +3939,8 @@ pick_next_entity(struct cfs_rq *cfs_rq, struct sched_entity *curr)
				second = curr;
		}

		if (second && wakeup_preempt_entity(second, left) < 1)
		if (second && (sched_feat(STRICT_SKIP_BUDDY) ||
		    wakeup_preempt_entity(second, left) < 1))
			se = second;
	}

+6 −0
Original line number Diff line number Diff line
@@ -25,6 +25,12 @@ SCHED_FEAT(NEXT_BUDDY, false)
 */
SCHED_FEAT(LAST_BUDDY, true)

/*
 * skip buddy i.e task called yield() is always skipped and the
 * next entity is selected to run irrespective of the vruntime
 */
SCHED_FEAT(STRICT_SKIP_BUDDY, true)

/*
 * Consider buddies to be cache hot, decreases the likelyness of a
 * cache buddy being migrated away, increases cache locality.