Re: [PATCH 2/2] sched/isolation: Add cpu_is_isolated() API

From: Waiman Long
Date: Mon Feb 06 2023 - 11:52:29 EST


On 2/6/23 10:47, Michal Koutný wrote:
Hello.

On Fri, Feb 03, 2023 at 10:53:46PM -0500, Waiman Long <longman@xxxxxxxxxx> wrote:
CPUs in an isolated cpuset partition is similar to HK_TYPE_DOMAIN CPUs as
load balancing is disabled. I can add an API to access the cpumask and add
to this API. However, that list is dynamic as it can be changed at run time.
Will that be a problem?
I can see a problem already -- as a CPU can be dynamically switched to
"isolated" mode so should all dependent operations support that (switch)
too, i.e. the CPUs local PCP caches would have to be drained when the
CPU enters isolation.
I see the long term goal is to have more isolation capability to be done dynamically. However, we are not there yet. There is still a lot of work to do to achieve that.

Or should that be used separately?
It'd be nice to have both (cpuset and cmdline flags) eventually unified.

Alas, it only leads me conservatively to:

#ifndef CONFIG_CPUSETS
// the proposed implementaion
else
static inline bool cpu_is_isolated(int cpu) {
return true;
}
#endif

That is too conservative from my point of view. We can have further discussion when a patch is ready.

Cheers,
Longman