nfp: correct cleanup related to DCB resources
authorHuayu Chen <huayu.chen@corigine.com>
Tue, 31 Jan 2023 16:30:33 +0000 (17:30 +0100)
committerJakub Kicinski <kuba@kernel.org>
Thu, 2 Feb 2023 03:57:30 +0000 (19:57 -0800)
commitca3daf437d9c261ca498f518090c3ddbf1bf824f
tree896d9df22930cecfcc2a3e229103d4ed7531559c
parentbc61761394ce0f0cc35c6fc60426f08d83d0d488
nfp: correct cleanup related to DCB resources

This patch corrects two oversights relating to releasing resources
and DCB initialisation.

1. If mapping of the dcbcfg_tbl area fails: an error should be
   propagated, allowing partial initialisation (probe) to be unwound.

2. Conversely, if where dcbcfg_tbl is successfully mapped: it should
   be unmapped in nfp_nic_dcb_clean() which is called via various error
   cleanup paths, and shutdown or removal of the PCIE device.

Fixes: 9b7fe8046d74 ("nfp: add DCB IEEE support")
Signed-off-by: Huayu Chen <huayu.chen@corigine.com>
Reviewed-by: Niklas Söderlund <niklas.soderlund@corigine.com>
Signed-off-by: Simon Horman <simon.horman@corigine.com>
Reviewed-by: Leon Romanovsky <leonro@nvidia.com>
Link: https://lore.kernel.org/r/20230131163033.981937-1-simon.horman@corigine.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/netronome/nfp/nic/main.c
drivers/net/ethernet/netronome/nfp/nic/main.h