RE: [PATCH V3 10/18] RDMA/siw: Add one parameter to siw_destroy_cpulist

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




> -----Original Message-----
> From: Guoqing Jiang <guoqing.jiang@xxxxxxxxx>
> Sent: Friday, October 27, 2023 4:33 AM
> To: Bernard Metzler <BMT@xxxxxxxxxxxxxx>; jgg@xxxxxxxx; leon@xxxxxxxxxx
> Cc: linux-rdma@xxxxxxxxxxxxxxx
> Subject: [EXTERNAL] [PATCH V3 10/18] RDMA/siw: Add one parameter to
> siw_destroy_cpulist
> 
> With that we can reuse it in siw_init_cpulist.
> 
> Signed-off-by: Guoqing Jiang <guoqing.jiang@xxxxxxxxx>
> ---
>  drivers/infiniband/sw/siw/siw_main.c | 30 +++++++++++++---------------
>  1 file changed, 14 insertions(+), 16 deletions(-)
> 
> diff --git a/drivers/infiniband/sw/siw/siw_main.c
> b/drivers/infiniband/sw/siw/siw_main.c
> index 1ab62982df74..61ad8ca3d1a2 100644
> --- a/drivers/infiniband/sw/siw/siw_main.c
> +++ b/drivers/infiniband/sw/siw/siw_main.c
> @@ -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);
> --
> 2.35.3


Looks good.

Acked-by: Bernard Metzler <bmt@xxxxxxxxxxxxxx>




[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux