From: Jiri Pirko Date: Wed, 25 Mar 2026 15:28:01 +0000 (+0100) Subject: mlx5: shd: Gracefully avoid shared devlink creation when no usable SN is found X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=b8f9410aefc15e55304788b958a796d22bcabb7e;p=thirdparty%2Fkernel%2Flinux.git mlx5: shd: Gracefully avoid shared devlink creation when no usable SN is found On some HW, not even fall-back "SERIALNO" is found in VPD data. Unify the behavior with the case there are no VPD data at all and avoid creation of shared devlink instance. Fixes: 2a8c8a03f306 ("net/mlx5: Add a shared devlink instance for PFs on same chip") Reported-by: Adam Young Closes: https://lore.kernel.org/all/bab5b6bc-aa42-4af1-80d1-e56bcef06bc2@amperemail.onmicrosoft.com/ Reported-by: Ben Copeland Closes: https://lore.kernel.org/all/20260324151014.860376-1-ben.copeland@linaro.org/ Signed-off-by: Jiri Pirko Tested-by: Ben Copeland Reviewed-by: Simon Horman Link: https://patch.msgid.link/20260325152801.236343-1-jiri@resnulli.us Signed-off-by: Jakub Kicinski --- diff --git a/drivers/net/ethernet/mellanox/mlx5/core/sh_devlink.c b/drivers/net/ethernet/mellanox/mlx5/core/sh_devlink.c index bc33f95302df6..b925364765ac2 100644 --- a/drivers/net/ethernet/mellanox/mlx5/core/sh_devlink.c +++ b/drivers/net/ethernet/mellanox/mlx5/core/sh_devlink.c @@ -33,7 +33,7 @@ int mlx5_shd_init(struct mlx5_core_dev *dev) start = pci_vpd_find_ro_info_keyword(vpd_data, vpd_size, PCI_VPD_RO_KEYWORD_SERIALNO, &kw_len); if (start < 0) - return -ENOENT; + return 0; /* No usable serial number found, ignore. */ } sn = kstrndup(vpd_data + start, kw_len, GFP_KERNEL); if (!sn)