Linux bluetooth development
 help / color / mirror / Atom feed
* [PATCH BlueZ] avrcp: Abort continuing response on fragmented CT replies
@ 2026-06-09 21:26 Simon Mikuda
  2026-06-09 23:06 ` [BlueZ] " bluez.test.bot
  2026-06-10 18:40 ` [PATCH BlueZ] " patchwork-bot+bluetooth
  0 siblings, 2 replies; 3+ messages in thread
From: Simon Mikuda @ 2026-06-09 21:26 UTC (permalink / raw)
  To: linux-bluetooth; +Cc: Simon Mikuda

Send AbortContinuingResponse when a Get Element Attributes reply
arrives fragmented, as the CT side does not reassemble fragments.

Fixes PTS test AVRCP/CT/RCR/BV-03-C
---
 profiles/audio/avrcp.c | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

diff --git a/profiles/audio/avrcp.c b/profiles/audio/avrcp.c
index b6823753f..56564dcab 100644
--- a/profiles/audio/avrcp.c
+++ b/profiles/audio/avrcp.c
@@ -2473,6 +2473,24 @@ static void avrcp_parse_attribute_list(struct avrcp_player *player,
 	}
 }
 
+static void avrcp_abort_continuing(struct avrcp *session, uint8_t pdu_id)
+{
+	uint8_t buf[AVRCP_HEADER_LENGTH + 1];
+	struct avrcp_header *pdu = (void *) buf;
+
+	memset(buf, 0, sizeof(buf));
+
+	set_company_id(pdu->company_id, IEEEID_BTSIG);
+	pdu->pdu_id = AVRCP_ABORT_CONTINUING;
+	pdu->packet_type = AVRCP_PACKET_TYPE_SINGLE;
+	pdu->params_len = cpu_to_be16(1);
+	pdu->params[0] = pdu_id;
+
+	avctp_send_vendordep_req(session->conn, AVC_CTYPE_CONTROL,
+					AVC_SUBUNIT_PANEL, buf, sizeof(buf),
+					NULL, session);
+}
+
 static gboolean avrcp_get_element_attributes_rsp(struct avctp *conn,
 						uint8_t code, uint8_t subunit,
 						uint8_t transaction,
@@ -2490,6 +2508,13 @@ static gboolean avrcp_get_element_attributes_rsp(struct avctp *conn,
 	if (code == AVC_CTYPE_REJECTED)
 		return FALSE;
 
+	/* Abort fragmented responses as reassembly is not supported */
+	if (pdu->packet_type == AVRCP_PACKET_TYPE_START ||
+			pdu->packet_type == AVRCP_PACKET_TYPE_CONTINUING) {
+		avrcp_abort_continuing(session, AVRCP_GET_ELEMENT_ATTRIBUTES);
+		return FALSE;
+	}
+
 	count = pdu->params[0];
 
 	if (be16_to_cpu(pdu->params_len) - 1 < count * 8) {
-- 
2.43.0


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

* RE: [BlueZ] avrcp: Abort continuing response on fragmented CT replies
  2026-06-09 21:26 [PATCH BlueZ] avrcp: Abort continuing response on fragmented CT replies Simon Mikuda
@ 2026-06-09 23:06 ` bluez.test.bot
  2026-06-10 18:40 ` [PATCH BlueZ] " patchwork-bot+bluetooth
  1 sibling, 0 replies; 3+ messages in thread
From: bluez.test.bot @ 2026-06-09 23:06 UTC (permalink / raw)
  To: linux-bluetooth, simon.mikuda

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

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=1108830

---Test result---

Test Summary:
CheckPatch                    PASS      0.47 seconds
GitLint                       PASS      0.32 seconds
BuildEll                      PASS      20.54 seconds
BluezMake                     PASS      650.26 seconds
MakeCheck                     PASS      3.37 seconds
MakeDistcheck                 PASS      248.95 seconds
CheckValgrind                 PASS      225.60 seconds
CheckSmatch                   PASS      353.04 seconds
bluezmakeextell               PASS      182.32 seconds
IncrementalBuild              PASS      659.64 seconds
ScanBuild                     PASS      1039.95 seconds



https://github.com/bluez/bluez/pull/2211

---
Regards,
Linux Bluetooth


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

* Re: [PATCH BlueZ] avrcp: Abort continuing response on fragmented CT replies
  2026-06-09 21:26 [PATCH BlueZ] avrcp: Abort continuing response on fragmented CT replies Simon Mikuda
  2026-06-09 23:06 ` [BlueZ] " bluez.test.bot
@ 2026-06-10 18:40 ` patchwork-bot+bluetooth
  1 sibling, 0 replies; 3+ messages in thread
From: patchwork-bot+bluetooth @ 2026-06-10 18:40 UTC (permalink / raw)
  To: Simon Mikuda; +Cc: linux-bluetooth

Hello:

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

On Tue,  9 Jun 2026 23:26:56 +0200 you wrote:
> Send AbortContinuingResponse when a Get Element Attributes reply
> arrives fragmented, as the CT side does not reassemble fragments.
> 
> Fixes PTS test AVRCP/CT/RCR/BV-03-C
> ---
>  profiles/audio/avrcp.c | 25 +++++++++++++++++++++++++
>  1 file changed, 25 insertions(+)

Here is the summary with links:
  - [BlueZ] avrcp: Abort continuing response on fragmented CT replies
    https://git.kernel.org/pub/scm/bluetooth/bluez.git/?id=249e2bedfacf

You are awesome, thank you!
-- 
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html



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

end of thread, other threads:[~2026-06-10 18:40 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-06-09 21:26 [PATCH BlueZ] avrcp: Abort continuing response on fragmented CT replies Simon Mikuda
2026-06-09 23:06 ` [BlueZ] " bluez.test.bot
2026-06-10 18:40 ` [PATCH BlueZ] " patchwork-bot+bluetooth

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox