Received: by 2002:a05:6602:18e:0:0:0:0 with SMTP id m14csp4768528ioo; Tue, 31 May 2022 11:07:05 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxeXvzxfxa5bT9d42bwFEfrEOjbUXRDelvDYYH52lJwmW6Jw1R3/zedIJytyFyqREPUco3H X-Received: by 2002:a17:90a:d58d:b0:1e0:adde:a7f8 with SMTP id v13-20020a17090ad58d00b001e0addea7f8mr29989592pju.74.1654020425140; Tue, 31 May 2022 11:07:05 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1654020425; cv=none; d=google.com; s=arc-20160816; b=iCxuoIdI7Qd9FGH9SjXw3FD+OHPM02K0+1gfVCPflVn6Mf0iMVGAZmsrp2Y6fBpnhK dgnvqEhNANI1X3ZL0+BizQzGT5Hcfw1Jo5WrSvEupAtkaHEV74kX+TELYRFeDJRKFoVz 0xqkPhu6Q1TV1R5D4ARMi5Hgrl3RenLU0XJ3DEPRztHH+8t3IAqdSjm+DwdvDVvj5uER HiGnzZJAvMD7nIytmToudy78spYTi1dKg+B2s9OGzwNrnFNsc/9rHcmZeyoewLZRh0Rf BNkrSBkXE9DDvXF/V+Mo0P8DS7Y0+2lH8lNBa6WN3Yb/H3hHxOUR6oehPLl1a2XQF3EZ av2Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:dkim-signature; bh=+qmsvgomiZ/viHPe+NJZB01OGjh/MHHkDfU9RKsPecA=; b=MCdBKYYYY/wCGKdJIrYCDElZg6bVQy1V5b4Kq3HT/rKKK+L8m6ZnVJRPKJmvMEqfRz eNLv7iqy7MAJycogoOhJ6Y5zHuddwbPWtFOozRaIFbMb/vQ4aeVVzWv1dPoLiDkCa5a/ o3GadOf+P6qJ+1ZK1B+rTbWSuKB9ScRzF13baXyCfJiVI40hXnIwfYiYjuAV6S4okHBl NZlrNBSx66Eqy2CejO3/jMR95JZeJAXA8iNt71QDTJ6H8xv5ACa8Gm6/bVgNFh4MX33N 3Rcnn/0pZD4uomAipA+dLU+mC7O8CdaOWtkl+TRi/GMNiqde2ROW6deD1kQKt4mkS6rY 7NIA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=mwj4rqsp; spf=pass (google.com: domain of linux-bluetooth-owner@vger.kernel.org designates 2620:137:e000::1:20 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 out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id l8-20020a056a00140800b00505ab468000si20717704pfu.215.2022.05.31.11.06.13; Tue, 31 May 2022 11:07:05 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-bluetooth-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=mwj4rqsp; spf=pass (google.com: domain of linux-bluetooth-owner@vger.kernel.org designates 2620:137:e000::1:20 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 S243083AbiE3VDP (ORCPT + 99 others); Mon, 30 May 2022 17:03:15 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:49214 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231630AbiE3VDK (ORCPT ); Mon, 30 May 2022 17:03:10 -0400 Received: from mail-pg1-x530.google.com (mail-pg1-x530.google.com [IPv6:2607:f8b0:4864:20::530]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 359DB5F47 for ; Mon, 30 May 2022 14:03:08 -0700 (PDT) Received: by mail-pg1-x530.google.com with SMTP id 129so6750472pgc.2 for ; Mon, 30 May 2022 14:03:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=+qmsvgomiZ/viHPe+NJZB01OGjh/MHHkDfU9RKsPecA=; b=mwj4rqspx7/M+mPDrID2VhTBOAUHLHJNRWO1ghabYs1hcDCrvp43tl607bILMJLNUd 4Kg75l40AbR5/5WsmgW5jnNbkjqwrsy1dLBet8EaqthlHViFx+sAXXIXdq4jNAQplukT VgLiqMNlMFYzHkyPufpjJrp+huSfRHtbbvNRKTAvu5FXOSzX7CvXggBs5HVsSva04bw5 OynHWUdkydNDDDV3ArMNRoipeHgPcnKTJzUvdPc3RrVH7iWdGIZ5ycAGBSmew04xL0da YR5Ke2tTpthf37z1gQLCHHGG9KbhHJutqhD4YYwHVgI25VDCo2pwojufGwryurjq4aBm LYBA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=+qmsvgomiZ/viHPe+NJZB01OGjh/MHHkDfU9RKsPecA=; b=xDPDDSaqy/O4oxPUqJCLrMiH8OyMDlx8GTItDxjUpXn26vfAoF0e54q1Dw20kLP6jk zK9FsR9i1pDZtkskMP+QokQhXw7ww67fFYlvKfk/YdCpcXIeLQlouPV/GhkR5o/e/Pcn 3tWgBgGqT6oqfrqwZqokqlXvgPO3W3K0V5WrcAixppLoosopjVnLG7NjqOUVYoFltabF ie1axNqIC76Cn66TgKpTbqUk7Jam3DgukwRYr3Pir51Sc4zXBTpKJNuD1u1N4jmMhdKN cDs1ZrzSfFvriujH0Ag198WXGbLoR3bavQLj58Q89pfEe8q20bBqlwMSlZo8bOWXntlQ y58w== X-Gm-Message-State: AOAM531Yd+PwbcrZJwTnh3oIvPkyP0d8nkhgiyOyNmT98nB6/VTS/yoI ViLv6tL0OTnJ0eQuprCF/3fzsq+CGBhRYD8C5hvd60SLiC4= X-Received: by 2002:a65:6d08:0:b0:3c6:8a08:3b9f with SMTP id bf8-20020a656d08000000b003c68a083b9fmr50080397pgb.147.1653944588374; Mon, 30 May 2022 14:03:08 -0700 (PDT) MIME-Version: 1.0 References: <20220526112456.2488536-1-josephsih@chromium.org> <20220526112456.2488536-3-josephsih@chromium.org> In-Reply-To: From: Luiz Augusto von Dentz Date: Mon, 30 May 2022 14:02:56 -0700 Message-ID: Subject: Re: [BlueZ PATCH v6 3/8] adapter: remove quality report from experimental features To: Joseph Hwang Cc: "linux-bluetooth@vger.kernel.org" , Marcel Holtmann , =?UTF-8?Q?Pali_Roh=C3=A1r?= , ChromeOS Bluetooth Upstreaming Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM, RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-bluetooth@vger.kernel.org Hi Joseph, On Thu, May 26, 2022 at 8:13 PM Joseph Hwang wrote: > > Thanks Luiz for the comment! Does it mean that bluez should 1) try to > use MGMT_OP_SET_QUALITY_REPORT; and if it failed, use the experimental > feature EXP_FEAT_BQR instead? Yep, in fact you should probably keep the existing code as it since it only set BQR if the kernel supports it anyway, that said how you are planning to support MGMT_OP_SET_QUALITY_REPORT since that is not enabled via UUID even if we can detect its support by the kernel Ive assumed it wouldn't be enabled all the time or that safe to be always enabled? > Regards, > Joseph > > > On Fri, May 27, 2022 at 4:31 AM Luiz Augusto von Dentz > wrote: > > > > Hi Joseph, > > > > On Thu, May 26, 2022 at 4:25 AM Joseph Hwang wrote: > > > > > > The quality report feature is now enabled through > > > MGMT_OP_SET_QUALITY_REPORT instead of through the experimental > > > features. > > > > > > --- > > > > > > Changes in v6: > > > - Fixed a patch conflict. > > > > > > Changes in v5: > > > - Move is_quality_report_supported() implementation to next patch. > > > The function does not belong to this patch. > > > > > > Changes in v4: > > > - Move forward this patch in the patch series so that this > > > command patch is prior to the quality report event patches. > > > > > > Changes in v3: > > > - This is a new patch that enables the quality report feature via > > > MGMT_OP_SET_QUALITY_REPORT. > > > > > > src/adapter.c | 14 -------------- > > > src/adapter.h | 1 - > > > 2 files changed, 15 deletions(-) > > > > > > diff --git a/src/adapter.c b/src/adapter.c > > > index f7faaa263..2ceea6e1c 100644 > > > --- a/src/adapter.c > > > +++ b/src/adapter.c > > > @@ -120,13 +120,6 @@ static const struct mgmt_exp_uuid le_simult_central_peripheral_uuid = { > > > .str = "671b10b5-42c0-4696-9227-eb28d1b049d6" > > > }; > > > > > > -/* 330859bc-7506-492d-9370-9a6f0614037f */ > > > -static const struct mgmt_exp_uuid quality_report_uuid = { > > > - .val = { 0x7f, 0x03, 0x14, 0x06, 0x6f, 0x9a, 0x70, 0x93, > > > - 0x2d, 0x49, 0x06, 0x75, 0xbc, 0x59, 0x08, 0x33 }, > > > - .str = "330859bc-7506-492d-9370-9a6f0614037f" > > > -}; > > > - > > > /* 15c0a148-c273-11ea-b3de-0242ac130004 */ > > > static const struct mgmt_exp_uuid rpa_resolution_uuid = { > > > .val = { 0x04, 0x00, 0x13, 0xac, 0x42, 0x02, 0xde, 0xb3, > > > @@ -9621,12 +9614,6 @@ static void le_simult_central_peripheral_func(struct btd_adapter *adapter, > > > (void *)le_simult_central_peripheral_uuid.val); > > > } > > > > > > -static void quality_report_func(struct btd_adapter *adapter, uint8_t action) > > > -{ > > > - if (action) > > > - queue_push_tail(adapter->exps, (void *)quality_report_uuid.val); > > > -} > > > - > > > static void set_rpa_resolution_complete(uint8_t status, uint16_t len, > > > const void *param, void *user_data) > > > { > > > @@ -9703,7 +9690,6 @@ static const struct exp_feat { > > > EXP_FEAT(EXP_FEAT_DEBUG, &debug_uuid, exp_debug_func), > > > EXP_FEAT(EXP_FEAT_LE_SIMULT_ROLES, &le_simult_central_peripheral_uuid, > > > le_simult_central_peripheral_func), > > > - EXP_FEAT(EXP_FEAT_BQR, &quality_report_uuid, quality_report_func), > > > EXP_FEAT(EXP_FEAT_RPA_RESOLUTION, &rpa_resolution_uuid, > > > rpa_resolution_func), > > > EXP_FEAT(EXP_FEAT_CODEC_OFFLOAD, &codec_offload_uuid, > > > diff --git a/src/adapter.h b/src/adapter.h > > > index 688ed51c6..3d53a962d 100644 > > > --- a/src/adapter.h > > > +++ b/src/adapter.h > > > @@ -257,7 +257,6 @@ bool btd_le_connect_before_pairing(void); > > > enum experimental_features { > > > EXP_FEAT_DEBUG = 1 << 0, > > > EXP_FEAT_LE_SIMULT_ROLES = 1 << 1, > > > - EXP_FEAT_BQR = 1 << 2, > > > EXP_FEAT_RPA_RESOLUTION = 1 << 3, > > > EXP_FEAT_CODEC_OFFLOAD = 1 << 4, > > > }; > > > > We can't remove existing experimental features since there could be > > kernels which don't support MGMT_OP_SET_QUALITY_REPORT, so this will > > need to stay for as long as we support such kernels versions. > > > > > -- > > > 2.36.1.124.g0e6072fb45-goog > > > > > > > > > -- > > Luiz Augusto von Dentz > > > > -- > > Joseph Shyh-In Hwang > Email: josephsih@google.com -- Luiz Augusto von Dentz