linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] sched/fair: Update stale comments referencing last/skip buddy
@ 2025-08-05 12:23 Zhongqiu Han
  2025-08-07  6:21 ` Madadi Vineeth Reddy
  0 siblings, 1 reply; 2+ messages in thread
From: Zhongqiu Han @ 2025-08-05 12:23 UTC (permalink / raw)
  To: mingo, peterz, juri.lelli, vincent.guittot, dietmar.eggemann,
	rostedt, bsegall, mgorman, vschneid
  Cc: linux-kernel, quic_zhonhan

Since the integration of EEVDF, the last/skip buddy scheduling features
have been removed. This patch updates outdated comments that still
reference these legacy behaviors to avoid inconsistencies.

Fixes: 5e963f2bd465 ("sched/fair: Commit to EEVDF")
Signed-off-by: Zhongqiu Han <quic_zhonhan@quicinc.com>
---
 kernel/sched/fair.c | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c
index b173a059315c..b3618aa075ec 100644
--- a/kernel/sched/fair.c
+++ b/kernel/sched/fair.c
@@ -5500,11 +5500,11 @@ set_next_entity(struct cfs_rq *cfs_rq, struct sched_entity *se)
 static int dequeue_entities(struct rq *rq, struct sched_entity *se, int flags);
 
 /*
- * Pick the next process, keeping these things in mind, in this order:
- * 1) keep things fair between processes/task groups
- * 2) pick the "next" process, since someone really wants that to run
- * 3) pick the "last" process, for cache locality
- * 4) do not run the "skip" process, if something else is available
+ * Pick the next sched_entity to run from cfs_rq.
+ *
+ * Prefer ->next buddy if sched_feat(PICK_BUDDY) is enabled and it's eligible,
+ * to improve cache locality.
+ * Otherwise, pick the entity via EEVDF for fairness and latency control.
  */
 static struct sched_entity *
 pick_next_entity(struct rq *rq, struct cfs_rq *cfs_rq)
@@ -8673,9 +8673,9 @@ static void check_preempt_wakeup_fair(struct rq *rq, struct task_struct *p, int
 	 *
 	 * Note: this also catches the edge-case of curr being in a throttled
 	 * group (e.g. via set_curr_task), since update_curr() (in the
-	 * enqueue of curr) will have resulted in resched being set.  This
-	 * prevents us from potentially nominating it as a false LAST_BUDDY
-	 * below.
+	 * enqueue of curr) will have resulted in resched being set. This
+	 * prevents further preemption handling, including checks and potential
+	 * reschedule triggering.
 	 */
 	if (test_tsk_need_resched(rq->curr))
 		return;
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH] sched/fair: Update stale comments referencing last/skip buddy
  2025-08-05 12:23 [PATCH] sched/fair: Update stale comments referencing last/skip buddy Zhongqiu Han
@ 2025-08-07  6:21 ` Madadi Vineeth Reddy
  0 siblings, 0 replies; 2+ messages in thread
From: Madadi Vineeth Reddy @ 2025-08-07  6:21 UTC (permalink / raw)
  To: Zhongqiu Han
  Cc: mingo, peterz, juri.lelli, vincent.guittot, dietmar.eggemann,
	rostedt, bsegall, mgorman, vschneid, Adam Li, linux-kernel

Hi Zhongqiu,

On 05/08/25 17:53, Zhongqiu Han wrote:
> Since the integration of EEVDF, the last/skip buddy scheduling features
> have been removed. This patch updates outdated comments that still
> reference these legacy behaviors to avoid inconsistencies.
> 
> Fixes: 5e963f2bd465 ("sched/fair: Commit to EEVDF")
> Signed-off-by: Zhongqiu Han <quic_zhonhan@quicinc.com>
> ---
>  kernel/sched/fair.c | 16 ++++++++--------
>  1 file changed, 8 insertions(+), 8 deletions(-)
> 
> diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c
> index b173a059315c..b3618aa075ec 100644
> --- a/kernel/sched/fair.c
> +++ b/kernel/sched/fair.c
> @@ -5500,11 +5500,11 @@ set_next_entity(struct cfs_rq *cfs_rq, struct sched_entity *se)
>  static int dequeue_entities(struct rq *rq, struct sched_entity *se, int flags);
>  
>  /*
> - * Pick the next process, keeping these things in mind, in this order:
> - * 1) keep things fair between processes/task groups
> - * 2) pick the "next" process, since someone really wants that to run
> - * 3) pick the "last" process, for cache locality
> - * 4) do not run the "skip" process, if something else is available
> + * Pick the next sched_entity to run from cfs_rq.
> + *
> + * Prefer ->next buddy if sched_feat(PICK_BUDDY) is enabled and it's eligible,
> + * to improve cache locality.
> + * Otherwise, pick the entity via EEVDF for fairness and latency control.
>   */
>  static struct sched_entity *
>  pick_next_entity(struct rq *rq, struct cfs_rq *cfs_rq)
> @@ -8673,9 +8673,9 @@ static void check_preempt_wakeup_fair(struct rq *rq, struct task_struct *p, int
>  	 *
>  	 * Note: this also catches the edge-case of curr being in a throttled
>  	 * group (e.g. via set_curr_task), since update_curr() (in the
> -	 * enqueue of curr) will have resulted in resched being set.  This
> -	 * prevents us from potentially nominating it as a false LAST_BUDDY
> -	 * below.
> +	 * enqueue of curr) will have resulted in resched being set. This
> +	 * prevents further preemption handling, including checks and potential
> +	 * reschedule triggering.
>  	 */
>  	if (test_tsk_need_resched(rq->curr))
>  		return;

Sent similar patch here https://lore.kernel.org/lkml/20250314090128.25141-1-vineethr@linux.ibm.com/
[PATCH] sched/fair: Remove stale references to LAST_BUDDY and SKIP_BUDDY

Thanks,
Madadi Vineeth Reddy

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2025-08-07  6:22 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-08-05 12:23 [PATCH] sched/fair: Update stale comments referencing last/skip buddy Zhongqiu Han
2025-08-07  6:21 ` Madadi Vineeth Reddy

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).