| From 3168c19d7eb17a0108a3b60ad8e8c1b18ea05c63 Mon Sep 17 00:00:00 2001 |
| From: Colin Ian King <colin.king@canonical.com> |
| Date: Fri, 29 Nov 2019 17:36:35 +0000 |
| Subject: Bluetooth: btusb: fix memory leak on fw |
| |
| From: Colin Ian King <colin.king@canonical.com> |
| |
| commit 3168c19d7eb17a0108a3b60ad8e8c1b18ea05c63 upstream. |
| |
| Currently the error return path when the call to btusb_mtk_hci_wmt_sync |
| fails does not free fw. Fix this by returning via the error_release_fw |
| label that performs the free'ing. |
| |
| Addresses-Coverity: ("Resource leak") |
| Fixes: a1c49c434e15 ("Bluetooth: btusb: Add protocol support for MediaTek MT7668U USB devices") |
| Signed-off-by: Colin Ian King <colin.king@canonical.com> |
| Signed-off-by: Marcel Holtmann <marcel@holtmann.org> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| drivers/bluetooth/btusb.c | 2 +- |
| 1 file changed, 1 insertion(+), 1 deletion(-) |
| |
| --- a/drivers/bluetooth/btusb.c |
| +++ b/drivers/bluetooth/btusb.c |
| @@ -2850,7 +2850,7 @@ static int btusb_mtk_setup_firmware(stru |
| err = btusb_mtk_hci_wmt_sync(hdev, &wmt_params); |
| if (err < 0) { |
| bt_dev_err(hdev, "Failed to send wmt rst (%d)", err); |
| - return err; |
| + goto err_release_fw; |
| } |
| |
| /* Wait a few moments for firmware activation done */ |