Skip to content

Commit 488ab6d

Browse files
Cosmin Ratiugregkh
authored andcommitted
net/mlx5e: Fix lock order in mlx5e_tx_reporter_ptpsq_unhealthy_recover
[ Upstream commit 1c2940e ] RTNL needs to be acquired before state_lock. Fixes: fdce06b ("net/mlx5e: Acquire RTNL lock before RQs/SQs activation/deactivation") Signed-off-by: Cosmin Ratiu <cratiu@nvidia.com> Reviewed-by: Dragos Tatulea <dtatulea@nvidia.com> Signed-off-by: Mark Bloch <mbloch@nvidia.com> Link: https://patch.msgid.link/20250423083611.324567-5-mbloch@nvidia.com Signed-off-by: Jakub Kicinski <kuba@kernel.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
1 parent c022830 commit 488ab6d

File tree

1 file changed

+2
-4
lines changed

1 file changed

+2
-4
lines changed

drivers/net/ethernet/mellanox/mlx5/core/en/reporter_tx.c

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -177,29 +177,27 @@ static int mlx5e_tx_reporter_ptpsq_unhealthy_recover(void *ctx)
177177

178178
priv = ptpsq->txqsq.priv;
179179

180+
rtnl_lock();
180181
mutex_lock(&priv->state_lock);
181182
chs = &priv->channels;
182183
netdev = priv->netdev;
183184

184185
carrier_ok = netif_carrier_ok(netdev);
185186
netif_carrier_off(netdev);
186187

187-
rtnl_lock();
188188
mlx5e_deactivate_priv_channels(priv);
189-
rtnl_unlock();
190189

191190
mlx5e_ptp_close(chs->ptp);
192191
err = mlx5e_ptp_open(priv, &chs->params, chs->c[0]->lag_port, &chs->ptp);
193192

194-
rtnl_lock();
195193
mlx5e_activate_priv_channels(priv);
196-
rtnl_unlock();
197194

198195
/* return carrier back if needed */
199196
if (carrier_ok)
200197
netif_carrier_on(netdev);
201198

202199
mutex_unlock(&priv->state_lock);
200+
rtnl_unlock();
203201

204202
return err;
205203
}

0 commit comments

Comments
 (0)