summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorMajd Dibbiny <majd@mellanox.com>2017-12-21 16:38:26 +0100
committerJason Gunthorpe <jgg@mellanox.com>2017-12-22 00:06:07 +0100
commit71a0ff65a21bf3e2c4fde208c4a635ed2bbb4e81 (patch)
tree78ca981262559cd52b42de78c1b4ef981c9589bf /include
parentRDMA/vmw_pvrdma: Avoid use after free due to QP/CQ/SRQ destroy (diff)
downloadlinux-71a0ff65a21bf3e2c4fde208c4a635ed2bbb4e81.tar.xz
linux-71a0ff65a21bf3e2c4fde208c4a635ed2bbb4e81.zip
IB/mlx5: Fix congestion counters in LAG mode
Congestion counters are counted and queried per physical function. When working in LAG mode, CNP packets can be sent or received on both of the functions, thus congestion counters should be aggregated from the two physical functions. Fixes: e1f24a79f424 ("IB/mlx5: Support congestion related counters") Signed-off-by: Majd Dibbiny <majd@mellanox.com> Reviewed-by: Aviv Heller <avivh@mellanox.com> Signed-off-by: Leon Romanovsky <leon@kernel.org> Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
Diffstat (limited to 'include')
-rw-r--r--include/linux/mlx5/driver.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/include/linux/mlx5/driver.h b/include/linux/mlx5/driver.h
index a886b51511ab..8846919356ca 100644
--- a/include/linux/mlx5/driver.h
+++ b/include/linux/mlx5/driver.h
@@ -1164,6 +1164,10 @@ int mlx5_cmd_create_vport_lag(struct mlx5_core_dev *dev);
int mlx5_cmd_destroy_vport_lag(struct mlx5_core_dev *dev);
bool mlx5_lag_is_active(struct mlx5_core_dev *dev);
struct net_device *mlx5_lag_get_roce_netdev(struct mlx5_core_dev *dev);
+int mlx5_lag_query_cong_counters(struct mlx5_core_dev *dev,
+ u64 *values,
+ int num_counters,
+ size_t *offsets);
struct mlx5_uars_page *mlx5_get_uars_page(struct mlx5_core_dev *mdev);
void mlx5_put_uars_page(struct mlx5_core_dev *mdev, struct mlx5_uars_page *up);