Re: [PATCH] Bluetooth: btintel: Fix missing free skb in btintel_setup_combined()
From: Tedd Ho-Jeong An
Date: Mon Dec 05 2022 - 17:00:23 EST
Hi ShaoBo,
On Mon, 2022-12-05 at 21:53 +0800, Wang ShaoBo wrote:
> skb allocated by __hci_cmd_sync would not be used whether in checking
> for supported iBT hardware variants or after, we should free it in all
> error branches, this patch makes the case read version failed or default
> error case free skb before return.
>
> Fixes: c86c7285bb08 ("Bluetooth: btintel: Fix the legacy bootloader returns tlv based version")
> Fixes: 019a1caa7fd2 ("Bluetooth: btintel: Refactoring setup routine for bootloader devices")
> Signed-off-by: Wang ShaoBo <bobo.shaobowang@xxxxxxxxxx>
Reviewed-by: Tedd Ho-Jeong An <tedd.an@xxxxxxxxx>
> ---
> drivers/bluetooth/btintel.c | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/bluetooth/btintel.c b/drivers/bluetooth/btintel.c
> index a657e9a3e96a..f6b4b7a1be4c 100644
> --- a/drivers/bluetooth/btintel.c
> +++ b/drivers/bluetooth/btintel.c
> @@ -2524,7 +2524,7 @@ static int btintel_setup_combined(struct hci_dev *hdev)
> */
> err = btintel_read_version(hdev, &ver);
> if (err)
> - return err;
> + break;
>
> /* Apply the device specific HCI quirks
> *
> @@ -2566,7 +2566,8 @@ static int btintel_setup_combined(struct hci_dev *hdev)
> default:
> bt_dev_err(hdev, "Unsupported Intel hw variant (%u)",
> INTEL_HW_VARIANT(ver_tlv.cnvi_bt));
> - return -EINVAL;
> + err = -EINVAL;
> + break;
> }
>
> exit_error:
Regards,
Tedd Ho-Jeong An