aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/ath/ath10k/core.c
diff options
context:
space:
mode:
authorRaja Mani <rmani@qti.qualcomm.com>2016-03-10 10:25:07 +0530
committerKalle Valo <kvalo@qca.qualcomm.com>2016-03-18 09:53:26 +0200
commitb9c191be3fbdd9d78be11160dd7a3ddb9fdc6d42 (patch)
tree344f41ef9eb7620a8f473e18307ee7324d69532f /drivers/net/wireless/ath/ath10k/core.c
parentath10k: move mgmt descriptor limit handle under mgmt_tx (diff)
downloadlinux-dev-b9c191be3fbdd9d78be11160dd7a3ddb9fdc6d42.tar.xz
linux-dev-b9c191be3fbdd9d78be11160dd7a3ddb9fdc6d42.zip
ath10k: free cached fw bin contents when get board id fails
ath10k_core_probe_fw() simply returns error without freeing cached firmware file content when get board id operation fails. Free cached fw bin data in failure case to avoid memory leak. Fixes: db0984e51a18 ("ath10k: select board data based on BMI chip id and board id") Signed-off-by: Raja Mani <rmani@qti.qualcomm.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
Diffstat (limited to 'drivers/net/wireless/ath/ath10k/core.c')
-rw-r--r--drivers/net/wireless/ath/ath10k/core.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/wireless/ath/ath10k/core.c b/drivers/net/wireless/ath/ath10k/core.c
index 2389c0713c13..d5d0b88aa5fe 100644
--- a/drivers/net/wireless/ath/ath10k/core.c
+++ b/drivers/net/wireless/ath/ath10k/core.c
@@ -1839,7 +1839,7 @@ static int ath10k_core_probe_fw(struct ath10k *ar)
if (ret && ret != -EOPNOTSUPP) {
ath10k_err(ar, "failed to get board id from otp: %d\n",
ret);
- return ret;
+ goto err_free_firmware_files;
}
ret = ath10k_core_fetch_board_file(ar);