diff mbox series

Bluetooth: l2cap: Don't double set the HCI_CONN_MGMT_CONNECTED bit

Message ID 20240404185022.1.Ic27505c8f1ca7d4a653b1dcc1b08cdfc862a4622@changeid
State New
Headers show
Series Bluetooth: l2cap: Don't double set the HCI_CONN_MGMT_CONNECTED bit | expand

Commit Message

Archie Pusaka April 4, 2024, 10:50 a.m. UTC
From: Archie Pusaka <apusaka@chromium.org>

The bit is set and tested inside mgmt_device_connected(), therefore we
must not set it just outside the function.

Fixes: eeda1bf97bb5 ("Bluetooth: hci_event: Fix not indicating new connection for BIG Sync")
Signed-off-by: Archie Pusaka <apusaka@chromium.org>
Reviewed-by: Manish Mandlik <mmandlik@chromium.org>

---

 net/bluetooth/l2cap_core.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

Comments

patchwork-bot+bluetooth@kernel.org April 4, 2024, 4:30 p.m. UTC | #1
Hello:

This patch was applied to bluetooth/bluetooth-next.git (master)
by Luiz Augusto von Dentz <luiz.von.dentz@intel.com>:

On Thu,  4 Apr 2024 18:50:23 +0800 you wrote:
> From: Archie Pusaka <apusaka@chromium.org>
> 
> The bit is set and tested inside mgmt_device_connected(), therefore we
> must not set it just outside the function.
> 
> Fixes: eeda1bf97bb5 ("Bluetooth: hci_event: Fix not indicating new connection for BIG Sync")
> Signed-off-by: Archie Pusaka <apusaka@chromium.org>
> Reviewed-by: Manish Mandlik <mmandlik@chromium.org>
> 
> [...]

Here is the summary with links:
  - Bluetooth: l2cap: Don't double set the HCI_CONN_MGMT_CONNECTED bit
    https://git.kernel.org/bluetooth/bluetooth-next/c/d6126dfaf91e

You are awesome, thank you!
diff mbox series

Patch

diff --git a/net/bluetooth/l2cap_core.c b/net/bluetooth/l2cap_core.c
index cf3b8e9b7b3ba..b0970462a6899 100644
--- a/net/bluetooth/l2cap_core.c
+++ b/net/bluetooth/l2cap_core.c
@@ -4063,8 +4063,7 @@  static int l2cap_connect_req(struct l2cap_conn *conn,
 		return -EPROTO;
 
 	hci_dev_lock(hdev);
-	if (hci_dev_test_flag(hdev, HCI_MGMT) &&
-	    !test_and_set_bit(HCI_CONN_MGMT_CONNECTED, &hcon->flags))
+	if (hci_dev_test_flag(hdev, HCI_MGMT))
 		mgmt_device_connected(hdev, hcon, NULL, 0);
 	hci_dev_unlock(hdev);