OSDN Git Service

net/mlx5e: E-switch, Fix rate calculation for overflow
authorParav Pandit <parav@nvidia.com>
Tue, 12 Jan 2021 14:13:22 +0000 (16:13 +0200)
committerSaeed Mahameed <saeedm@nvidia.com>
Tue, 26 Jan 2021 23:38:38 +0000 (15:38 -0800)
commit1fe3e3166b35240615ab7f8276af2bbf2e51f559
tree25319f1145ecf2b622eee6dee095e1258014694c
parent487c6ef81eb98d0a43cb08be91b1fcc9b4250626
net/mlx5e: E-switch, Fix rate calculation for overflow

rate_bytes_ps is a 64-bit field. It passed as 32-bit field to
apply_police_params(). Due to this when police rate is higher
than 4Gbps, 32-bit calculation ignores the carry. This results
in incorrect rate configurationn the device.

Fix it by performing 64-bit calculation.

Fixes: fcb64c0f5640 ("net/mlx5: E-Switch, add ingress rate support")
Signed-off-by: Parav Pandit <parav@nvidia.com>
Reviewed-by: Eli Cohen <elic@nvidia.com>
Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
drivers/net/ethernet/mellanox/mlx5/core/en_tc.c