aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/mellanox/mlx5/core/cmd.c
diff options
context:
space:
mode:
authorGal Pressman <galp@mellanox.com>2017-05-10 15:10:33 +0300
committerSaeed Mahameed <saeedm@mellanox.com>2017-06-16 00:19:32 +0300
commit3834a5e62617603673474ada9831aa4bda955e03 (patch)
treedada90898c8a8354418e0d022a381935e168e386 /drivers/net/ethernet/mellanox/mlx5/core/cmd.c
parentnet/mlx5e: Move and optimize query out of buffer function (diff)
downloadlinux-dev-3834a5e62617603673474ada9831aa4bda955e03.tar.xz
linux-dev-3834a5e62617603673474ada9831aa4bda955e03.zip
net/mlx5e: Optimize update stats work
Unlike ethtool stats, get_stats ndo provides information cached by update stats work that is running in the background without updating them explicitly. We cannot update all counters inside the ndo because some updates require firmware commands that cannot be performed under a spinlock. update_stats work does not need to update ALL counters, since only some of them are needed by ndo_get_stats. This patch will allow for a minimal run of update_stats using an extra parameter which will update necessary counters only and cut 13 firmware commands in each iteration of the work. Work duration previous to this patch: ~4200us. Work duration after this patch: ~700us (17% of the original time). Signed-off-by: Gal Pressman <galp@mellanox.com> Reviewed-by: Eran Ben Elisha <eranbe@mellanox.com> Signed-off-by: Saeed Mahameed <saeedm@mellanox.com> Cc: kernel-team@fb.com
Diffstat (limited to 'drivers/net/ethernet/mellanox/mlx5/core/cmd.c')
0 files changed, 0 insertions, 0 deletions