net/mlx5e: Fix trust state reset in reload
commitb781bff882upstream. Setting dscp2prio during the driver reload can cause dcb ieee app list to be not empty after the reload finish and as a result to a conflict between the priority trust state reported by the app and the state in the device register. Reset the dcb ieee app list on initialization in case this is conflicting with the register status. Fixes:2a5e7a1344("net/mlx5e: Add dcbnl dscp to priority support") Signed-off-by: Moshe Tal <moshet@nvidia.com> Signed-off-by: Saeed Mahameed <saeedm@nvidia.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
87f0d9a518
commit
c7f87ad115
1 changed files with 10 additions and 0 deletions
|
|
@ -1210,6 +1210,16 @@ static int mlx5e_trust_initialize(struct mlx5e_priv *priv)
|
|||
if (err)
|
||||
return err;
|
||||
|
||||
if (priv->dcbx_dp.trust_state == MLX5_QPTS_TRUST_PCP && priv->dcbx.dscp_app_cnt) {
|
||||
/*
|
||||
* Align the driver state with the register state.
|
||||
* Temporary state change is required to enable the app list reset.
|
||||
*/
|
||||
priv->dcbx_dp.trust_state = MLX5_QPTS_TRUST_DSCP;
|
||||
mlx5e_dcbnl_delete_app(priv);
|
||||
priv->dcbx_dp.trust_state = MLX5_QPTS_TRUST_PCP;
|
||||
}
|
||||
|
||||
mlx5e_params_calc_trust_tx_min_inline_mode(priv->mdev, &priv->channels.params,
|
||||
priv->dcbx_dp.trust_state);
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue