diff mbox series

[BlueZ] shared/bap: Fix attempting to disable stream when it is idle

Message ID 20220912214257.173804-1-luiz.dentz@gmail.com (mailing list archive)
State Accepted
Commit 877b88c5f2e92dd8a6a2f98ee4a25c4c30ddd887
Headers show
Series [BlueZ] shared/bap: Fix attempting to disable stream when it is idle | expand

Checks

Context Check Description
tedd_an/pre-ci_am success Success
tedd_an/checkpatch success Checkpatch PASS
tedd_an/gitlint success Gitlint PASS
tedd_an/setupell success Setup ELL PASS
tedd_an/buildprep success Build Prep PASS
tedd_an/build success Build Configuration PASS
tedd_an/makecheck success Make Check PASS
tedd_an/makecheckvalgrind success Make Check PASS
tedd_an/makedistcheck success Make Distcheck PASS
tedd_an/build_extell success Build External ELL PASS
tedd_an/build_extell_make success Build Make with External ELL PASS
tedd_an/scan_build success Pass

Commit Message

Luiz Augusto von Dentz Sept. 12, 2022, 9:42 p.m. UTC
From: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>

If the stream is already in idle state do not attempt to disable it
again.
---
 src/shared/bap.c | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

Comments

bluez.test.bot@gmail.com Sept. 12, 2022, 10:20 p.m. UTC | #1
This is automated email and please do not reply to this email!

Dear submitter,

Thank you for submitting the patches to the linux bluetooth mailing list.
This is a CI test results with your patch series:
PW Link:https://patchwork.kernel.org/project/bluetooth/list/?series=676340

---Test result---

Test Summary:
CheckPatch                    PASS      1.53 seconds
GitLint                       PASS      0.98 seconds
Prep - Setup ELL              PASS      26.18 seconds
Build - Prep                  PASS      0.89 seconds
Build - Configure             PASS      8.22 seconds
Build - Make                  PASS      728.95 seconds
Make Check                    PASS      11.08 seconds
Make Check w/Valgrind         PASS      286.38 seconds
Make Distcheck                PASS      235.27 seconds
Build w/ext ELL - Configure   PASS      8.27 seconds
Build w/ext ELL - Make        PASS      82.56 seconds
Incremental Build w/ patches  PASS      0.00 seconds
Scan Build                    PASS      504.29 seconds



---
Regards,
Linux Bluetooth
patchwork-bot+bluetooth@kernel.org Sept. 13, 2022, 1 a.m. UTC | #2
Hello:

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

On Mon, 12 Sep 2022 14:42:57 -0700 you wrote:
> From: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
> 
> If the stream is already in idle state do not attempt to disable it
> again.
> ---
>  src/shared/bap.c | 13 ++++++++-----
>  1 file changed, 8 insertions(+), 5 deletions(-)

Here is the summary with links:
  - [BlueZ] shared/bap: Fix attempting to disable stream when it is idle
    https://git.kernel.org/pub/scm/bluetooth/bluez.git/?id=877b88c5f2e9

You are awesome, thank you!
diff mbox series

Patch

diff --git a/src/shared/bap.c b/src/shared/bap.c
index c5f1134d8d8a..7b23a33474bd 100644
--- a/src/shared/bap.c
+++ b/src/shared/bap.c
@@ -1050,13 +1050,15 @@  static void bap_stream_free(void *data)
 	free(stream);
 }
 
-static void bap_ep_detach(struct bt_bap_endpoint *ep)
+static void bap_stream_detach(struct bt_bap_stream *stream)
 {
-	struct bt_bap_stream *stream = ep->stream;
+	struct bt_bap_endpoint *ep = stream->ep;
 
-	if (!stream)
+	if (!ep)
 		return;
 
+	DBG(stream->bap, "stream %p ep %p", stream, ep);
+
 	queue_remove(stream->bap->streams, stream);
 	bap_stream_clear_cfm(stream);
 
@@ -1281,7 +1283,7 @@  static void bap_stream_state_changed(struct bt_bap_stream *stream)
 	/* Post notification updates */
 	switch (stream->ep->state) {
 	case BT_ASCS_ASE_STATE_IDLE:
-		bap_ep_detach(stream->ep);
+		bap_stream_detach(stream);
 		break;
 	case BT_ASCS_ASE_STATE_QOS:
 		break;
@@ -1838,7 +1840,8 @@  static uint8_t stream_disable(struct bt_bap_stream *stream, struct iovec *rsp)
 {
 	DBG(stream->bap, "stream %p", stream);
 
-	if (!stream || stream->ep->state == BT_BAP_STREAM_STATE_QOS)
+	if (!stream || stream->ep->state == BT_BAP_STREAM_STATE_QOS ||
+			stream->ep->state == BT_BAP_STREAM_STATE_IDLE)
 		return 0;
 
 	ascs_ase_rsp_success(rsp, stream->ep->id);