Received: by 2002:a25:683:0:0:0:0:0 with SMTP id 125csp4498792ybg; Mon, 8 Jun 2020 09:17:21 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzXrIkYgkkq640k1qGyngzSiowJwcKpOV8OJ8v+NNZqiPutD4PqFHCi8/VuyoTZXy9naltr X-Received: by 2002:a50:b082:: with SMTP id j2mr23141542edd.201.1591633041657; Mon, 08 Jun 2020 09:17:21 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1591633041; cv=none; d=google.com; s=arc-20160816; b=OrndOmolb/hu5jb55rG7LIEQcPgDpWtjcr9zmKvkZaHPsHOoX9JAH3HKFDWfHsjA8w lrrC76WmZvpohZ4lQofxBNPNF8oyQQ9H/nlR+/5NHbV8/ch+FGcWf9+E/MsZd9zCefOM 2j0qBH3sVkrEJtPhP3j6TLVdmv066EywkrpO4rt0O8EsNVtloVB/iISj90LJhic4pjip +tZyzXAyzs7/9fdCGcYDWe2is8ySHF2bA0w09646ipVOu9bzvIxGooFBtBkjNS+5QxwH AhV/zuwj92V3P1aiVyVqqHnHwDX71f3HP7e4InWfZHKbt7IEaQpPJ9kO246c7iKqmm5q NcsA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:cc:to:subject :message-id:date:from:in-reply-to:references:mime-version :dkim-signature; bh=g0M0F5wHMTj8FDNJ3mXnejn9idvuLFWAl4fsqrleEAs=; b=qsSUuDpqL9EzakMoLffh+oHnEVRRbXQX1oa6T3PFr9IZ6FiV7bsV3nWeWSCKABZ11O QgYer0m8H32/xnDZxRFF8XurKIHXi8F4FVyCWoHUF11bG+jQtAFVAPSMQBjK0uFy4fpi 4yuN9fLeDYJdFmQh+DMy0qAH15pNiETNkYpS15jBmiWkCEECHwPfZzc/RydLn5ltqC4Q 2iuGlq+c6TTnZZfdItD08QpfbKQ+X9AXah3sY9z9P9bSjM0d1nAJgM3cgtP18CUdkIMr g/fhPBGM84e0VSmeouHpML9yHq6rVUSlmUaOt59lRFt2dfE88pW1jIOYWVmEbzvjs/Ot Iy6w== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=MwSxGzlo; spf=pass (google.com: domain of linux-bluetooth-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-bluetooth-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id c17si9024022edv.2.2020.06.08.09.16.41; Mon, 08 Jun 2020 09:17:21 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-bluetooth-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=MwSxGzlo; spf=pass (google.com: domain of linux-bluetooth-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-bluetooth-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730428AbgFHQP5 (ORCPT + 99 others); Mon, 8 Jun 2020 12:15:57 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:58776 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1730267AbgFHQP4 (ORCPT ); Mon, 8 Jun 2020 12:15:56 -0400 Received: from mail-oi1-x229.google.com (mail-oi1-x229.google.com [IPv6:2607:f8b0:4864:20::229]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id AEAD5C08C5C2 for ; Mon, 8 Jun 2020 09:15:56 -0700 (PDT) Received: by mail-oi1-x229.google.com with SMTP id d67so15812223oig.6 for ; Mon, 08 Jun 2020 09:15:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=g0M0F5wHMTj8FDNJ3mXnejn9idvuLFWAl4fsqrleEAs=; b=MwSxGzlorBwiFU9lPGEdv2+qVk9G9/fcboLUe+pGpiym+l0nMrjE5MfBg3kgFk5iDv gLy2ahYMf1LCbdJPa9ikXDowI+OCMK5lqct0gk+Q8zjYfsEABg1cmU3per3MveR78cuR /vpjko6MqRPgsLKjuzkabsTMdJLztGM6OhdWhJzwJwwdM7WaCW72y5ScSK8OOifQQMei 35a1UmJ9hgWiIMTBLmLD1xOaX7b791sOCZAexkbta4mpyjCnzMN31/0nU1MqCO4MWARs lpTWaITWB7ahnzsQm834t6yJERSkL+ObCjVvwTQclShOQKs8uaxNYhw0tCy6FMAjyQaG fW2g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=g0M0F5wHMTj8FDNJ3mXnejn9idvuLFWAl4fsqrleEAs=; b=G+kLjrQzN0kpD0ZKZvXttxjEGUOQPJIhsPloulSNg/z7X4Lzrdqqy9wYigt0O/8W9u GNH6WMIy/6iyedTbocmE5XrcQZe7CAcRpP5lkoW2hI3DNVBZV5aGCrPS8CTlTfWFXpJS 9qSQJk0B6434rF4DKSBoDSy5Ng9rRLFrvi1xkWUW5k7L7yUGLpE6UZhsNV4H1/RUaWUQ LbY0R8RG829ouhwDqm7zbNl6gTaexpdlk4srZ74iz+lFrvX1iKaT4hVw8OldoogVDzfj M+54c5uzEl3W+rkvF/P6bTzh5Echv3cFUKv1k4qjrU1IlXt3ap1yXLRnanfS4HWVgq33 ko4A== X-Gm-Message-State: AOAM531SBz/AE2DlTXAZwu5VTWvhlzBpw61cmn4CAC4ZFCmfrOZb9PyF LzAeMgidShlmdS9CH90prreI2XwEnIiJtcPUxPSyiA== X-Received: by 2002:aca:fdc3:: with SMTP id b186mr109573oii.82.1591632954187; Mon, 08 Jun 2020 09:15:54 -0700 (PDT) MIME-Version: 1.0 References: <64A824C9-7C3C-4B08-8A9E-827121C4786D@holtmann.org> <558DADDA-AC07-4463-A94E-085B16976AAB@holtmann.org> In-Reply-To: From: Luiz Augusto von Dentz Date: Mon, 8 Jun 2020 09:15:42 -0700 Message-ID: Subject: Re: Should we disable ERTM as default? To: Yun-hao Chung Cc: Marcel Holtmann , Bluez mailing list , ChromeOS BT Qualification Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Sender: linux-bluetooth-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-bluetooth@vger.kernel.org Hi Yun-hao, On Mon, Jun 8, 2020 at 6:11 AM Yun-hao Chung wrote= : > > Hi Marcel, > > Here is the piece of the btmon trace. What should be the next step? > > < ACL Data TX: Handle 256 flags 0x00 dlen 6 > Channel: 66 len 2 [PSM 25 mode Basic (0x00)] {chan 2} > AVDTP: Discover (0x01) Command (0x00) type 0x00 label 3 nosp 0 > > HCI Event: Number of Completed Packets (0x13) plen 5 > Num handles: 1 > Handle: 256 > Count: 1 > > HCI Event: Number of Completed Packets (0x13) plen 5 > Num handles: 1 > Handle: 256 > Count: 1 > > ACL Data RX: Handle 256 flags 0x02 dlen 8 > Channel: 66 len 4 [PSM 25 mode Basic (0x00)] {chan 2} > AVDTP: Discover (0x01) Response Accept (0x02) type 0x00 label 3 nos= p 0 > ACP SEID: 1 > Media Type: Audio (0x00) > SEP Type: SNK (0x01) > In use: No > < ACL Data TX: Handle 256 flags 0x00 dlen 18 > Channel: 66 len 14 [PSM 25 mode Basic (0x00)] {chan 2} > AVDTP: Set Configuration (0x03) Command (0x00) type 0x00 label 4 no= sp 0 > ACP SEID: 1 > INT SEID: 1 > Service Category: Media Transport (0x01) > Service Category: Media Codec (0x07) > Media Type: Audio (0x00) > Media Codec: SBC (0x00) > Frequency: 48000 (0x10) > Channel Mode: Joint Stereo (0x01) > Block Length: 16 (0x10) > Subbands: 8 (0x04) > Allocation Method: Loudness (0x01) > Minimum Bitpool: 2 > Maximum Bitpool: 64 > > HCI Event: Number of Completed Packets (0x13) plen 5 > Num handles: 1 > Handle: 256 > Count: 1 > > ACL Data RX: Handle 256 flags 0x02 dlen 6 > Channel: 66 len 2 [PSM 25 mode Basic (0x00)] {chan 2} > AVDTP: Set Configuration (0x03) Response Accept (0x02) type 0x00 la= bel 4 nosp 0 > < ACL Data TX: Handle 256 flags 0x00 dlen 7 > Channel: 66 len 3 [PSM 25 mode Basic (0x00)] {chan 2} > AVDTP: Open (0x06) Command (0x00) type 0x00 label 5 nosp 0 > ACP SEID: 1 > > HCI Event: Number of Completed Packets (0x13) plen 5 > Num handles: 1 > Handle: 256 > Count: 1 > > ACL Data RX: Handle 256 flags 0x02 dlen 6 > Channel: 66 len 2 [PSM 25 mode Basic (0x00)] {chan 2} > AVDTP: Open (0x06) Response Accept (0x02) type 0x00 label 5 nosp 0 > < ACL Data TX: Handle 256 flags 0x00 dlen 12 > L2CAP: Connection Request (0x02) ident 6 len 4 > PSM: 25 (0x0019) > Source CID: 67 > > HCI Event: Number of Completed Packets (0x13) plen 5 > Num handles: 1 > Handle: 256 > Count: 1 > > ACL Data RX: Handle 256 flags 0x02 dlen 16 > L2CAP: Connection Response (0x03) ident 6 len 8 > Destination CID: 67 > Source CID: 67 > Result: Connection pending (0x0001) > Status: No further information available (0x0000) > > ACL Data RX: Handle 256 flags 0x02 dlen 16 > L2CAP: Connection Response (0x03) ident 6 len 8 > Destination CID: 67 > Source CID: 67 > Result: Connection successful (0x0000) > Status: No further information available (0x0000) > < ACL Data TX: Handle 256 flags 0x00 dlen 23 > L2CAP: Configure Request (0x04) ident 7 len 15 > Destination CID: 67 > Flags: 0x0000 > Option: Retransmission and Flow Control (0x04) [mandatory] > Mode: Basic (0x00) > TX window size: 0 > Max transmit: 0 > Retransmission timeout: 0 > Monitor timeout: 0 > Maximum PDU size: 0 > > ACL Data RX: Handle 256 flags 0x02 dlen 23 > L2CAP: Configure Request (0x04) ident 222 len 15 > Destination CID: 67 > Flags: 0x0000 > Option: Retransmission and Flow Control (0x04) [mandatory] > Mode: Streaming (0x04) Looks like we should be using BT_IO_MODE_STREAMING with MPS then. > TX window size: 0 > Max transmit: 0 > Retransmission timeout: 0 > Monitor timeout: 0 > Maximum PDU size: 672 > < ACL Data TX: Handle 256 flags 0x00 dlen 25 > L2CAP: Configure Response (0x05) ident 222 len 17 > Source CID: 67 > Flags: 0x0000 > Result: Failure - unacceptable parameters (0x0001) > Option: Retransmission and Flow Control (0x04) [mandatory] > Mode: Basic (0x00) > TX window size: 0 > Max transmit: 0 > Retransmission timeout: 0 > Monitor timeout: 0 > Maximum PDU size: 672 > > HCI Event: Number of Completed Packets (0x13) plen 5 > Num handles: 1 > Handle: 256 > Count: 1 > > HCI Event: Number of Completed Packets (0x13) plen 5 > Num handles: 1 > Handle: 256 > Count: 1 > > ACL Data RX: Handle 256 flags 0x02 dlen 29 > L2CAP: Configure Response (0x05) ident 7 len 21 > Source CID: 67 > Flags: 0x0000 > Result: Success (0x0000) > Option: Maximum Transmission Unit (0x01) [mandatory] > MTU: 672 > Option: Retransmission and Flow Control (0x04) [mandatory] > Mode: Basic (0x00) > TX window size: 0 > Max transmit: 0 > Retransmission timeout: 0 > Monitor timeout: 0 > Maximum PDU size: 0 > > ACL Data RX: Handle 256 flags 0x02 dlen 12 > L2CAP: Configure Request (0x04) ident 223 len 4 > Destination CID: 67 > Flags: 0x0000 > < ACL Data TX: Handle 256 flags 0x00 dlen 18 > L2CAP: Configure Response (0x05) ident 223 len 10 > Source CID: 67 > Flags: 0x0000 > Result: Success (0x0000) > Option: Maximum Transmission Unit (0x01) [mandatory] > MTU: 672 > > Thanks. > > On Mon, Jun 8, 2020 at 3:58 PM Marcel Holtmann wrot= e: >> >> Hi Yun-hao, >> >> > I think it is more likely to be the PTS's limitations. I realized the >> > problem is in the media channel not in the signaling channel. PTS >> > wants to use streaming mode, but bluez rejects it, and then PTS aborts >> > the test. According to the MPS 1.0 Spec 6.2, L2CAP streaming mode is >> > the recommendation for optimization when using MPS media control >> > channels, so I think bluez doesn't do anything wrong during this test. >> >> do you have the btmon trace for this. I think we should accept ERTM on t= he media channel. The unfortunate part is that control and media channels b= oth use PSM 25 and so we can=E2=80=99t be really selective when we are the = acceptor. If MPS wants us to accept ERTM on the media channel we should all= ow. For all I care we can even accept it on the control channel, but it is = just a waste of overhead on the L2CAP headers. Actually the new Enhanced Fl= ow Control mode on BR/EDR would be more efficient for A2DP. Perhaps we can default to Streaming mode if MPS is enabled, we could actually do use it only for the transport channel while initiating but as a receiver I don't think it is possible to change after listen. --=20 Luiz Augusto von Dentz