RE: [PATCH v3 3/3] Bluetooth: btintel: propagate version TLV parsing errors
From: K, Kiran
Date: Mon Aug 31 2026 - 07:07:23 EST
Hi Luiz,
>Subject: [PATCH v3 3/3] Bluetooth: btintel: propagate version TLV parsing errors
>
>btintel_read_version_tlv() ignores the parser return value, so setup continues
>with partially initialized version data after a malformed TLV causes parsing to
>stop.
>
>Return the parser error to the caller so an invalid response fails setup instead
>of being treated as successful. Keep this behavioral change separate from the
>bounds checks so it can be reverted independently if an existing controller
>sends malformed data.
>
>Signed-off-by: Laxman Acharya Padhya <acharyalaxman8848@xxxxxxxxx>
>Reviewed-by: Ali Ahmet Memis <ali@xxxxxxxxxxxxxx>
>---
> 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
>887170534..964d2de30 100644
>--- a/drivers/bluetooth/btintel.c
>+++ b/drivers/bluetooth/btintel.c
>@@ -723,6 +723,7 @@ static int btintel_read_version_tlv(struct hci_dev *hdev,
>{
> struct sk_buff *skb;
> const u8 param[1] = { 0xFF };
>+ int err;
>
> if (!version)
> return -EINVAL;
>@@ -741,10 +742,10 @@ static int btintel_read_version_tlv(struct hci_dev
>*hdev,
> return -EIO;
> }
>
>- btintel_parse_version_tlv(hdev, version, skb);
>+ err = btintel_parse_version_tlv(hdev, version, skb);
>
> kfree_skb(skb);
>- return 0;
>+ return err;
> }
>
> /* ------- REGMAP IBT SUPPORT ------- */
>--
>2.51.2
Tested-by: Kiran K <kiran.k@xxxxxxxxx>
Thanks,
Kiran