[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <b2788740ecc02ae70706506468bb71a1e23180cc.camel@redhat.com>
Date: Fri, 01 Aug 2025 18:03:08 +0200
From: Gabriele Monaco <gmonaco@...hat.com>
To: Waiman Long <llong@...hat.com>
Cc: linux-kernel@...r.kernel.org, Anna-Maria Behnsen
<anna-maria@...utronix.de>, Frederic Weisbecker <frederic@...nel.org>,
Thomas Gleixner <tglx@...utronix.de>
Subject: Re: [PATCH v9 7/8] cgroup/cpuset: Fail if isolated and nohz_full
don't leave any housekeeping
On Thu, 2025-07-31 at 11:39 -0400, Waiman Long wrote:
>
> On 7/30/25 9:11 AM, Gabriele Monaco wrote:
> > +static bool isolcpus_nohz_conflict(struct cpumask *new_cpus)
> > +{
> > + cpumask_var_t full_hk_cpus;
> > + int res = false;
> > +
> > + if (!housekeeping_enabled(HK_TYPE_KERNEL_NOISE))
> > + return false;
> > +
> > + if (!alloc_cpumask_var(&full_hk_cpus, GFP_KERNEL))
> > + return true;
> > +
> > + cpumask_and(full_hk_cpus,
> > housekeeping_cpumask(HK_TYPE_KERNEL_NOISE),
> > + housekeeping_cpumask(HK_TYPE_DOMAIN));
> > + cpumask_and(full_hk_cpus, full_hk_cpus, cpu_online_mask);
> > + if (!cpumask_weight_andnot(full_hk_cpus, new_cpus))
> > + res = true;
> > +
> > + free_cpumask_var(full_hk_cpus);
> > + return res;
> > +}
>
> First of all, isolated_cpus currently include those CPUs excluded
> from boot time isolcpus=domain setting, but it also include new
> isolated
> cpus created by used by cpuset isolated partitions. Your current
> isolcpus_nohz_conflicts() does not check isolated_cpus which I think
> is incomplete.
Right, good point! Thanks for the review.
Somehow it was working fine with cpuset+isolcpus, but doesn't work if I
have multiple cpusets.
Thanks,
Gabriele
Powered by blists - more mailing lists