Message ID | 20250113154055.1927008-4-tariqt@nvidia.com (mailing list archive) |
---|---|
State | New |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | mlx5 misc fixes 2025-01-13 | expand |
On 1/13/2025 7:40 AM, Tariq Toukan wrote: > From: Chris Mi <cmi@nvidia.com> > > If failed to add SF, error handling doesn't delete the SF from the > SF table. But the hw resources are deleted. So when unload driver, > hw resources will be deleted again. Firmware will report syndrome > 0x68def3 which means "SF is not allocated can not deallocate". > > Fix it by delete SF from SF table if failed to add SF. > > Fixes: 2597ee190b4e ("net/mlx5: Call mlx5_sf_id_erase() once in mlx5_sf_dealloc()") > Signed-off-by: Chris Mi <cmi@nvidia.com> > Reviewed-by: Shay Drori <shayd@nvidia.com> > Signed-off-by: Tariq Toukan <tariqt@nvidia.com> > --- Reviewed-by: Jacob Keller <jacob.e.keller@intel.com> > drivers/net/ethernet/mellanox/mlx5/core/sf/devlink.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/drivers/net/ethernet/mellanox/mlx5/core/sf/devlink.c b/drivers/net/ethernet/mellanox/mlx5/core/sf/devlink.c > index a96be98be032..b96909fbeb12 100644 > --- a/drivers/net/ethernet/mellanox/mlx5/core/sf/devlink.c > +++ b/drivers/net/ethernet/mellanox/mlx5/core/sf/devlink.c > @@ -257,6 +257,7 @@ static int mlx5_sf_add(struct mlx5_core_dev *dev, struct mlx5_sf_table *table, > return 0; > > esw_err: > + mlx5_sf_function_id_erase(table, sf); > mlx5_sf_free(table, sf); > return err; > }
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/sf/devlink.c b/drivers/net/ethernet/mellanox/mlx5/core/sf/devlink.c index a96be98be032..b96909fbeb12 100644 --- a/drivers/net/ethernet/mellanox/mlx5/core/sf/devlink.c +++ b/drivers/net/ethernet/mellanox/mlx5/core/sf/devlink.c @@ -257,6 +257,7 @@ static int mlx5_sf_add(struct mlx5_core_dev *dev, struct mlx5_sf_table *table, return 0; esw_err: + mlx5_sf_function_id_erase(table, sf); mlx5_sf_free(table, sf); return err; }