]>
Commit | Line | Data |
---|---|---|
a9fba688 SL |
1 | From 97a1a6eb533cd769fb833a7991019055f4f40e3b Mon Sep 17 00:00:00 2001 |
2 | From: Huy Nguyen <huyn@mellanox.com> | |
3 | Date: Thu, 7 Mar 2019 14:49:50 -0600 | |
4 | Subject: net/mlx5e: Update xoff formula | |
5 | ||
6 | [ Upstream commit 5ec983e924c7978aaec3cf8679ece9436508bb20 ] | |
7 | ||
8 | Set minimum speed in xoff threshold formula to 40Gbps | |
9 | ||
10 | Fixes: 0696d60853d5 ("net/mlx5e: Receive buffer configuration") | |
11 | Signed-off-by: Huy Nguyen <huyn@mellanox.com> | |
12 | Signed-off-by: Saeed Mahameed <saeedm@mellanox.com> | |
13 | Signed-off-by: Sasha Levin <sashal@kernel.org> | |
14 | --- | |
15 | .../net/ethernet/mellanox/mlx5/core/en/port_buffer.c | 11 ++++++----- | |
16 | 1 file changed, 6 insertions(+), 5 deletions(-) | |
17 | ||
18 | diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en/port_buffer.c b/drivers/net/ethernet/mellanox/mlx5/core/en/port_buffer.c | |
19 | index eac245a93f91..f00de0c987cd 100644 | |
20 | --- a/drivers/net/ethernet/mellanox/mlx5/core/en/port_buffer.c | |
21 | +++ b/drivers/net/ethernet/mellanox/mlx5/core/en/port_buffer.c | |
22 | @@ -122,7 +122,9 @@ static int port_set_buffer(struct mlx5e_priv *priv, | |
23 | return err; | |
24 | } | |
25 | ||
26 | -/* xoff = ((301+2.16 * len [m]) * speed [Gbps] + 2.72 MTU [B]) */ | |
27 | +/* xoff = ((301+2.16 * len [m]) * speed [Gbps] + 2.72 MTU [B]) | |
28 | + * minimum speed value is 40Gbps | |
29 | + */ | |
30 | static u32 calculate_xoff(struct mlx5e_priv *priv, unsigned int mtu) | |
31 | { | |
32 | u32 speed; | |
33 | @@ -130,10 +132,9 @@ static u32 calculate_xoff(struct mlx5e_priv *priv, unsigned int mtu) | |
34 | int err; | |
35 | ||
36 | err = mlx5e_port_linkspeed(priv->mdev, &speed); | |
37 | - if (err) { | |
38 | - mlx5_core_warn(priv->mdev, "cannot get port speed\n"); | |
39 | - return 0; | |
40 | - } | |
41 | + if (err) | |
42 | + speed = SPEED_40000; | |
43 | + speed = max_t(u32, speed, SPEED_40000); | |
44 | ||
45 | xoff = (301 + 216 * priv->dcbx.cable_len / 100) * speed / 1000 + 272 * mtu / 100; | |
46 | ||
47 | -- | |
48 | 2.19.1 | |
49 |