The port down state was not initialized in the error branch of link<br />detection when MLX NIC link status update failed (ret < 0).<br />This resulted in incorrect link state reporting, as the device<br />retained stale link status instead of reflecting the actual down<br />state under error conditions.<br /> <br />Fixes: 1256805dd54 ("net/mlx5: move Linux-specific functions")<br />Cc: stable@dpdk.org<br /> <br />Signed-off-by: Yang Xu <xu.yang3@zte.com.cn> <br />---<br /> .mailmap                                | 1 +<br /> drivers/net/mlx5/linux/mlx5_ethdev_os.c | 1 +<br /> 2 files changed, 2 insertions(+)<br /> <br />diff --git a/.mailmap b/.mailmap<br />index 34a99f93a1..14d6ee93dd 100644<br />--- a/.mailmap<br />+++ b/.mailmap<br />@@ -1891,3 +1891,4 @@ Zoltan Kiss <zoltan.kiss@schaman.hu> <zoltan.kiss@linaro.org> <br /> Zorik Machulsky <zorik@amazon.com> <br /> Zyta Szpak <zyta@marvell.com> <zr@semihalf.com> <br /> Zyta Szpak <zyta@marvell.com> <zyta.szpak@semihalf.com> <br />+Yang Xu <xu.yang3@zte.com.cn> <br />diff --git a/drivers/net/mlx5/linux/mlx5_ethdev_os.c b/drivers/net/mlx5/linux/mlx5_ethdev_os.c<br />index 9daeda5435..49b88dfebb 100644<br />--- a/drivers/net/mlx5/linux/mlx5_ethdev_os.c<br />+++ b/drivers/net/mlx5/linux/mlx5_ethdev_os.c<br />@@ -504,6 +504,7 @@ mlx5_link_update(struct rte_eth_dev *dev, int wait_to_complete)<br />                 return -rte_errno;<br />             }<br />         } else if (ret < 0) {<br />+            memset(&dev->data->dev_link, 0, sizeof(dev->data->dev_link));<br />             return ret;<br />         }<br />     } while (wait_to_complete || retry-- > 0);<br />--  <br />2.27.0<br />