summaryrefslogtreecommitdiff
path: root/drivers/net
diff options
context:
space:
mode:
authorSagi Grimberg <sagig@mellanox.co.il>2013-06-04 09:13:26 +0400
committerDavid S. Miller <davem@davemloft.net>2013-06-04 23:58:24 +0400
commita1c6693a50391683e7f5787bb027b1aae1afbedb (patch)
tree8200672a773085cc9c6bb957c33eec60479ff85d /drivers/net
parent01cb71d2d47b78354358e4bb938bb06323e17498 (diff)
downloadlinux-a1c6693a50391683e7f5787bb027b1aae1afbedb.tar.xz
net/mlx4_en: Fix adaptive moderation cq update
When turning on adaptive_rx under adaptive moderation, the CQ's moderation count wasn't updated according to rx_frames which resulted in too many interrupts and bandwidth drop. Signed-off-by: Sagi Grimberg <sagig@mellanox.com> Signed-off-by: Amir Vadai <amirv@mellanox.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net')
-rw-r--r--drivers/net/ethernet/mellanox/mlx4/en_netdev.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/ethernet/mellanox/mlx4/en_netdev.c b/drivers/net/ethernet/mellanox/mlx4/en_netdev.c
index b35f94700093..810aab01c3c9 100644
--- a/drivers/net/ethernet/mellanox/mlx4/en_netdev.c
+++ b/drivers/net/ethernet/mellanox/mlx4/en_netdev.c
@@ -1323,6 +1323,7 @@ static void mlx4_en_auto_moderation(struct mlx4_en_priv *priv)
priv->last_moder_time[ring] = moder_time;
cq = &priv->rx_cq[ring];
cq->moder_time = moder_time;
+ cq->moder_cnt = priv->rx_frames;
err = mlx4_en_set_cq_moder(priv, cq);
if (err)
en_err(priv, "Failed modifying moderation for cq:%d\n",