Blame SOURCES/0122-netdrv-net-mlx5-Fix-lowest-FDB-pool-size.patch

d8f823
From a88b00c14457d1a833ee903803b1c6e094fb4bd0 Mon Sep 17 00:00:00 2001
d8f823
From: Alaa Hleihel <ahleihel@redhat.com>
d8f823
Date: Sun, 10 May 2020 15:04:47 -0400
d8f823
Subject: [PATCH 122/312] [netdrv] net/mlx5: Fix lowest FDB pool size
d8f823
d8f823
Message-id: <20200510150452.10307-83-ahleihel@redhat.com>
d8f823
Patchwork-id: 306706
d8f823
Patchwork-instance: patchwork
d8f823
O-Subject: [RHEL8.3 BZ 1789380 v2 82/87] net/mlx5: Fix lowest FDB pool size
d8f823
Bugzilla: 1789380
d8f823
RH-Acked-by: Kamal Heib <kheib@redhat.com>
d8f823
RH-Acked-by: Jarod Wilson <jarod@redhat.com>
d8f823
RH-Acked-by: Tony Camuso <tcamuso@redhat.com>
d8f823
RH-Acked-by: Jonathan Toppins <jtoppins@redhat.com>
d8f823
d8f823
Bugzilla: http://bugzilla.redhat.com/1789380
d8f823
Upstream: v5.5
d8f823
d8f823
commit 93b8a7ecb7287cc9b0196f12a25b57c2462d11dc
d8f823
Author: Paul Blakey <paulb@mellanox.com>
d8f823
Date:   Tue Dec 31 17:04:15 2019 +0200
d8f823
d8f823
    net/mlx5: Fix lowest FDB pool size
d8f823
d8f823
    The pool sizes represent the pool sizes in the fw. when we request
d8f823
    a pool size from fw, it will return the next possible group.
d8f823
    We track how many pools the fw has left and start requesting groups
d8f823
    from the big to the small.
d8f823
    When we start request 4k group, which doesn't exists in fw, fw
d8f823
    wants to allocate the next possible size, 64k, but will fail since
d8f823
    its exhausted. The correct smallest pool size in fw is 128 and not 4k.
d8f823
d8f823
    Fixes: e52c28024008 ("net/mlx5: E-Switch, Add chains and priorities")
d8f823
    Signed-off-by: Paul Blakey <paulb@mellanox.com>
d8f823
    Reviewed-by: Roi Dayan <roid@mellanox.com>
d8f823
    Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
d8f823
d8f823
Signed-off-by: Alaa Hleihel <ahleihel@redhat.com>
d8f823
Signed-off-by: Frantisek Hrbata <fhrbata@redhat.com>
d8f823
---
d8f823
 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c | 2 +-
d8f823
 1 file changed, 1 insertion(+), 1 deletion(-)
d8f823
d8f823
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c b/drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c
d8f823
index 121abcae993a..9d2d850463bb 100644
d8f823
--- a/drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c
d8f823
+++ b/drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c
d8f823
@@ -866,7 +866,7 @@ static int esw_add_fdb_miss_rule(struct mlx5_eswitch *esw)
d8f823
  */
d8f823
 #define ESW_SIZE (16 * 1024 * 1024)
d8f823
 const unsigned int ESW_POOLS[4] = { 4 * 1024 * 1024, 1 * 1024 * 1024,
d8f823
-				    64 * 1024, 4 * 1024 };
d8f823
+				    64 * 1024, 128 };
d8f823
 
d8f823
 static int
d8f823
 get_sz_from_pool(struct mlx5_eswitch *esw)
d8f823
-- 
d8f823
2.13.6
d8f823