2023-06-27 19:38:58

by Luiz Augusto von Dentz

[permalink] [raw]
Subject: pull request: bluetooth-next 2023-06-27

The following changes since commit ae230642190a51b85656d6da2df744d534d59544:

Merge branch 'af_unix-followup-fixes-for-so_passpidfd' (2023-06-27 10:50:25 -0700)

are available in the Git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth-next.git tags/for-net-next-2023-06-27

for you to fetch changes up to e63d8ed98082395ca509163f386f5b04f53872b3:

Bluetooth: msft: Extended monitor tracking by address filter (2023-06-27 11:52:58 -0700)

----------------------------------------------------------------
bluetooth-next pull request for net-next:

- Add Reialtek devcoredump support
- Add support for device 6655:8771
- Add extended monitor tracking by address filter
- Add support for connecting multiple BISes
- Add support to reset via ACPI DSM for Intel controllers
- Add support for MT7922 used in Asus Ally
- Add support Mediatek MT7925
- Fixes for use-after-free in L2CAP

----------------------------------------------------------------
Claudia Draghicescu (1):
Bluetooth: Check for ISO support in controller

Dan Gora (2):
Bluetooth: btrtl: Add missing MODULE_FIRMWARE declarations
Bluetooth: btusb: Add device 6655:8771 to device tables

Hilda Wu (2):
Bluetooth: btrtl: Add Realtek devcoredump support
Bluetooth: msft: Extended monitor tracking by address filter

Iulia Tanasescu (2):
Bluetooth: ISO: Add support for connecting multiple BISes
Bluetooth: ISO: Support multiple BIGs

Ivan Orlov (1):
Bluetooth: hci_sysfs: make bt_class a static const structure

Jiapeng Chong (1):
Bluetooth: hci_conn: Use kmemdup() to replace kzalloc + memcpy

Johan Hovold (3):
Bluetooth: fix invalid-bdaddr quirk for non-persistent setup
Bluetooth: fix use-bdaddr-property quirk
Bluetooth: hci_bcm: do not mark valid bd_addr as invalid

Kiran K (1):
Bluetooth: btintel: Add support to reset bluetooth via ACPI DSM

Luiz Augusto von Dentz (6):
Bluetooth: Consolidate code around sk_alloc into a helper function
Bluetooth: Init sk_peer_* on bt_sock_alloc
Bluetooth: hci_sock: Forward credentials to monitor
Bluetooth: MGMT: Fix marking SCAN_RSP as not connectable
Bluetooth: ISO: Rework sync_interval to be sync_factor
Bluetooth: hci_event: Fix parsing of CIS Established Event

Matthew Anderson (1):
Bluetooth: btusb: Add MT7922 bluetooth ID for the Asus Ally

Max Chou (1):
Bluetooth: btrtl: Correct the length of the HCI command for drop fw

Min-Hua Chen (1):
Bluetooth: btqca: use le32_to_cpu for ver.soc_id

Pauli Virtanen (6):
Bluetooth: ISO: use hci_sync for setting CIG parameters
Bluetooth: ISO: do not emit new LE Create CIS if previous is pending
Bluetooth: hci_event: fix Set CIG Parameters error status handling
Bluetooth: use RCU for hci_conn_params and iterate safely in hci_sync
Bluetooth: hci_event: call disconnect callback before deleting conn
Bluetooth: ISO: fix iso_conn related locking and validity issues

Peter Tsao (1):
Bluetooth: btusb: Add support Mediatek MT7925

Sai Teja Aluvala (2):
Bluetooth: hci_qca: Add qcom devcoredump sysfs support
Bluetooth: hci_qca: Add qcom devcoredump support

Sungwoo Kim (1):
Bluetooth: L2CAP: Fix use-after-free in l2cap_sock_ready_cb

Zhengping Jiang (1):
Bluetooth: L2CAP: Fix use-after-free

drivers/bluetooth/btintel.c | 121 +++++++++++
drivers/bluetooth/btintel.h | 2 +
drivers/bluetooth/btmtk.c | 1 +
drivers/bluetooth/btmtk.h | 5 +
drivers/bluetooth/btqca.c | 2 +-
drivers/bluetooth/btrtl.c | 181 +++++++++++++----
drivers/bluetooth/btrtl.h | 13 ++
drivers/bluetooth/btusb.c | 173 ++++++++++++++--
drivers/bluetooth/hci_bcm.c | 3 +-
drivers/bluetooth/hci_qca.c | 150 +++++++++-----
include/net/bluetooth/bluetooth.h | 5 +-
include/net/bluetooth/hci.h | 11 +
include/net/bluetooth/hci_core.h | 45 ++++-
include/net/bluetooth/hci_sync.h | 2 +-
include/net/bluetooth/mgmt.h | 3 +
net/bluetooth/af_bluetooth.c | 45 +++++
net/bluetooth/bnep/sock.c | 10 +-
net/bluetooth/hci_conn.c | 315 +++++++++++++++++------------
net/bluetooth/hci_core.c | 38 +++-
net/bluetooth/hci_event.c | 190 ++++++++++++------
net/bluetooth/hci_sock.c | 77 ++++++-
net/bluetooth/hci_sync.c | 265 +++++++++++++++++-------
net/bluetooth/hci_sysfs.c | 14 +-
net/bluetooth/hidp/sock.c | 10 +-
net/bluetooth/iso.c | 97 +++++----
net/bluetooth/l2cap_core.c | 5 +
net/bluetooth/l2cap_sock.c | 31 +--
net/bluetooth/mgmt.c | 32 +--
net/bluetooth/msft.c | 412 ++++++++++++++++++++++++++++++++++++--
net/bluetooth/rfcomm/sock.c | 13 +-
net/bluetooth/sco.c | 10 +-
31 files changed, 1753 insertions(+), 528 deletions(-)


2023-06-29 03:15:39

by Jakub Kicinski

[permalink] [raw]
Subject: Re: pull request: bluetooth-next 2023-06-27

On Tue, 27 Jun 2023 12:10:04 -0700 Luiz Augusto von Dentz wrote:
> bluetooth-next pull request for net-next:
>
> - Add Reialtek devcoredump support
> - Add support for device 6655:8771
> - Add extended monitor tracking by address filter
> - Add support for connecting multiple BISes
> - Add support to reset via ACPI DSM for Intel controllers
> - Add support for MT7922 used in Asus Ally
> - Add support Mediatek MT7925
> - Fixes for use-after-free in L2CAP

As you probably realized these came in a little late for our main pull
request for this merge window. Can we cut this down a little bit?
Stick to the fixes and changes which you have the most confidence in
and try to keep the new lines under 1k LoC?

I had a look thru and these changes look like stuff we can definitely
pull:

a8d0b0440b7f ("Bluetooth: btrtl: Add missing MODULE_FIRMWARE declarations")
349cae7e8d84 ("Bluetooth: btusb: Add device 6655:8771 to device tables")
afdbe6303877 ("Bluetooth: btqca: use le32_to_cpu for ver.soc_id")
d1b10da77355 ("Bluetooth: L2CAP: Fix use-after-free")
c1121a116d5f ("Bluetooth: fix invalid-bdaddr quirk for non-persistent setup")
2f8b38e5eba4 ("Bluetooth: fix use-bdaddr-property quirk")
317af9ba6fff ("Bluetooth: L2CAP: Fix use-after-free in l2cap_sock_ready_cb")
a6cfe4261f5e ("Bluetooth: hci_bcm: do not mark valid bd_addr as invalid")
20b3370a6bfb ("Bluetooth: ISO: use hci_sync for setting CIG parameters")
29a3b409a3f2 ("Bluetooth: hci_event: fix Set CIG Parameters error status handling")
48d15256595b ("Bluetooth: MGMT: Fix marking SCAN_RSP as not connectable")
f145eeb779c3 ("Bluetooth: ISO: Rework sync_interval to be sync_factor")
0d39e82e1a7b ("Bluetooth: hci_sysfs: make bt_class a static const structure")
8649851b1945 ("Bluetooth: hci_event: Fix parsing of CIS Established Event")
5b611951e075 ("Bluetooth: btusb: Add MT7922 bluetooth ID for the Asus Ally")
00b51ce9f603 ("Bluetooth: hci_conn: Use kmemdup() to replace kzalloc + memcpy")

You can throw in a few more things you think are important and are
unlikely to cause regressions.

2023-06-29 05:07:22

by Luiz Augusto von Dentz

[permalink] [raw]
Subject: Re: pull request: bluetooth-next 2023-06-27

Hi Jakub,

On Wed, Jun 28, 2023 at 7:38 PM Jakub Kicinski <[email protected]> wrote:
>
> On Tue, 27 Jun 2023 12:10:04 -0700 Luiz Augusto von Dentz wrote:
> > bluetooth-next pull request for net-next:
> >
> > - Add Reialtek devcoredump support
> > - Add support for device 6655:8771
> > - Add extended monitor tracking by address filter
> > - Add support for connecting multiple BISes
> > - Add support to reset via ACPI DSM for Intel controllers
> > - Add support for MT7922 used in Asus Ally
> > - Add support Mediatek MT7925
> > - Fixes for use-after-free in L2CAP
>
> As you probably realized these came in a little late for our main pull
> request for this merge window. Can we cut this down a little bit?
> Stick to the fixes and changes which you have the most confidence in
> and try to keep the new lines under 1k LoC?

Yeah, sorry about that I had a business trip which sort of messed up
the pull request.

> I had a look thru and these changes look like stuff we can definitely
> pull:
>
> a8d0b0440b7f ("Bluetooth: btrtl: Add missing MODULE_FIRMWARE declarations")
> 349cae7e8d84 ("Bluetooth: btusb: Add device 6655:8771 to device tables")
> afdbe6303877 ("Bluetooth: btqca: use le32_to_cpu for ver.soc_id")
> d1b10da77355 ("Bluetooth: L2CAP: Fix use-after-free")
> c1121a116d5f ("Bluetooth: fix invalid-bdaddr quirk for non-persistent setup")
> 2f8b38e5eba4 ("Bluetooth: fix use-bdaddr-property quirk")
> 317af9ba6fff ("Bluetooth: L2CAP: Fix use-after-free in l2cap_sock_ready_cb")
> a6cfe4261f5e ("Bluetooth: hci_bcm: do not mark valid bd_addr as invalid")
> 20b3370a6bfb ("Bluetooth: ISO: use hci_sync for setting CIG parameters")
> 29a3b409a3f2 ("Bluetooth: hci_event: fix Set CIG Parameters error status handling")
> 48d15256595b ("Bluetooth: MGMT: Fix marking SCAN_RSP as not connectable")
> f145eeb779c3 ("Bluetooth: ISO: Rework sync_interval to be sync_factor")
> 0d39e82e1a7b ("Bluetooth: hci_sysfs: make bt_class a static const structure")
> 8649851b1945 ("Bluetooth: hci_event: Fix parsing of CIS Established Event")
> 5b611951e075 ("Bluetooth: btusb: Add MT7922 bluetooth ID for the Asus Ally")
> 00b51ce9f603 ("Bluetooth: hci_conn: Use kmemdup() to replace kzalloc + memcpy")
>
> You can throw in a few more things you think are important and are
> unlikely to cause regressions.

Yeah, those seem to be the most important ones, do you want me to redo
the pull-request or perhaps you can just cherry-pick them?

--
Luiz Augusto von Dentz

2023-06-29 15:23:56

by Jakub Kicinski

[permalink] [raw]
Subject: Re: pull request: bluetooth-next 2023-06-27

On Wed, 28 Jun 2023 22:01:05 -0700 Luiz Augusto von Dentz wrote:
> > a8d0b0440b7f ("Bluetooth: btrtl: Add missing MODULE_FIRMWARE declarations")
> > 349cae7e8d84 ("Bluetooth: btusb: Add device 6655:8771 to device tables")
> > afdbe6303877 ("Bluetooth: btqca: use le32_to_cpu for ver.soc_id")
> > d1b10da77355 ("Bluetooth: L2CAP: Fix use-after-free")
> > c1121a116d5f ("Bluetooth: fix invalid-bdaddr quirk for non-persistent setup")
> > 2f8b38e5eba4 ("Bluetooth: fix use-bdaddr-property quirk")
> > 317af9ba6fff ("Bluetooth: L2CAP: Fix use-after-free in l2cap_sock_ready_cb")
> > a6cfe4261f5e ("Bluetooth: hci_bcm: do not mark valid bd_addr as invalid")
> > 20b3370a6bfb ("Bluetooth: ISO: use hci_sync for setting CIG parameters")
> > 29a3b409a3f2 ("Bluetooth: hci_event: fix Set CIG Parameters error status handling")
> > 48d15256595b ("Bluetooth: MGMT: Fix marking SCAN_RSP as not connectable")
> > f145eeb779c3 ("Bluetooth: ISO: Rework sync_interval to be sync_factor")
> > 0d39e82e1a7b ("Bluetooth: hci_sysfs: make bt_class a static const structure")
> > 8649851b1945 ("Bluetooth: hci_event: Fix parsing of CIS Established Event")
> > 5b611951e075 ("Bluetooth: btusb: Add MT7922 bluetooth ID for the Asus Ally")
> > 00b51ce9f603 ("Bluetooth: hci_conn: Use kmemdup() to replace kzalloc + memcpy")
> >
> > You can throw in a few more things you think are important and are
> > unlikely to cause regressions.
>
> Yeah, those seem to be the most important ones, do you want me to redo
> the pull-request or perhaps you can just cherry-pick them?

Nothing to add to that list?
Let me see if I can cherry-pick them cleanly.

2023-06-29 18:19:59

by Jakub Kicinski

[permalink] [raw]
Subject: Re: pull request: bluetooth-next 2023-06-27

On Thu, 29 Jun 2023 08:22:41 -0700 Jakub Kicinski wrote:
> On Wed, 28 Jun 2023 22:01:05 -0700 Luiz Augusto von Dentz wrote:
> > > a8d0b0440b7f ("Bluetooth: btrtl: Add missing MODULE_FIRMWARE declarations")
> > > 349cae7e8d84 ("Bluetooth: btusb: Add device 6655:8771 to device tables")
> > > afdbe6303877 ("Bluetooth: btqca: use le32_to_cpu for ver.soc_id")
> > > d1b10da77355 ("Bluetooth: L2CAP: Fix use-after-free")
> > > c1121a116d5f ("Bluetooth: fix invalid-bdaddr quirk for non-persistent setup")
> > > 2f8b38e5eba4 ("Bluetooth: fix use-bdaddr-property quirk")
> > > 317af9ba6fff ("Bluetooth: L2CAP: Fix use-after-free in l2cap_sock_ready_cb")
> > > a6cfe4261f5e ("Bluetooth: hci_bcm: do not mark valid bd_addr as invalid")
> > > 20b3370a6bfb ("Bluetooth: ISO: use hci_sync for setting CIG parameters")
> > > 29a3b409a3f2 ("Bluetooth: hci_event: fix Set CIG Parameters error status handling")
> > > 48d15256595b ("Bluetooth: MGMT: Fix marking SCAN_RSP as not connectable")
> > > f145eeb779c3 ("Bluetooth: ISO: Rework sync_interval to be sync_factor")
> > > 0d39e82e1a7b ("Bluetooth: hci_sysfs: make bt_class a static const structure")
> > > 8649851b1945 ("Bluetooth: hci_event: Fix parsing of CIS Established Event")
> > > 5b611951e075 ("Bluetooth: btusb: Add MT7922 bluetooth ID for the Asus Ally")
> > > 00b51ce9f603 ("Bluetooth: hci_conn: Use kmemdup() to replace kzalloc + memcpy")
> > >
> > > You can throw in a few more things you think are important and are
> > > unlikely to cause regressions.
> >
> > Yeah, those seem to be the most important ones, do you want me to redo
> > the pull-request or perhaps you can just cherry-pick them?
>
> Nothing to add to that list?
> Let me see if I can cherry-pick them cleanly.

I pushed these to net now, hopefully I didn't mess it up :)

2023-06-29 18:36:18

by Luiz Augusto von Dentz

[permalink] [raw]
Subject: Re: pull request: bluetooth-next 2023-06-27

Hi Jakub,

On Thu, Jun 29, 2023 at 10:59 AM Jakub Kicinski <[email protected]> wrote:
>
> On Thu, 29 Jun 2023 08:22:41 -0700 Jakub Kicinski wrote:
> > On Wed, 28 Jun 2023 22:01:05 -0700 Luiz Augusto von Dentz wrote:
> > > > a8d0b0440b7f ("Bluetooth: btrtl: Add missing MODULE_FIRMWARE declarations")
> > > > 349cae7e8d84 ("Bluetooth: btusb: Add device 6655:8771 to device tables")
> > > > afdbe6303877 ("Bluetooth: btqca: use le32_to_cpu for ver.soc_id")
> > > > d1b10da77355 ("Bluetooth: L2CAP: Fix use-after-free")
> > > > c1121a116d5f ("Bluetooth: fix invalid-bdaddr quirk for non-persistent setup")
> > > > 2f8b38e5eba4 ("Bluetooth: fix use-bdaddr-property quirk")
> > > > 317af9ba6fff ("Bluetooth: L2CAP: Fix use-after-free in l2cap_sock_ready_cb")
> > > > a6cfe4261f5e ("Bluetooth: hci_bcm: do not mark valid bd_addr as invalid")
> > > > 20b3370a6bfb ("Bluetooth: ISO: use hci_sync for setting CIG parameters")
> > > > 29a3b409a3f2 ("Bluetooth: hci_event: fix Set CIG Parameters error status handling")
> > > > 48d15256595b ("Bluetooth: MGMT: Fix marking SCAN_RSP as not connectable")
> > > > f145eeb779c3 ("Bluetooth: ISO: Rework sync_interval to be sync_factor")
> > > > 0d39e82e1a7b ("Bluetooth: hci_sysfs: make bt_class a static const structure")
> > > > 8649851b1945 ("Bluetooth: hci_event: Fix parsing of CIS Established Event")
> > > > 5b611951e075 ("Bluetooth: btusb: Add MT7922 bluetooth ID for the Asus Ally")
> > > > 00b51ce9f603 ("Bluetooth: hci_conn: Use kmemdup() to replace kzalloc + memcpy")
> > > >
> > > > You can throw in a few more things you think are important and are
> > > > unlikely to cause regressions.
> > >
> > > Yeah, those seem to be the most important ones, do you want me to redo
> > > the pull-request or perhaps you can just cherry-pick them?
> >
> > Nothing to add to that list?
> > Let me see if I can cherry-pick them cleanly.
>
> I pushed these to net now, hopefully I didn't mess it up :)

Great, thanks. I guess I will change the frequency we do pull request
to net-next going forward, perhaps something doing it
bi-weekly/monthly would be better to avoid risking missing the merge
window if that happens to conflict with some event, etc.

--
Luiz Augusto von Dentz

2023-06-29 18:43:48

by Jakub Kicinski

[permalink] [raw]
Subject: Re: pull request: bluetooth-next 2023-06-27

On Thu, 29 Jun 2023 11:34:34 -0700 Luiz Augusto von Dentz wrote:
> > > Nothing to add to that list?
> > > Let me see if I can cherry-pick them cleanly.
> >
> > I pushed these to net now, hopefully I didn't mess it up :)
>
> Great, thanks. I guess I will change the frequency we do pull request
> to net-next going forward, perhaps something doing it
> bi-weekly/monthly would be better to avoid risking missing the merge
> window if that happens to conflict with some event, etc.

Maybe every 3 weeks would be optimal? Basically the week after -rc3,
the week after -rc6 and then a small catch up right before the merge
window if needed? Obviously easier said than done as life tends to
not align with fixed schedules..

2023-06-29 18:48:21

by Luiz Augusto von Dentz

[permalink] [raw]
Subject: Re: pull request: bluetooth-next 2023-06-27

Hi Jakub,

On Thu, Jun 29, 2023 at 11:43 AM Jakub Kicinski <[email protected]> wrote:
>
> On Thu, 29 Jun 2023 11:34:34 -0700 Luiz Augusto von Dentz wrote:
> > > > Nothing to add to that list?
> > > > Let me see if I can cherry-pick them cleanly.
> > >
> > > I pushed these to net now, hopefully I didn't mess it up :)
> >
> > Great, thanks. I guess I will change the frequency we do pull request
> > to net-next going forward, perhaps something doing it
> > bi-weekly/monthly would be better to avoid risking missing the merge
> > window if that happens to conflict with some event, etc.
>
> Maybe every 3 weeks would be optimal? Basically the week after -rc3,
> the week after -rc6 and then a small catch up right before the merge
> window if needed? Obviously easier said than done as life tends to
> not align with fixed schedules..

Sounds great, will put a calendar reminding me to send pull-requests
every 3 weeks.

--
Luiz Augusto von Dentz