summaryrefslogtreecommitdiffstats
path: root/include/linux/mlx5/port.h
diff options
context:
space:
mode:
authorHuy Nguyen2017-09-28 22:33:50 +0200
committerSaeed Mahameed2017-10-26 09:47:27 +0200
commitbe0f161ef141e4df368aa3f417a1c2ab9c362e75 (patch)
tree72e160e5ba28cb3c2aa1b33dfd085acde2ba213b /include/linux/mlx5/port.h
parentnet/mlx5e: Properly deal with encap flows add/del under neigh update (diff)
downloadkernel-qcow2-linux-be0f161ef141e4df368aa3f417a1c2ab9c362e75.tar.gz
kernel-qcow2-linux-be0f161ef141e4df368aa3f417a1c2ab9c362e75.tar.xz
kernel-qcow2-linux-be0f161ef141e4df368aa3f417a1c2ab9c362e75.zip
net/mlx5e: DCBNL, Implement tc with ets type and zero bandwidth
Previously, tc with ets type and zero bandwidth is not accepted by driver. This behavior does not follow the IEEE802.1qaz spec. If there are tcs with ets type and zero bandwidth, these tcs are assigned to the lowest priority tc_group #0. We equally distribute 100% bw of the tc_group #0 to these zero bandwidth ets tcs. Also, the non zero bandwidth ets tcs are assigned to tc_group #1. If there is no zero bandwidth ets tc, the non zero bandwidth ets tcs are assigned to tc_group #0. Fixes: cdcf11212b22 ("net/mlx5e: Validate BW weight values of ETS") Signed-off-by: Huy Nguyen <huyn@mellanox.com> Reviewed-by: Parav Pandit <parav@mellanox.com> Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
Diffstat (limited to 'include/linux/mlx5/port.h')
-rw-r--r--include/linux/mlx5/port.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/include/linux/mlx5/port.h b/include/linux/mlx5/port.h
index c57d4b7de3a8..c59af8ab753a 100644
--- a/include/linux/mlx5/port.h
+++ b/include/linux/mlx5/port.h
@@ -157,6 +157,8 @@ int mlx5_set_port_prio_tc(struct mlx5_core_dev *mdev, u8 *prio_tc);
int mlx5_query_port_prio_tc(struct mlx5_core_dev *mdev,
u8 prio, u8 *tc);
int mlx5_set_port_tc_group(struct mlx5_core_dev *mdev, u8 *tc_group);
+int mlx5_query_port_tc_group(struct mlx5_core_dev *mdev,
+ u8 tc, u8 *tc_group);
int mlx5_set_port_tc_bw_alloc(struct mlx5_core_dev *mdev, u8 *tc_bw);
int mlx5_query_port_tc_bw_alloc(struct mlx5_core_dev *mdev,
u8 tc, u8 *bw_pct);