Re: [PATCH v3 1/4] sched/fair: add SD_CLUSTER in comments

From: kuiliang Shi
Date: Tue Feb 06 2024 - 03:56:18 EST




On 2/6/24 10:46 AM, Ricardo Neri wrote:
> On Fri, Feb 02, 2024 at 03:27:32PM +0100, Valentin Schneider wrote:
>>
>> Subject nit: the prefix should be sched/topology
>>
>> On 01/02/24 19:54, alexs@xxxxxxxxxx wrote:
>>> From: Alex Shi <alexs@xxxxxxxxxx>
>>>
>>> The description of SD_CLUSTER is missing. Add it.
>>>
>>> Signed-off-by: Alex Shi <alexs@xxxxxxxxxx>
>>> To: Ricardo Neri <ricardo.neri-calderon@xxxxxxxxxxxxxxx>
>>> To: Valentin Schneider <vschneid@xxxxxxxxxx>
>>> To: Vincent Guittot <vincent.guittot@xxxxxxxxxx>
>>> To: Juri Lelli <juri.lelli@xxxxxxxxxx>
>>> To: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
>>> To: Ingo Molnar <mingo@xxxxxxxxxx>
>>> ---
>>> kernel/sched/topology.c | 1 +
>>> 1 file changed, 1 insertion(+)
>>>
>>> diff --git a/kernel/sched/topology.c b/kernel/sched/topology.c
>>> index 10d1391e7416..8b45f16a1890 100644
>>> --- a/kernel/sched/topology.c
>>> +++ b/kernel/sched/topology.c
>>> @@ -1554,6 +1554,7 @@ static struct cpumask ***sched_domains_numa_masks;
>>> * function:
>>> *
>>> * SD_SHARE_CPUCAPACITY - describes SMT topologies
>>> + * SD_CLUSTER - describes CPU Cluster topologies
>>
>> So I know this is the naming we've gone for the "Cluster" naming, but this
>> comment isn't really explaining anything.
>>
>> include/linux/sched/sd_flags.h has a bit more info already:
>> * Domain members share CPU cluster (LLC tags or L2 cache)
>
> I also thought of this, but I didn't want to suggest to repeat in topolog.c
> what is described in sd_flags.h.
>
> Maybe it is better to remove the descriptions of all flags here and instead
> direct the reader to sd_flags.h?

yes, good idea for getting their meaning directly from the header file.
So is it fine for next sending?

sched/fair: remove duplicate comments for SD_ flags

Originally, it missed SD_CLUSTER flag description, but comparing to copy
the flags meaning from sd_flags.h, reader is better to get info from
there.

Keep SD_ASYM_PACKING unchange for a point from another way.

Signed-off-by: Alex Shi <alexs@xxxxxxxxxx>
To: Ricardo Neri <ricardo.neri-calderon@xxxxxxxxxxxxxxx>
To: Valentin Schneider <vschneid@xxxxxxxxxx>
To: Vincent Guittot <vincent.guittot@xxxxxxxxxx>
To: Juri Lelli <juri.lelli@xxxxxxxxxx>
To: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
To: Ingo Molnar <mingo@xxxxxxxxxx>

diff --git a/kernel/sched/topology.c b/kernel/sched/topology.c
index 10d1391e7416..96a24bf954ad 100644
--- a/kernel/sched/topology.c
+++ b/kernel/sched/topology.c
@@ -1551,11 +1551,7 @@ static struct cpumask ***sched_domains_numa_masks;
*
* These flags are purely descriptive of the topology and do not prescribe
* behaviour. Behaviour is artificial and mapped in the below sd_init()
- * function:
- *
- * SD_SHARE_CPUCAPACITY - describes SMT topologies
- * SD_SHARE_PKG_RESOURCES - describes shared caches
- * SD_NUMA - describes NUMA topologies
+ * function, for details in include/linux/sched/sd_flags.h:
*
* Odd one out, which beside describing the topology has a quirk also
* prescribes the desired behaviour that goes along with it:
>
>>
>> I had to go through a bit of git history to remember what the CLUSTER thing
>> was about, how about this:
>>
>> * SD_CLUSTER - describes shared shared caches, cache tags or busses
>
> AFAIK, this describes a subset of CPUs in the package that share a
> resource, likely L2 cache.
>
>> * SD_SHARE_PKG_RESOURCES - describes shared LLC cache
>>
>> And looking at this it would make sense to:
>> rename SD_CLUSTER into SD_SHARE_PKG_RESOURCES
>
> but not all CPUs in the package share the resource
>
>> rename SD_SHARE_PKG_RESOURCES into SD_SHARE_LLC
>> but that's another topic...
>>