LVS
lvs-devel
Google
 
Web LinuxVirtualServer.org

Re: [PATCH nf-next v2 2/4] ipvs: Consistently use array_size() in ip_vs_

To: Simon Horman <horms@xxxxxxxxxx>
Subject: Re: [PATCH nf-next v2 2/4] ipvs: Consistently use array_size() in ip_vs_conn_init()
Cc: Julian Anastasov <ja@xxxxxx>, Pablo Neira Ayuso <pablo@xxxxxxxxxxxxx>, Jozsef Kadlecsik <kadlec@xxxxxxxxxxxxx>, Florian Westphal <fw@xxxxxxxxx>, <netdev@xxxxxxxxxxxxxxx>, "David S. Miller" <davem@xxxxxxxxxxxxx>, David Ahern <dsahern@xxxxxxxxxx>, Eric Dumazet <edumazet@xxxxxxxxxx>, Jakub Kicinski <kuba@xxxxxxxxxx>, Paolo Abeni <pabeni@xxxxxxxxxx>, <lvs-devel@xxxxxxxxxxxxxxx>, <linux-kernel@xxxxxxxxxxxxxxx>, <netfilter-devel@xxxxxxxxxxxxxxx>, <coreteam@xxxxxxxxxxxxx>
From: Horatiu Vultur <horatiu.vultur@xxxxxxxxxxxxx>
Date: Tue, 11 Apr 2023 13:34:50 +0200
The 04/11/2023 09:10, Simon Horman wrote:
> 
> Consistently use array_size() to calculate the size of ip_vs_conn_tab
> in bytes.
> 
> Flagged by Coccinelle:
>  WARNING: array_size is already used (line 1498) to compute the same size
> 
> No functional change intended.
> Compile tested only.

Reviewed-by: Horatiu Vultur <horatiu.vultur@xxxxxxxxxxxxx>

> 
> Signed-off-by: Simon Horman <horms@xxxxxxxxxx>
> ---
> v2
> * Retain division by 1024, which was lost in v1
> ---
>  net/netfilter/ipvs/ip_vs_conn.c | 12 ++++++------
>  1 file changed, 6 insertions(+), 6 deletions(-)
> 
> diff --git a/net/netfilter/ipvs/ip_vs_conn.c b/net/netfilter/ipvs/ip_vs_conn.c
> index 13534e02346c..84d273a84dc8 100644
> --- a/net/netfilter/ipvs/ip_vs_conn.c
> +++ b/net/netfilter/ipvs/ip_vs_conn.c
> @@ -1481,6 +1481,7 @@ void __net_exit ip_vs_conn_net_cleanup(struct 
> netns_ipvs *ipvs)
> 
>  int __init ip_vs_conn_init(void)
>  {
> +       size_t tab_array_size;
>         int idx;
> 
>         /* Compute size and mask */
> @@ -1494,8 +1495,9 @@ int __init ip_vs_conn_init(void)
>         /*
>          * Allocate the connection hash table and initialize its list heads
>          */
> -       ip_vs_conn_tab = vmalloc(array_size(ip_vs_conn_tab_size,
> -                                           sizeof(*ip_vs_conn_tab)));
> +       tab_array_size = array_size(ip_vs_conn_tab_size,
> +                                   sizeof(*ip_vs_conn_tab));
> +       ip_vs_conn_tab = vmalloc(tab_array_size);
>         if (!ip_vs_conn_tab)
>                 return -ENOMEM;
> 
> @@ -1508,10 +1510,8 @@ int __init ip_vs_conn_init(void)
>                 return -ENOMEM;
>         }
> 
> -       pr_info("Connection hash table configured "
> -               "(size=%d, memory=%ldKbytes)\n",
> -               ip_vs_conn_tab_size,
> -               (long)(ip_vs_conn_tab_size*sizeof(*ip_vs_conn_tab))/1024);
> +       pr_info("Connection hash table configured (size=%d, 
> memory=%zdKbytes)\n",
> +               ip_vs_conn_tab_size / 1024, tab_array_size);
>         IP_VS_DBG(0, "Each connection entry needs %zd bytes at least\n",
>                   sizeof(struct ip_vs_conn));
> 
> 
> --
> 2.30.2
> 

-- 
/Horatiu

<Prev in Thread] Current Thread [Next in Thread>