]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
crypto: iaa - fix per-node CPU counter reset in rebalance_wq_table()
authorGiovanni Cabiddu <giovanni.cabiddu@intel.com>
Tue, 24 Mar 2026 18:29:05 +0000 (18:29 +0000)
committerHerbert Xu <herbert@gondor.apana.org.au>
Fri, 3 Apr 2026 00:56:11 +0000 (08:56 +0800)
The cpu counter used to compute the IAA device index is reset to zero
at the start of each NUMA node iteration. This causes CPUs on every
node to map starting from IAA index 0 instead of continuing from the
previous node's last index. On multi-node systems, this results in all
nodes mapping their CPUs to the same initial set of IAA devices,
leaving higher-indexed devices unused.

Move the cpu counter initialization before the for_each_node_with_cpus()
loop so that the IAA index computation accumulates correctly across all
nodes.

Fixes: 714ca27e9bf4 ("crypto: iaa - Optimize rebalance_wq_table()")
Signed-off-by: Giovanni Cabiddu <giovanni.cabiddu@intel.com>
Acked-by: Vinicius Costa Gomes <vinicius.gomes@intel.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
drivers/crypto/intel/iaa/iaa_crypto_main.c

index 547abf453d4a2c94aa95f8c36766d354b5a25804..f62b994e18e580677f2d98384ac55b2e9efad5f6 100644 (file)
@@ -906,8 +906,8 @@ static void rebalance_wq_table(void)
                return;
        }
 
+       cpu = 0;
        for_each_node_with_cpus(node) {
-               cpu = 0;
                node_cpus = cpumask_of_node(node);
 
                for_each_cpu(node_cpu, node_cpus) {