lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:   Thu, 27 Feb 2020 10:02:57 +0800
From:   Tonghao Zhang <xiangxia.m.yue@...il.com>
To:     Paul Blakey <paulb@...lanox.com>
Cc:     Saeed Mahameed <saeedm@...lanox.com>,
        Roi Dayan <roid@...lanox.com>,
        "saeedm@....mellanox.co.il" <saeedm@....mellanox.co.il>,
        "gerlitz.or@...il.com" <gerlitz.or@...il.com>,
        "netdev@...r.kernel.org" <netdev@...r.kernel.org>
Subject: Re: [net-next] net/mlx5e: Remove the unnecessary parameter

On Wed, Feb 26, 2020 at 5:53 PM Paul Blakey <paulb@...lanox.com> wrote:
>
>
> On 2/26/2020 12:50 AM, Saeed Mahameed wrote:
> > On Wed, 2020-02-26 at 00:03 +0800, xiangxia.m.yue@...il.com wrote:
> >> From: Tonghao Zhang <xiangxia.m.yue@...il.com>
> >>
> >> The parameter desired_size is always 0, and there is only one
> >> function calling the mlx5_esw_chains_get_avail_sz_from_pool.
> >> Deleting the parameter desired_size.
> > Paul, what is the reasoning behind desired size, i confirm that it  is
> > not actually used right now, do we have a pending patch that needs it
> > ?
> > if this is not going to happen in the near future i vote to apply this
> > patch and bring it back when needed.
>
> Right, it will be used in a following patch that reduces the size given for nft flow tables.
>
> I planned on submitting it after connection tracking offload is complete, but it can be sent now.
Hi, Paul, and Saeed
The function will be used, so my patch is unnecessary. Thanks for explaining.
> This is the patch:
>
> From 66d3cb9706ed09f00150a42f555a51404602bba4 Mon Sep 17 00:00:00 2001
> From: Paul Blakey <paulb@...lanox.com>
> Date: Wed, 8 Jan 2020 14:31:53 +0200
> Subject: [PATCH] net/mlx5: Allocate smaller size tables for ft offload
>
> Instead of giving ft tables one of the largest tables available - 4M,
> give it a more reasonable size - 64k. Especially since it will
> always be created as a miss hook in the following patch.
>
> Signed-off-by: Paul Blakey <paulb@...lanox.com>
> Reviewed-by: Mark Bloch <markb@...lanox.com>
> ---
>  drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads_chains.c | 5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads_chains.c b/drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads_chains.c
> index 3990066..dabbc05 100644
> --- a/drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads_chains.c
> +++ b/drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads_chains.c
> @@ -39,6 +39,7 @@
>                                           1 * 1024 * 1024,
>                                           64 * 1024,
>                                           128 };
> +#define ESW_FT_TBL_SZ (64 * 1024)
>
>  struct mlx5_esw_chains_priv {
>         struct rhashtable chains_ht;
> @@ -205,7 +206,9 @@ static unsigned int mlx5_esw_chains_get_level_range(struct mlx5_eswitch *esw)
>                 ft_attr.flags |= (MLX5_FLOW_TABLE_TUNNEL_EN_REFORMAT |
>                                   MLX5_FLOW_TABLE_TUNNEL_EN_DECAP);
>
> -       sz = mlx5_esw_chains_get_avail_sz_from_pool(esw, POOL_NEXT_SIZE);
> +       sz = (chain == mlx5_esw_chains_get_ft_chain(esw)) ?
> +            mlx5_esw_chains_get_avail_sz_from_pool(esw, ESW_FT_TBL_SZ) :
> +            mlx5_esw_chains_get_avail_sz_from_pool(esw, POOL_NEXT_SIZE);
>         if (!sz)
>                 return ERR_PTR(-ENOSPC);
>         ft_attr.max_fte = sz;
> --
> 1.8.3.1
>
>
> >
> > Thanks,
> > Saeed.
> >
> >> Signed-off-by: Tonghao Zhang <xiangxia.m.yue@...il.com>
> >> ---
> >>  .../net/ethernet/mellanox/mlx5/core/eswitch_offloads_chains.c | 11
> >> +++--------
> >>  1 file changed, 3 insertions(+), 8 deletions(-)
> >>
> >> diff --git
> >> a/drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads_chains.c
> >> b/drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads_chains.c
> >> index c5a446e..ce5b7e1 100644
> >> ---
> >> a/drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads_chains.c
> >> +++
> >> b/drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads_chains.c
> >> @@ -134,19 +134,14 @@ static unsigned int
> >> mlx5_esw_chains_get_level_range(struct mlx5_eswitch *esw)
> >>      return FDB_TC_LEVELS_PER_PRIO;
> >>  }
> >>
> >> -#define POOL_NEXT_SIZE 0
> >>  static int
> >> -mlx5_esw_chains_get_avail_sz_from_pool(struct mlx5_eswitch *esw,
> >> -                                   int desired_size)
> >> +mlx5_esw_chains_get_avail_sz_from_pool(struct mlx5_eswitch *esw)
> >>  {
> >>      int i, found_i = -1;
> >>
> >>      for (i = ARRAY_SIZE(ESW_POOLS) - 1; i >= 0; i--) {
> >> -            if (fdb_pool_left(esw)[i] && ESW_POOLS[i] >
> >> desired_size) {
> >> +            if (fdb_pool_left(esw)[i])
> >>                      found_i = i;
> >> -                    if (desired_size != POOL_NEXT_SIZE)
> >> -                            break;
> >> -            }
> >>      }
> >>
> >>      if (found_i != -1) {
> >> @@ -198,7 +193,7 @@ static unsigned int
> >> mlx5_esw_chains_get_level_range(struct mlx5_eswitch *esw)
> >>              ft_attr.flags |= (MLX5_FLOW_TABLE_TUNNEL_EN_REFORMAT |
> >>                                MLX5_FLOW_TABLE_TUNNEL_EN_DECAP);
> >>
> >> -    sz = mlx5_esw_chains_get_avail_sz_from_pool(esw,
> >> POOL_NEXT_SIZE);
> >> +    sz = mlx5_esw_chains_get_avail_sz_from_pool(esw);
> >>      if (!sz)
> >>              return ERR_PTR(-ENOSPC);
> >>      ft_attr.max_fte = sz;

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ