]> git.baikalelectronics.ru Git - kernel.git/commitdiff
net/mlx5: Avoid printing health buffer when firmware is unavailable
authorAya Levin <ayal@nvidia.com>
Tue, 9 Nov 2021 13:44:58 +0000 (15:44 +0200)
committerSaeed Mahameed <saeedm@nvidia.com>
Wed, 17 Nov 2021 04:31:48 +0000 (20:31 -0800)
Use firmware version field as an indication to health buffer's sanity.
When firmware version is 0xFFFFFFFF, deduce that firmware is unavailable
and avoid printing the health buffer to dmesg as it doesn't provide
debug info.

Signed-off-by: Aya Levin <ayal@nvidia.com>
Reviewed-by: Gal Pressman <gal@nvidia.com>
Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
drivers/net/ethernet/mellanox/mlx5/core/health.c

index 64f1abc4dc367fe1d05787a571742b9522cdfd93..75121bc1eaa5f4d07c76afa327db88f2b848aa8d 100644 (file)
@@ -420,6 +420,11 @@ static void print_health_info(struct mlx5_core_dev *dev)
        if (!ioread8(&h->synd))
                return;
 
+       if (ioread32be(&h->fw_ver) == 0xFFFFFFFF) {
+               mlx5_log(dev, LOGLEVEL_ERR, "PCI slot is unavailable\n");
+               return;
+       }
+
        rfr_severity = ioread8(&h->rfr_severity);
        severity  = mlx5_health_get_severity(rfr_severity);
        mlx5_log(dev, severity, "Health issue observed, %s, severity(%d) %s:\n",