bnxt_en: Fix memory leak in bnxt_hwrm_get_rings()
authorMichael Chan <michael.chan@broadcom.com>
Wed, 17 Jan 2024 23:45:12 +0000 (15:45 -0800)
committerJakub Kicinski <kuba@kernel.org>
Sat, 20 Jan 2024 05:15:12 +0000 (21:15 -0800)
commit2ad8e57338ac7b1e149d458669a95132e2460096
tree6e3aaad87fa21b61eab4195c4f7137ad4f518f4d
parent3c1069fa42872f95cf3c6fedf80723d391e12d57
bnxt_en: Fix memory leak in bnxt_hwrm_get_rings()

bnxt_hwrm_get_rings() can abort and return error when there are not
enough ring resources.  It aborts without releasing the HWRM DMA buffer,
causing a dma_pool_destroy warning when the driver is unloaded:

bnxt_en 0000:99:00.0: dma_pool_destroy bnxt_hwrm, 000000005b089ba8 busy

Fixes: f1e50b276d37 ("bnxt_en: Fix trimming of P5 RX and TX rings")
Reviewed-by: Somnath Kotur <somnath.kotur@broadcom.com>
Signed-off-by: Michael Chan <michael.chan@broadcom.com>
Link: https://lore.kernel.org/r/20240117234515.226944-3-michael.chan@broadcom.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/broadcom/bnxt/bnxt.c