From: Chen Yu <yu.c.chen@intel.com>
To: Vincent Guittot <vincent.guittot@linaro.org>
Cc: <mingo@redhat.com>, <peterz@infradead.org>,
<juri.lelli@redhat.com>, <dietmar.eggemann@arm.com>,
<rostedt@goodmis.org>, <bsegall@google.com>, <mgorman@suse.de>,
<vschneid@redhat.com>, <kprateek.nayak@amd.com>,
<linux-kernel@vger.kernel.org>, <lukasz.luba@arm.com>,
<rafael@kernel.org>, <linux-pm@vger.kernel.org>, <tj@kernel.org>,
<void@manifault.com>, <arighi@nvidia.com>, <changwoo@igalia.com>,
<sched-ext@lists.linux.dev>, <qyousef@layalina.io>,
<christian.loehle@arm.com>, <pierre.gondois@arm.com>,
<sshegde@linux.ibm.com>, <chen.yu@linux.dev>
Subject: Re: [PATCH 07/18] sched/fair: Add push task mechanism for fair
Date: Tue, 13 Oct 2026 13:17:13 +0800 [thread overview]
Message-ID: <as2-2b417B8ZaFdO@chenyu-dev> (raw)
In-Reply-To: <CAKfTPtAy-n5_Dj-9x2qxcu=i7eo9DmZ2aaxig_nbyNDbP2m_Mw@mail.gmail.com>
On Mon, Oct 12, 2026 at 11:18:04AM +0200, Vincent Guittot wrote:
> On Sat, 10 Oct 2026 at 17:55, Chen Yu <yu.c.chen@intel.com> wrote:
> >
> > On Fri, Oct 09, 2026 at 04:31:40PM +0200, Vincent Guittot wrote:
> > > On Wed, 7 Oct 2026 at 04:59, Chen Yu <yu.c.chen@intel.com> wrote:
> >
> > [ ... ]
> >
> > > > @@ -10414,6 +10441,15 @@ select_task_rq_fair(struct task_struct *p, int prev_cpu, int select_flags)
> > > > if (select_flags & WF_TTWU)
> > > > want_affine = !wake_wide(p) && cpumask_test_cpu(cpu, p->cpus_ptr);
> > > >
> > > > + /*
> > > > + * Only a push triggered by cache aware scheduling will push the
> > > > + * task towards its preferred LLC. Pushes for other reasons, like short
> > > > + * slice task, uses the default push strategy.
> > > > + */
> > > > + push_cpu = -1;
> > > > + if (select_flags & WF_RQ_PUSH)
> > > > + push_cpu = check_pushable_cache_task(prev_cpu, p);
> > >
> > > Is there any reason that you do'nt want to migrate the task at wakeup too ?
> > >
> >
> > The wakeup path seems to be too fast to aggregate the tasks, so that multiple
> > CPUs try to migrate the task to the same LLC without synchronization - a task
> > bouncing issue was observed when cache-aware migration was enabled in the wakeup
> > path. We can double-check in the latest kernel to see if that is still the case,
> > and to see if we can mitigate that.
>
> Yeah, the goal is to use the same select function for all events;
> wakeup and push events should be seen as the same event
>
> Also you should separate the check for adding the task in the pushable
> list in fair_check_pushable_task from the decision to select pref_cpu
> in select_task_rq_fair. The check added in fair_check_pushable_task is
> mainly used to decide if it worth going deeper in the decision with
> select_task_rq_fair
>
Do you mean the check in fair_check_pushable_task() should be lightweight
and let select_task_rq_fair() make the decision as to which CPU the task
should be migrated to, because the former does not hold pi_lock and thus
should be best-effort? OK, let me adjust the code.
thanks,
Chenyu
> Vincent
>
> >
> > thanks,
> > Chenyu
next prev parent reply other threads:[~2026-10-13 5:30 UTC|newest]
Thread overview: 50+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-10-02 15:43 [PATCH 00/18 v2] Improving latency of short slice tasks Vincent Guittot
2026-10-02 15:43 ` [PATCH 01/18 v2] sched/eevdf: Decay positive lag of sleeping entities Vincent Guittot
2026-10-02 15:43 ` [PATCH 02/18] sched/eevdf: Reset lag when waking up on idle cpu Vincent Guittot
2026-10-04 17:30 ` Kayra Cizmeci
2026-10-09 13:35 ` Vincent Guittot
2026-10-02 15:44 ` [PATCH 03/18 v2] sched/eevdf: Add per cpu cached min_slice Vincent Guittot
2026-10-02 15:44 ` [PATCH 04/18 v2] sched/eevdf: Compare min slice during wake_affine Vincent Guittot
2026-10-05 15:58 ` Kayra Cizmeci
2026-10-02 15:44 ` [PATCH 05/18 v2] sched/eevdf: Add min slice check when selecting CPU Vincent Guittot
2026-10-04 19:18 ` Kayra Cizmeci
2026-10-02 15:44 ` [PATCH 06/18 v2] sched/fair: Prepare select_task_rq_fair() to be called for new cases Vincent Guittot
2026-10-06 22:25 ` Tim Chen
2026-10-09 13:36 ` Vincent Guittot
2026-10-02 15:44 ` [PATCH 07/18] sched/fair: Add push task mechanism for fair Vincent Guittot
2026-10-07 2:45 ` Chen Yu
2026-10-09 13:38 ` Vincent Guittot
2026-10-09 14:31 ` Vincent Guittot
2026-10-10 15:42 ` Chen Yu
2026-10-12 9:18 ` Vincent Guittot
2026-10-13 5:17 ` Chen Yu [this message]
2026-10-12 14:06 ` Shrikanth Hegde
2026-10-02 15:44 ` [PATCH 08/18] sched/fair: Optimize " Vincent Guittot
2026-10-02 15:44 ` [PATCH 09/18 v2] sched/core: Add rq flag to tick parameters Vincent Guittot
2026-10-02 15:44 ` [PATCH 10/18 v2] sched/fair: Add force push task mechanism for fair Vincent Guittot
2026-10-06 19:24 ` Kayra Cizmeci
2026-10-09 14:01 ` Vincent Guittot
2026-10-09 5:53 ` Kayra Cizmeci
2026-10-09 14:04 ` Vincent Guittot
2026-10-09 14:47 ` Vincent Guittot
2026-10-11 17:40 ` Kayra Cizmeci
2026-10-12 8:18 ` Vincent Guittot
2026-10-12 13:40 ` Kayra Cizmeci
2026-10-02 15:44 ` [PATCH 11/18 v2] sched/fair: Support not wakeup case in select_idle_sibling Vincent Guittot
2026-10-07 17:55 ` Tim Chen
2026-10-09 14:06 ` Vincent Guittot
2026-10-02 15:44 ` [PATCH 12/18 v2] sched/eevdf: Try to push short slice task on a better CPU Vincent Guittot
2026-10-02 15:44 ` [PATCH 13/18 v2] sched/eevdf: Push short slice task that are not picked Vincent Guittot
2026-10-02 15:44 ` [PATCH 14/18 v2] sched/fair: Enable push task for preempt short Vincent Guittot
2026-10-09 11:16 ` Kayra Cizmeci
2026-10-09 14:07 ` Vincent Guittot
2026-10-02 15:44 ` [PATCH 15/18 v2] energy model: Add a get previous state function Vincent Guittot
2026-10-02 15:44 ` [PATCH 16/18 v2] sched/fair: Rework feec() to use cost instead of spare capacity Vincent Guittot
2026-10-02 15:44 ` [PATCH 17/18 v2] energy model: Remove unused em_cpu_energy() Vincent Guittot
2026-10-02 15:44 ` [PATCH 18/18 v2] sched/fair: Take into account slice in EAS Vincent Guittot
2026-10-07 14:36 ` Kayra Cizmeci
2026-10-08 22:53 ` Tim Chen
2026-10-09 6:31 ` Kayra Cizmeci
2026-10-09 14:17 ` Vincent Guittot
2026-10-08 19:12 ` [PATCH 00/18 v2] Improving latency of short slice tasks Kayra Cizmeci
2026-10-09 14:56 ` Vincent Guittot
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=as2-2b417B8ZaFdO@chenyu-dev \
--to=yu.c.chen@intel.com \
--cc=arighi@nvidia.com \
--cc=bsegall@google.com \
--cc=changwoo@igalia.com \
--cc=chen.yu@linux.dev \
--cc=christian.loehle@arm.com \
--cc=dietmar.eggemann@arm.com \
--cc=juri.lelli@redhat.com \
--cc=kprateek.nayak@amd.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@vger.kernel.org \
--cc=lukasz.luba@arm.com \
--cc=mgorman@suse.de \
--cc=mingo@redhat.com \
--cc=peterz@infradead.org \
--cc=pierre.gondois@arm.com \
--cc=qyousef@layalina.io \
--cc=rafael@kernel.org \
--cc=rostedt@goodmis.org \
--cc=sched-ext@lists.linux.dev \
--cc=sshegde@linux.ibm.com \
--cc=tj@kernel.org \
--cc=vincent.guittot@linaro.org \
--cc=void@manifault.com \
--cc=vschneid@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.