<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/linux.git/include/linux/sched/sd_flags.h, branch v6.12.80</title>
<subtitle>Linux kernel stable tree (mirror)</subtitle>
<id>https://git.radix-linux.su/kernel/linux.git/atom?h=v6.12.80</id>
<link rel='self' href='https://git.radix-linux.su/kernel/linux.git/atom?h=v6.12.80'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/'/>
<updated>2024-02-28T14:43:17+00:00</updated>
<entry>
<title>sched/topology: Rename SD_SHARE_PKG_RESOURCES to SD_SHARE_LLC</title>
<updated>2024-02-28T14:43:17+00:00</updated>
<author>
<name>Alex Shi</name>
<email>alexs@kernel.org</email>
</author>
<published>2024-02-10T11:39:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=54de442747037485da1fc4eca9636287a61e97e3'/>
<id>urn:sha1:54de442747037485da1fc4eca9636287a61e97e3</id>
<content type='text'>
SD_SHARE_PKG_RESOURCES is a bit of a misnomer: its naming suggests that
it's sharing all 'package resources' - while in reality it's specifically
for sharing the LLC only.

Rename it to SD_SHARE_LLC to reduce confusion.

[ mingo: Rewrote the confusing changelog as well. ]

Suggested-by: Valentin Schneider &lt;vschneid@redhat.com&gt;
Signed-off-by: Alex Shi &lt;alexs@kernel.org&gt;
Signed-off-by: Ingo Molnar &lt;mingo@kernel.org&gt;
Reviewed-by: Valentin Schneider &lt;vschneid@redhat.com&gt;
Reviewed-by: Ricardo Neri &lt;ricardo.neri-calderon@linux.intel.com&gt;
Reviewed-by: Barry Song &lt;baohua@kernel.org&gt;
Link: https://lore.kernel.org/r/20240210113924.1130448-5-alexs@kernel.org
</content>
</entry>
<entry>
<title>sched: Add cpus_share_resources API</title>
<updated>2023-10-24T08:38:42+00:00</updated>
<author>
<name>Barry Song</name>
<email>song.bao.hua@hisilicon.com</email>
</author>
<published>2023-10-19T03:33:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=b95303e0aeaf446b65169dd4142cacdaeb7d4c8b'/>
<id>urn:sha1:b95303e0aeaf446b65169dd4142cacdaeb7d4c8b</id>
<content type='text'>
Add cpus_share_resources() API. This is the preparation for the
optimization of select_idle_cpu() on platforms with cluster scheduler
level.

On a machine with clusters cpus_share_resources() will test whether
two cpus are within the same cluster. On a non-cluster machine it
will behaves the same as cpus_share_cache(). So we use "resources"
here for cache resources.

Signed-off-by: Barry Song &lt;song.bao.hua@hisilicon.com&gt;
Signed-off-by: Yicong Yang &lt;yangyicong@hisilicon.com&gt;
Signed-off-by: Peter Zijlstra (Intel) &lt;peterz@infradead.org&gt;
Reviewed-by: Gautham R. Shenoy &lt;gautham.shenoy@amd.com&gt;
Reviewed-by: Tim Chen &lt;tim.c.chen@linux.intel.com&gt;
Reviewed-by: Vincent Guittot &lt;vincent.guittot@linaro.org&gt;
Tested-and-reviewed-by: Chen Yu &lt;yu.c.chen@intel.com&gt;
Tested-by: K Prateek Nayak &lt;kprateek.nayak@amd.com&gt;
Link: https://lkml.kernel.org/r/20231019033323.54147-2-yangyicong@huawei.com
</content>
</entry>
<entry>
<title>sched/topology: Remove SHARED_CHILD from ASYM_PACKING</title>
<updated>2023-05-08T08:58:37+00:00</updated>
<author>
<name>Ricardo Neri</name>
<email>ricardo.neri-calderon@linux.intel.com</email>
</author>
<published>2023-04-06T20:31:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=ca528cc501896a808dc79c3c0544369d23b331c8'/>
<id>urn:sha1:ca528cc501896a808dc79c3c0544369d23b331c8</id>
<content type='text'>
Only x86 and Power7 use ASYM_PACKING. They use it differently.

Power7 has cores of equal priority, but the SMT siblings of a core have
different priorities. Parent scheduling domains do not need (nor have) the
ASYM_PACKING flag. SHARED_CHILD is not needed. Using SHARED_PARENT would
cause the topology debug code to complain.

X86 has cores of different priority, but all the SMT siblings of the core
have equal priority. It needs ASYM_PACKING at the MC level, but not at the
SMT level (it also needs it at upper levels if they have scheduling groups
of different priority). Removing ASYM_PACKING from the SMT domain causes
the topology debug code to complain.

Remove SHARED_CHILD for now. We still need a topology check that satisfies
both architectures.

Suggested-by: Valentin Schneider &lt;vschneid@redhat.com&gt;
Signed-off-by: Ricardo Neri &lt;ricardo.neri-calderon@linux.intel.com&gt;
Signed-off-by: Peter Zijlstra (Intel) &lt;peterz@infradead.org&gt;
Tested-by: Zhang Rui &lt;rui.zhang@intel.com&gt;
Link: https://lore.kernel.org/r/20230406203148.19182-10-ricardo.neri-calderon@linux.intel.com
</content>
</entry>
<entry>
<title>sched/core: Introduce SD_ASYM_CPUCAPACITY_FULL sched_domain flag</title>
<updated>2021-06-24T07:07:50+00:00</updated>
<author>
<name>Beata Michalska</name>
<email>beata.michalska@arm.com</email>
</author>
<published>2021-06-03T14:06:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=2309a05d2abe713f7debc951640b010370c8befb'/>
<id>urn:sha1:2309a05d2abe713f7debc951640b010370c8befb</id>
<content type='text'>
Introducing new, complementary to SD_ASYM_CPUCAPACITY, sched_domain
topology flag, to distinguish between shed_domains where any CPU
capacity asymmetry is detected (SD_ASYM_CPUCAPACITY) and ones where
a full set of CPU capacities is visible to all domain members
(SD_ASYM_CPUCAPACITY_FULL).

With the distinction between full and partial CPU capacity asymmetry,
brought in by the newly introduced flag, the scope of the original
SD_ASYM_CPUCAPACITY flag gets shifted, still maintaining the existing
behaviour when one is detected on a given sched domain, allowing
misfit migrations within sched domains that do not observe full range
of CPU capacities but still do have members with different capacity
values. It loses though it's meaning when it comes to the lowest CPU
asymmetry sched_domain level per-cpu pointer, which is to be now
denoted by SD_ASYM_CPUCAPACITY_FULL flag.

Signed-off-by: Beata Michalska &lt;beata.michalska@arm.com&gt;
Signed-off-by: Peter Zijlstra (Intel) &lt;peterz@infradead.org&gt;
Reviewed-by: Valentin Schneider &lt;valentin.schneider@arm.com&gt;
Reviewed-by: Dietmar Eggemann &lt;dietmar.eggemann@arm.com&gt;
Link: https://lore.kernel.org/r/20210603140627.8409-2-beata.michalska@arm.com
</content>
</entry>
<entry>
<title>sched/topology: Mark SD_NUMA as SDF_NEEDS_GROUPS</title>
<updated>2020-08-19T08:49:50+00:00</updated>
<author>
<name>Valentin Schneider</name>
<email>valentin.schneider@arm.com</email>
</author>
<published>2020-08-17T11:30:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=5f4a1c4ea44728aa80be21dbf3a0469b5ca81d88'/>
<id>urn:sha1:5f4a1c4ea44728aa80be21dbf3a0469b5ca81d88</id>
<content type='text'>
There would be no point in preserving a sched_domain with a single group
just because it has this flag set. Add it to SD_DEGENERATE_GROUPS_MASK.

Signed-off-by: Valentin Schneider &lt;valentin.schneider@arm.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@kernel.org&gt;
Acked-by: Peter Zijlstra &lt;a.p.zijlstra@chello.nl&gt;
Link: https://lore.kernel.org/r/20200817113003.20802-17-valentin.schneider@arm.com
</content>
</entry>
<entry>
<title>sched/topology: Mark SD_OVERLAP as SDF_NEEDS_GROUPS</title>
<updated>2020-08-19T08:49:50+00:00</updated>
<author>
<name>Valentin Schneider</name>
<email>valentin.schneider@arm.com</email>
</author>
<published>2020-08-17T11:30:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=3551e954f5d95faf3dbc340d422da7624658c230'/>
<id>urn:sha1:3551e954f5d95faf3dbc340d422da7624658c230</id>
<content type='text'>
A sched_domain can only have overlapping sched_groups if it has more than
one group.

Signed-off-by: Valentin Schneider &lt;valentin.schneider@arm.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@kernel.org&gt;
Acked-by: Peter Zijlstra &lt;a.p.zijlstra@chello.nl&gt;
Link: https://lore.kernel.org/r/20200817113003.20802-16-valentin.schneider@arm.com
</content>
</entry>
<entry>
<title>sched/topology: Mark SD_ASYM_PACKING as SDF_NEEDS_GROUPS</title>
<updated>2020-08-19T08:49:49+00:00</updated>
<author>
<name>Valentin Schneider</name>
<email>valentin.schneider@arm.com</email>
</author>
<published>2020-08-17T11:30:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=33199b0143daf4778d6301f966cb914d75f122eb'/>
<id>urn:sha1:33199b0143daf4778d6301f966cb914d75f122eb</id>
<content type='text'>
Being a load-balancing flag, it requires 2+ groups to have any effect.

Signed-off-by: Valentin Schneider &lt;valentin.schneider@arm.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@kernel.org&gt;
Acked-by: Peter Zijlstra &lt;a.p.zijlstra@chello.nl&gt;
Link: https://lore.kernel.org/r/20200817113003.20802-15-valentin.schneider@arm.com
</content>
</entry>
<entry>
<title>sched/topology: Mark SD_SERIALIZE as SDF_NEEDS_GROUPS</title>
<updated>2020-08-19T08:49:49+00:00</updated>
<author>
<name>Valentin Schneider</name>
<email>valentin.schneider@arm.com</email>
</author>
<published>2020-08-17T11:29:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=bdb7c802cc0a7e21f5223dc3ce41b7ac220c576e'/>
<id>urn:sha1:bdb7c802cc0a7e21f5223dc3ce41b7ac220c576e</id>
<content type='text'>
There would be no point in preserving a sched_domain with a single group
just because it has this flag set. Add it to SD_DEGENERATE_GROUPS_MASK.

Signed-off-by: Valentin Schneider &lt;valentin.schneider@arm.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@kernel.org&gt;
Acked-by: Peter Zijlstra &lt;a.p.zijlstra@chello.nl&gt;
Link: https://lore.kernel.org/r/20200817113003.20802-14-valentin.schneider@arm.com
</content>
</entry>
<entry>
<title>sched/topology: Mark SD_BALANCE_WAKE as SDF_NEEDS_GROUPS</title>
<updated>2020-08-19T08:49:49+00:00</updated>
<author>
<name>Valentin Schneider</name>
<email>valentin.schneider@arm.com</email>
</author>
<published>2020-08-17T11:29:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=94b858fea1f2246a2fb7f7af21840fd14ced028f'/>
<id>urn:sha1:94b858fea1f2246a2fb7f7af21840fd14ced028f</id>
<content type='text'>
Even if no mainline topology uses this flag, it is a load balancing flag
just like SD_BALANCE_FORK and requires 2+ groups to have any effect.

Signed-off-by: Valentin Schneider &lt;valentin.schneider@arm.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@kernel.org&gt;
Acked-by: Peter Zijlstra &lt;a.p.zijlstra@chello.nl&gt;
Link: https://lore.kernel.org/r/20200817113003.20802-13-valentin.schneider@arm.com
</content>
</entry>
<entry>
<title>sched/topology: Mark SD_PREFER_SIBLING as SDF_NEEDS_GROUPS</title>
<updated>2020-08-19T08:49:49+00:00</updated>
<author>
<name>Valentin Schneider</name>
<email>valentin.schneider@arm.com</email>
</author>
<published>2020-08-17T11:29:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=3a6712c7685352a5d71eaf459a4fddfc3589f018'/>
<id>urn:sha1:3a6712c7685352a5d71eaf459a4fddfc3589f018</id>
<content type='text'>
SD_PREFER_SIBLING is currently considered in sd_parent_degenerate() but not
in sd_degenerate(). It too hinges on load balancing, and thus won't have
any effect when set on a domain with a single group. Add it to
SD_DEGENERATE_GROUPS_MASK.

Signed-off-by: Valentin Schneider &lt;valentin.schneider@arm.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@kernel.org&gt;
Acked-by: Peter Zijlstra &lt;a.p.zijlstra@chello.nl&gt;
Link: https://lore.kernel.org/r/20200817113003.20802-12-valentin.schneider@arm.com
</content>
</entry>
</feed>
