All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2] bluetooth: hci_event: don't print an error on vendor events
@ 2022-03-02 18:35 Caleb Connolly
  2022-03-02 19:00 ` [v2] " bluez.test.bot
  2022-03-02 19:20 ` [PATCH v2] " Marcel Holtmann
  0 siblings, 2 replies; 5+ messages in thread
From: Caleb Connolly @ 2022-03-02 18:35 UTC (permalink / raw)
  To: caleb.connolly, Marcel Holtmann, Johan Hedberg,
	Luiz Augusto von Dentz, David S . Miller, Jakub Kicinski,
	linux-bluetooth, netdev, linux-kernel, linux-arm-msm

Since commit 3e54c5890c87 ("Bluetooth: hci_event: Use of a function table to handle HCI events"),
some devices see warnings being printed for vendor events, e.g.

[   75.806141] Bluetooth: hci0: setting up wcn399x
[   75.948311] Bluetooth: hci0: unexpected event 0xff length: 14 > 0
[   75.955552] Bluetooth: hci0: QCA Product ID   :0x0000000a
[   75.961369] Bluetooth: hci0: QCA SOC Version  :0x40010214
[   75.967417] Bluetooth: hci0: QCA ROM Version  :0x00000201
[   75.973363] Bluetooth: hci0: QCA Patch Version:0x00000001
[   76.000289] Bluetooth: hci0: QCA controller version 0x02140201
[   76.006727] Bluetooth: hci0: QCA Downloading qca/crbtfw21.tlv
[   76.986850] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
[   77.013574] Bluetooth: hci0: QCA Downloading qca/oneplus6/crnv21.bin
[   77.024302] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
[   77.032681] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
[   77.040674] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
[   77.049251] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
[   77.057997] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
[   77.066320] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
[   77.075065] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
[   77.083073] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
[   77.091250] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
[   77.099417] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
[   77.110166] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
[   77.118672] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
[   77.127449] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
[   77.137190] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
[   77.146192] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
[   77.154242] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
[   77.163183] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
[   77.171202] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
[   77.179364] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
[   77.187259] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
[   77.198451] Bluetooth: hci0: QCA setup on UART is completed

Avoid printing the event length warning for vendor events, this reverts
to the previous behaviour where such warnings weren't printed.

Fixes: 3e54c5890c87 ("Bluetooth: hci_event: Use of a function table to handle HCI events")
Signed-off-by: Caleb Connolly <caleb.connolly@linaro.org>
---
Changes since v1:
 * Don't return early! Vendor events still get parsed despite the
   warning. I should have looked a little more closely at that...
---
 net/bluetooth/hci_event.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/net/bluetooth/hci_event.c b/net/bluetooth/hci_event.c
index fc30f4c03d29..9b7c9ab77971 100644
--- a/net/bluetooth/hci_event.c
+++ b/net/bluetooth/hci_event.c
@@ -6822,7 +6822,7 @@ static void hci_event_func(struct hci_dev *hdev, u8 event, struct sk_buff *skb,
 	 * possible to partially parse the event so leave to callback to
 	 * decide if that is acceptable.
 	 */
-	if (skb->len > ev->max_len)
+	if (skb->len > ev->max_len && event != HCI_EV_VENDOR)
 		bt_dev_warn(hdev, "unexpected event 0x%2.2x length: %u > %u",
 			    event, skb->len, ev->max_len);
 
-- 
2.35.1


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* RE: [v2] bluetooth: hci_event: don't print an error on vendor events
  2022-03-02 18:35 [PATCH v2] bluetooth: hci_event: don't print an error on vendor events Caleb Connolly
@ 2022-03-02 19:00 ` bluez.test.bot
  2022-03-02 19:20 ` [PATCH v2] " Marcel Holtmann
  1 sibling, 0 replies; 5+ messages in thread
From: bluez.test.bot @ 2022-03-02 19:00 UTC (permalink / raw)
  To: linux-bluetooth, caleb.connolly

[-- Attachment #1: Type: text/plain, Size: 553 bytes --]

This is an automated email and please do not reply to this email.

Dear Submitter,

Thank you for submitting the patches to the linux bluetooth mailing list.
While preparing the CI tests, the patches you submitted couldn't be applied to the current HEAD of the repository.

----- Output -----
error: patch failed: net/bluetooth/hci_event.c:6822
error: net/bluetooth/hci_event.c: patch does not apply
hint: Use 'git am --show-current-patch' to see the failed patch


Please resolve the issue and submit the patches again.


---
Regards,
Linux Bluetooth


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH v2] bluetooth: hci_event: don't print an error on vendor events
  2022-03-02 18:35 [PATCH v2] bluetooth: hci_event: don't print an error on vendor events Caleb Connolly
  2022-03-02 19:00 ` [v2] " bluez.test.bot
@ 2022-03-02 19:20 ` Marcel Holtmann
  2022-03-02 20:58   ` Luiz Augusto von Dentz
  1 sibling, 1 reply; 5+ messages in thread
From: Marcel Holtmann @ 2022-03-02 19:20 UTC (permalink / raw)
  To: Caleb Connolly
  Cc: Johan Hedberg, Luiz Augusto von Dentz, David S. Miller,
	Jakub Kicinski, linux-bluetooth, netdev, linux-kernel,
	linux-arm-msm

Hi Caleb,

> Since commit 3e54c5890c87 ("Bluetooth: hci_event: Use of a function table to handle HCI events"),
> some devices see warnings being printed for vendor events, e.g.
> 
> [   75.806141] Bluetooth: hci0: setting up wcn399x
> [   75.948311] Bluetooth: hci0: unexpected event 0xff length: 14 > 0
> [   75.955552] Bluetooth: hci0: QCA Product ID   :0x0000000a
> [   75.961369] Bluetooth: hci0: QCA SOC Version  :0x40010214
> [   75.967417] Bluetooth: hci0: QCA ROM Version  :0x00000201
> [   75.973363] Bluetooth: hci0: QCA Patch Version:0x00000001
> [   76.000289] Bluetooth: hci0: QCA controller version 0x02140201
> [   76.006727] Bluetooth: hci0: QCA Downloading qca/crbtfw21.tlv
> [   76.986850] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
> [   77.013574] Bluetooth: hci0: QCA Downloading qca/oneplus6/crnv21.bin
> [   77.024302] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
> [   77.032681] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
> [   77.040674] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
> [   77.049251] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
> [   77.057997] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
> [   77.066320] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
> [   77.075065] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
> [   77.083073] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
> [   77.091250] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
> [   77.099417] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
> [   77.110166] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
> [   77.118672] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
> [   77.127449] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
> [   77.137190] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
> [   77.146192] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
> [   77.154242] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
> [   77.163183] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
> [   77.171202] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
> [   77.179364] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
> [   77.187259] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
> [   77.198451] Bluetooth: hci0: QCA setup on UART is completed
> 
> Avoid printing the event length warning for vendor events, this reverts
> to the previous behaviour where such warnings weren't printed.
> 
> Fixes: 3e54c5890c87 ("Bluetooth: hci_event: Use of a function table to handle HCI events")
> Signed-off-by: Caleb Connolly <caleb.connolly@linaro.org>
> ---
> Changes since v1:
> * Don't return early! Vendor events still get parsed despite the
>   warning. I should have looked a little more closely at that...
> ---
> net/bluetooth/hci_event.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)

patch has been applied to bluetooth-stable tree.

Regards

Marcel


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH v2] bluetooth: hci_event: don't print an error on vendor events
  2022-03-02 19:20 ` [PATCH v2] " Marcel Holtmann
@ 2022-03-02 20:58   ` Luiz Augusto von Dentz
  2022-03-03 12:37     ` Marcel Holtmann
  0 siblings, 1 reply; 5+ messages in thread
From: Luiz Augusto von Dentz @ 2022-03-02 20:58 UTC (permalink / raw)
  To: Marcel Holtmann
  Cc: Caleb Connolly, Johan Hedberg, David S. Miller, Jakub Kicinski,
	linux-bluetooth, open list:NETWORKING [GENERAL],
	Linux Kernel Mailing List, linux-arm-msm

Hi Marcel, Caleb,

On Wed, Mar 2, 2022 at 11:20 AM Marcel Holtmann <marcel@holtmann.org> wrote:
>
> Hi Caleb,
>
> > Since commit 3e54c5890c87 ("Bluetooth: hci_event: Use of a function table to handle HCI events"),
> > some devices see warnings being printed for vendor events, e.g.
> >
> > [   75.806141] Bluetooth: hci0: setting up wcn399x
> > [   75.948311] Bluetooth: hci0: unexpected event 0xff length: 14 > 0
> > [   75.955552] Bluetooth: hci0: QCA Product ID   :0x0000000a
> > [   75.961369] Bluetooth: hci0: QCA SOC Version  :0x40010214
> > [   75.967417] Bluetooth: hci0: QCA ROM Version  :0x00000201
> > [   75.973363] Bluetooth: hci0: QCA Patch Version:0x00000001
> > [   76.000289] Bluetooth: hci0: QCA controller version 0x02140201
> > [   76.006727] Bluetooth: hci0: QCA Downloading qca/crbtfw21.tlv
> > [   76.986850] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
> > [   77.013574] Bluetooth: hci0: QCA Downloading qca/oneplus6/crnv21.bin
> > [   77.024302] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
> > [   77.032681] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
> > [   77.040674] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
> > [   77.049251] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
> > [   77.057997] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
> > [   77.066320] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
> > [   77.075065] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
> > [   77.083073] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
> > [   77.091250] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
> > [   77.099417] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
> > [   77.110166] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
> > [   77.118672] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
> > [   77.127449] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
> > [   77.137190] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
> > [   77.146192] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
> > [   77.154242] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
> > [   77.163183] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
> > [   77.171202] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
> > [   77.179364] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
> > [   77.187259] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
> > [   77.198451] Bluetooth: hci0: QCA setup on UART is completed
> >
> > Avoid printing the event length warning for vendor events, this reverts
> > to the previous behaviour where such warnings weren't printed.
> >
> > Fixes: 3e54c5890c87 ("Bluetooth: hci_event: Use of a function table to handle HCI events")
> > Signed-off-by: Caleb Connolly <caleb.connolly@linaro.org>
> > ---
> > Changes since v1:
> > * Don't return early! Vendor events still get parsed despite the
> >   warning. I should have looked a little more closely at that...
> > ---
> > net/bluetooth/hci_event.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
>
> patch has been applied to bluetooth-stable tree.
>
> Regards
>
> Marcel

I believe a proper fix has already been pushed to bluetooth-next:

https://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth-next.git/commit/?id=314d8cd2787418c5ac6b02035c344644f47b292b

HCI_EV_VENDOR shall be assumed to be variable length and that also
uses bt_dev_warn_ratelimited to avoid spamming the logs in case it
still fails.

-- 
Luiz Augusto von Dentz

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH v2] bluetooth: hci_event: don't print an error on vendor events
  2022-03-02 20:58   ` Luiz Augusto von Dentz
@ 2022-03-03 12:37     ` Marcel Holtmann
  0 siblings, 0 replies; 5+ messages in thread
From: Marcel Holtmann @ 2022-03-03 12:37 UTC (permalink / raw)
  To: Luiz Augusto von Dentz
  Cc: Caleb Connolly, Johan Hedberg, David S. Miller, Jakub Kicinski,
	linux-bluetooth, open list:NETWORKING [GENERAL],
	Linux Kernel Mailing List, linux-arm-msm

Hi Luiz,

>>> Since commit 3e54c5890c87 ("Bluetooth: hci_event: Use of a function table to handle HCI events"),
>>> some devices see warnings being printed for vendor events, e.g.
>>> 
>>> [   75.806141] Bluetooth: hci0: setting up wcn399x
>>> [   75.948311] Bluetooth: hci0: unexpected event 0xff length: 14 > 0
>>> [   75.955552] Bluetooth: hci0: QCA Product ID   :0x0000000a
>>> [   75.961369] Bluetooth: hci0: QCA SOC Version  :0x40010214
>>> [   75.967417] Bluetooth: hci0: QCA ROM Version  :0x00000201
>>> [   75.973363] Bluetooth: hci0: QCA Patch Version:0x00000001
>>> [   76.000289] Bluetooth: hci0: QCA controller version 0x02140201
>>> [   76.006727] Bluetooth: hci0: QCA Downloading qca/crbtfw21.tlv
>>> [   76.986850] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
>>> [   77.013574] Bluetooth: hci0: QCA Downloading qca/oneplus6/crnv21.bin
>>> [   77.024302] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
>>> [   77.032681] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
>>> [   77.040674] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
>>> [   77.049251] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
>>> [   77.057997] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
>>> [   77.066320] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
>>> [   77.075065] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
>>> [   77.083073] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
>>> [   77.091250] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
>>> [   77.099417] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
>>> [   77.110166] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
>>> [   77.118672] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
>>> [   77.127449] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
>>> [   77.137190] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
>>> [   77.146192] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
>>> [   77.154242] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
>>> [   77.163183] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
>>> [   77.171202] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
>>> [   77.179364] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
>>> [   77.187259] Bluetooth: hci0: unexpected event 0xff length: 3 > 0
>>> [   77.198451] Bluetooth: hci0: QCA setup on UART is completed
>>> 
>>> Avoid printing the event length warning for vendor events, this reverts
>>> to the previous behaviour where such warnings weren't printed.
>>> 
>>> Fixes: 3e54c5890c87 ("Bluetooth: hci_event: Use of a function table to handle HCI events")
>>> Signed-off-by: Caleb Connolly <caleb.connolly@linaro.org>
>>> ---
>>> Changes since v1:
>>> * Don't return early! Vendor events still get parsed despite the
>>>  warning. I should have looked a little more closely at that...
>>> ---
>>> net/bluetooth/hci_event.c | 2 +-
>>> 1 file changed, 1 insertion(+), 1 deletion(-)
>> 
>> patch has been applied to bluetooth-stable tree.
>> 
> I believe a proper fix has already been pushed to bluetooth-next:
> 
> https://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth-next.git/commit/?id=314d8cd2787418c5ac6b02035c344644f47b292b
> 
> HCI_EV_VENDOR shall be assumed to be variable length and that also
> uses bt_dev_warn_ratelimited to avoid spamming the logs in case it
> still fails.

ok, I reverted the patch and lets this go via net-next tree then. Stable can pick this up if it really becomes a larger problem.

Regards

Marcel


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2022-03-03 12:37 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-03-02 18:35 [PATCH v2] bluetooth: hci_event: don't print an error on vendor events Caleb Connolly
2022-03-02 19:00 ` [v2] " bluez.test.bot
2022-03-02 19:20 ` [PATCH v2] " Marcel Holtmann
2022-03-02 20:58   ` Luiz Augusto von Dentz
2022-03-03 12:37     ` Marcel Holtmann

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.