Commit 5e700c77 authored by Jakub Kicinski's avatar Jakub Kicinski
Browse files

Merge branch 'mlx5-misc-fixes-2026-04-09'

Tariq Toukan says:

====================
mlx5 misc fixes 2026-04-09

This small patchset provides misc bug fixes from Gal to the mlx5 Eth
driver.
====================

Link: https://patch.msgid.link/20260409202852.158059-1-tariqt@nvidia.com


Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
parents d114bfdc edccdd1e
Loading
Loading
Loading
Loading
+4 −8
Original line number Diff line number Diff line
// SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB
/* Copyright (c) 2017, Mellanox Technologies inc. All rights reserved. */

#include <linux/iopoll.h>

#include "mlx5_core.h"
#include "en.h"
#include "ipsec.h"
@@ -592,7 +594,6 @@ int mlx5e_ipsec_aso_query(struct mlx5e_ipsec_sa_entry *sa_entry,
	struct mlx5_wqe_aso_ctrl_seg *ctrl;
	struct mlx5e_hw_objs *res;
	struct mlx5_aso_wqe *wqe;
	unsigned long expires;
	u8 ds_cnt;
	int ret;

@@ -614,13 +615,8 @@ int mlx5e_ipsec_aso_query(struct mlx5e_ipsec_sa_entry *sa_entry,
	mlx5e_ipsec_aso_copy(ctrl, data);

	mlx5_aso_post_wqe(aso->aso, false, &wqe->ctrl);
	expires = jiffies + msecs_to_jiffies(10);
	do {
		ret = mlx5_aso_poll_cq(aso->aso, false);
		if (ret)
			/* We are in atomic context */
			udelay(10);
	} while (ret && time_is_after_jiffies(expires));
	read_poll_timeout_atomic(mlx5_aso_poll_cq, ret, !ret, 10,
				 10 * USEC_PER_MSEC, false, aso->aso, false);
	if (!ret)
		memcpy(sa_entry->ctx, aso->ctx, MLX5_ST_SZ_BYTES(ipsec_aso));
	spin_unlock_bh(&aso->lock);
+8 −0
Original line number Diff line number Diff line
@@ -6756,6 +6756,14 @@ static int _mlx5e_probe(struct auxiliary_device *adev)
		goto err_resume;
	}

	/* mlx5e_fix_features() returns early when the device is not present
	 * to avoid dereferencing cleared priv during profile changes.
	 * This also causes it to be a no-op during register_netdev(), where
	 * the device is not yet present.
	 * Trigger an additional features update that will actually work.
	 */
	mlx5e_update_features(netdev);

	mlx5e_dcbnl_init_app(priv);
	mlx5_core_uplink_netdev_set(mdev, netdev);
	mlx5e_params_print_info(mdev, &priv->channels.params);