Commit 25680c1f authored by Guoqing Jiang's avatar Guoqing Jiang Committed by Leon Romanovsky

RDMA/siw: Add one parameter to siw_destroy_cpulist

With that we can reuse it in siw_init_cpulist.
Acked-by: default avatarBernard Metzler <bmt@zurich.ibm.com>
Signed-off-by: default avatarGuoqing Jiang <guoqing.jiang@linux.dev>
Link: https://lore.kernel.org/r/20231113115726.12762-10-guoqing.jiang@linux.devSigned-off-by: default avatarLeon Romanovsky <leon@kernel.org>
parent 6a343cc3
......@@ -109,6 +109,17 @@ static struct {
int num_nodes;
} siw_cpu_info;
static void siw_destroy_cpulist(int number)
{
int i = 0;
while (i < number)
kfree(siw_cpu_info.tx_valid_cpus[i++]);
kfree(siw_cpu_info.tx_valid_cpus);
siw_cpu_info.tx_valid_cpus = NULL;
}
static int siw_init_cpulist(void)
{
int i, num_nodes = nr_node_ids;
......@@ -138,24 +149,11 @@ static int siw_init_cpulist(void)
out_err:
siw_cpu_info.num_nodes = 0;
while (--i >= 0)
kfree(siw_cpu_info.tx_valid_cpus[i]);
kfree(siw_cpu_info.tx_valid_cpus);
siw_cpu_info.tx_valid_cpus = NULL;
siw_destroy_cpulist(i);
return -ENOMEM;
}
static void siw_destroy_cpulist(void)
{
int i = 0;
while (i < siw_cpu_info.num_nodes)
kfree(siw_cpu_info.tx_valid_cpus[i++]);
kfree(siw_cpu_info.tx_valid_cpus);
}
/*
* Choose CPU with least number of active QP's from NUMA node of
* TX interface.
......@@ -558,7 +556,7 @@ static __init int siw_init_module(void)
pr_info("SoftIWARP attach failed. Error: %d\n", rv);
siw_cm_exit();
siw_destroy_cpulist();
siw_destroy_cpulist(siw_cpu_info.num_nodes);
return rv;
}
......@@ -573,7 +571,7 @@ static void __exit siw_exit_module(void)
siw_cm_exit();
siw_destroy_cpulist();
siw_destroy_cpulist(siw_cpu_info.num_nodes);
if (siw_crypto_shash)
crypto_free_shash(siw_crypto_shash);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment