diff options
author | Leon Romanovsky <leonro@nvidia.com> | 2021-09-23 21:12:48 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2021-09-24 14:12:56 +0100 |
commit | e624c70e1131e145bd0510b8a700b5e2d112e377 (patch) | |
tree | aef2155641108c7cbfd78f9730507322785bdaa4 /drivers/net/ethernet/broadcom/bnxt/bnxt.c | |
parent | net: mlx4: Add support for XDP_REDIRECT (diff) | |
download | linux-dev-e624c70e1131e145bd0510b8a700b5e2d112e377.tar.xz linux-dev-e624c70e1131e145bd0510b8a700b5e2d112e377.zip |
bnxt_en: Check devlink allocation and registration status
devlink is a software interface that doesn't depend on any hardware
capabilities. The failure in SW means memory issues, wrong parameters,
programmer error e.t.c.
Like any other such interface in the kernel, the returned status of
devlink APIs should be checked and propagated further and not ignored.
Fixes: 4ab0c6a8ffd7 ("bnxt_en: add support to enable VF-representors")
Signed-off-by: Leon Romanovsky <leonro@nvidia.com>
Reviewed-by: Edwin Peer <edwin.peer@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/broadcom/bnxt/bnxt.c')
-rw-r--r-- | drivers/net/ethernet/broadcom/bnxt/bnxt.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt.c b/drivers/net/ethernet/broadcom/bnxt/bnxt.c index 62f84cc91e4d..0fba01db336c 100644 --- a/drivers/net/ethernet/broadcom/bnxt/bnxt.c +++ b/drivers/net/ethernet/broadcom/bnxt/bnxt.c @@ -13370,7 +13370,9 @@ static int bnxt_init_one(struct pci_dev *pdev, const struct pci_device_id *ent) } bnxt_inv_fw_health_reg(bp); - bnxt_dl_register(bp); + rc = bnxt_dl_register(bp); + if (rc) + goto init_err_dl; rc = register_netdev(dev); if (rc) @@ -13390,6 +13392,7 @@ static int bnxt_init_one(struct pci_dev *pdev, const struct pci_device_id *ent) init_err_cleanup: bnxt_dl_unregister(bp); +init_err_dl: bnxt_shutdown_tc(bp); bnxt_clear_int_mode(bp); |