[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <aNJs9cLYEeiDr63g@2a01cb069018a810e4ede1071806178f.ipv6.abo.wanadoo.fr>
Date: Tue, 23 Sep 2025 11:48:37 +0200
From: Frederic Weisbecker <frederic@...nel.org>
To: Waiman Long <llong@...hat.com>
Cc: LKML <linux-kernel@...r.kernel.org>, Tejun Heo <tj@...nel.org>,
Michal Hocko <mhocko@...e.com>,
Marco Crivellari <marco.crivellari@...e.com>,
Thomas Gleixner <tglx@...utronix.de>,
Peter Zijlstra <peterz@...radead.org>
Subject: Re: [PATCH 00/33 v2] cpuset/isolation: Honour kthreads preferred
affinity
Le Tue, Sep 02, 2025 at 03:12:04PM -0400, Waiman Long a écrit :
> On 8/29/25 11:47 AM, Frederic Weisbecker wrote:
> > Hi,
> >
> > The kthread code was enhanced lately to provide an infrastructure which
> > manages the preferred affinity of unbound kthreads (node or custom
> > cpumask) against housekeeping constraints and CPU hotplug events.
> >
> > One crucial missing piece is cpuset: when an isolated partition is
> > created, deleted, or its CPUs updated, all the unbound kthreads in the
> > top cpuset are affine to _all_ the non-isolated CPUs, possibly breaking
> > their preferred affinity along the way
> >
> > Solve this with performing the kthreads affinity update from cpuset to
> > the kthreads consolidated relevant code instead so that preferred
> > affinities are honoured.
> >
> > The dispatch of the new cpumasks to workqueues and kthreads is performed
> > by housekeeping, as per the nice Tejun's suggestion.
> >
> > As a welcome side effect, HK_TYPE_DOMAIN then integrates both the set
> > from isolcpus= and cpuset isolated partitions. Housekeeping cpumasks are
> > now modifyable with specific synchronization. A big step toward making
> > nohz_full= also mutable through cpuset in the future.
> >
> > Changes since v1:
> >
> > - Drop the housekeeping lock and use RCU to synchronize housekeeping
> > against cpuset changes.
> >
> > - Add housekeeping documentation
> >
> > - Simplify CPU hotplug handling
> >
> > - Collect ack from Shakeel Butt
> >
> > - Handle sched/arm64's task fallback cpumask move to HK_TYPE_DOMAIN
> >
> > - Fix genirq kthreads affinity
> >
> > - Add missing kernel doc
> >
> > git://git.kernel.org/pub/scm/linux/kernel/git/frederic/linux-dynticks.git
> > kthread/core-v2
> >
> > HEAD: 092784f7df0aa6415c91ae5edc1c1a72603b5c50
> > Thanks,
> > Frederic
>
> I have finally finished the review of this long patch series. I like your
> current approach and I will adopt my RFC patch series to be based on yours.
> However, I do have comments and is looking forward to your response.
>
> Thanks,
> Longman
Thanks a lot for the detailed reviews, I'll try to address all that and repost!
--
Frederic Weisbecker
SUSE Labs
Powered by blists - more mailing lists