Messages in this thread Patch in this message | | | From | Yury Norov <> | Subject | [PATCH v2 2/6] lib/group_cpus: relax atomicity requirement in grp_spread_init_one() | Date | Thu, 7 Dec 2023 12:38:56 -0800 |
| |
Because nmsk and irqmsk are stable, extra atomicity is not required.
Signed-off-by: Yury Norov <yury.norov@gmail.com> --- lib/group_cpus.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-)
diff --git a/lib/group_cpus.c b/lib/group_cpus.c index ee272c4cefcc..8eb18c6bbf3b 100644 --- a/lib/group_cpus.c +++ b/lib/group_cpus.c @@ -24,8 +24,8 @@ static void grp_spread_init_one(struct cpumask *irqmsk, struct cpumask *nmsk, if (cpu >= nr_cpu_ids) return; - cpumask_clear_cpu(cpu, nmsk); - cpumask_set_cpu(cpu, irqmsk); + __cpumask_clear_cpu(cpu, nmsk); + __cpumask_set_cpu(cpu, irqmsk); cpus_per_grp--; /* If the cpu has siblings, use them first */ @@ -34,9 +34,8 @@ static void grp_spread_init_one(struct cpumask *irqmsk, struct cpumask *nmsk, sibl = cpumask_next(sibl, siblmsk); if (sibl >= nr_cpu_ids) break; - if (!cpumask_test_and_clear_cpu(sibl, nmsk)) - continue; - cpumask_set_cpu(sibl, irqmsk); + __cpumask_clear_cpu(sibl, nmsk); + __cpumask_set_cpu(sibl, irqmsk); cpus_per_grp--; } } -- 2.40.1
| |