From c0b865d4717d85138f716d42ca186672b060f166 Mon Sep 17 00:00:00 2001 From: Congwen Zhang Date: Tue, 5 Sep 2017 16:46:57 +0800 Subject: [PATCH] net/cxgbe: fix memory leak In function t4_wr_mbox_meat_timeout(), dynamic memory stored in 'temp' variable and it is not freed when the function return, this is a possible memory leak. Fixes: 3bd122eef2cc ("cxgbe/base: add hardware API for Chelsio T5 series adapters") Cc: stable@dpdk.org Signed-off-by: Congwen Zhang Acked-by: Rahul Lakkireddy --- drivers/net/cxgbe/base/t4_hw.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/net/cxgbe/base/t4_hw.c b/drivers/net/cxgbe/base/t4_hw.c index a8ccea0084..013d996b44 100644 --- a/drivers/net/cxgbe/base/t4_hw.c +++ b/drivers/net/cxgbe/base/t4_hw.c @@ -403,6 +403,7 @@ int t4_wr_mbox_meat_timeout(struct adapter *adap, int mbox, t4_os_atomic_list_del(&entry, &adap->mbox_list, &adap->mbox_lock); t4_report_fw_error(adap); + free(temp); return (pcie_fw & F_PCIE_FW_ERR) ? -ENXIO : -EBUSY; } @@ -446,6 +447,7 @@ int t4_wr_mbox_meat_timeout(struct adapter *adap, int mbox, &adap->mbox_list, &adap->mbox_lock)); t4_report_fw_error(adap); + free(temp); return (v == X_MBOWNER_FW ? -EBUSY : -ETIMEDOUT); } @@ -546,6 +548,7 @@ int t4_wr_mbox_meat_timeout(struct adapter *adap, int mbox, T4_OS_MBOX_LOCKING( t4_os_atomic_list_del(&entry, &adap->mbox_list, &adap->mbox_lock)); + free(temp); return -G_FW_CMD_RETVAL((int)res); } } -- 2.20.1