git: 60bb6c368e3c - stable/15 - mlx5en: guard against empty eth_proto_oper mask
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Mon, 06 Jul 2026 01:43:05 UTC
The branch stable/15 has been updated by kib:
URL: https://cgit.FreeBSD.org/src/commit/?id=60bb6c368e3cc03e9377f2af320d182c985bdb11
commit 60bb6c368e3cc03e9377f2af320d182c985bdb11
Author: Slava Shwartsman <slavash@nvidia.com>
AuthorDate: 2026-06-10 16:43:08 +0000
Commit: Konstantin Belousov <kib@FreeBSD.org>
CommitDate: 2026-07-06 01:35:52 +0000
mlx5en: guard against empty eth_proto_oper mask
(cherry picked from commit 17cf7760a98a87c33d0415e2d2e1d4b24dd69e4d)
---
sys/dev/mlx5/mlx5_en/mlx5_en_main.c | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/sys/dev/mlx5/mlx5_en/mlx5_en_main.c b/sys/dev/mlx5/mlx5_en/mlx5_en_main.c
index f5d4c4d23cbe..7cfbeb106952 100644
--- a/sys/dev/mlx5/mlx5_en/mlx5_en_main.c
+++ b/sys/dev/mlx5/mlx5_en/mlx5_en_main.c
@@ -445,9 +445,16 @@ mlx5e_update_carrier(struct mlx5e_priv *priv)
ext = MLX5_CAP_PCAM_FEATURE(mdev, ptys_extended_ethernet);
eth_proto_oper = MLX5_GET_ETH_PROTO(ptys_reg, out, ext,
eth_proto_oper);
+ if (eth_proto_oper == 0) {
+ priv->media_active_last = IFM_ETHER;
+ if_setbaudrate(priv->ifp, 1);
+ mlx5_en_err(priv->ifp, "eth_proto_oper is 0\n");
+ return;
+ }
connector_type = MLX5_GET(ptys_reg, out, connector_type);
if (connector_type >= MLX5E_CONNECTOR_TYPE_NUMBER)
connector_type = MLX5E_PORT_UNKNOWN;
+
i = ilog2(eth_proto_oper);
if (ext) {