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>
Fri, 12 Feb 2021 02:50:09 +0000 (18:50 -0800)
commit0e22bfb7c046e7c8ae339f396e78a0976633698c
tree818443c291b65816b853894ff025b0461514694d
parent9c899aa6ac6ba1e28feac82871d44af0b0e7e05c
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