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