Received: by 2002:a05:6358:9144:b0:117:f937:c515 with SMTP id r4csp105414rwr; Tue, 2 May 2023 16:51:54 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ4gSbXZ6AsZQPKDGhCf0O7myDyBm76c62MN3wTcn6A6FCndv16Xv/O60veL+k36bGFt0JMF X-Received: by 2002:a05:6a20:d70f:b0:f2:3c0e:99fa with SMTP id iz15-20020a056a20d70f00b000f23c0e99famr20859750pzb.26.1683071514492; Tue, 02 May 2023 16:51:54 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1683071514; cv=none; d=google.com; s=arc-20160816; b=Zi1T+W6Kv7D80RvNbicWdHdzqKkZG39def1pylVSdM36ctjRA5qjzDO17Vds+Qkfl6 1j+rWHBtLUZq8Xl8TmZRURWZneObLt+bYnTIC/RJORiTL45tZiUQI8f22oiM1j7Dwaov rJF2UFDQtOLMwEedqyOW4PNhikzcg6K6GS3heGAvNf8X0K0jWHA/2EVTq58iJ2y+v1JR 1VqKy8hyl90UelRPJHyuvv7p37mVLgAqqwh4S5b52Ztqi7Fr+6Ppl0qMN2RGwO31LDKi lDcRFdlcRFNC8bCECkJvbdIK+iWMQ+uiLKr0gEEossd89Y76TgjCFtWDi/PDWtImm2+r DC7Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:cc:to:subject :message-id:date:from:in-reply-to:references:mime-version :dkim-signature; bh=qxCHWliQRwTwHSwjl2MyQ3HUU9SoEdGxHURTWvn8V/o=; b=Hh2gxddMZnDIC4MEUxN9TNtQ92/TctM04fuMjbnYhx2zgIIyk3GACMzCNh8x9FugGD jAThf7rVqhRbQWUsQDtQATpImduL/s1Dx2ooahg0WN60mzrUsK9g5x8ip23h5Pre6ADG ZsnRPvEHgiK4G/DlgkgsdZpzfNjlFWjEMWH8cQF8ye8K2ToNj52qzFjgJZju/kRCphkM 2T4HdF96CGltxiXWqD00ulOLkMFAO8YpJBPkeMtK7TgeEHo4zIQ5fcBAlbC+OLi9/VYz IL84dy3z+Nwhc+LrV4vn80DqVF2HjFp3kf+M3fYHC3RS/ImbXA/l2DTtqw7o3UhXAC7n uiWw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20221208 header.b=cwjPfYEQ; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-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 k21-20020a6568d5000000b00518c8895ebfsi31912238pgt.139.2023.05.02.16.51.39; Tue, 02 May 2023 16:51:54 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-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=20221208 header.b=cwjPfYEQ; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-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 S229785AbjEBXpF (ORCPT + 99 others); Tue, 2 May 2023 19:45:05 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:37812 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229492AbjEBXpE (ORCPT ); Tue, 2 May 2023 19:45:04 -0400 Received: from mail-lj1-x234.google.com (mail-lj1-x234.google.com [IPv6:2a00:1450:4864:20::234]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 12815E6; Tue, 2 May 2023 16:45:03 -0700 (PDT) Received: by mail-lj1-x234.google.com with SMTP id 38308e7fff4ca-2a8bdcf87f4so43981271fa.2; Tue, 02 May 2023 16:45:02 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1683071101; x=1685663101; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=qxCHWliQRwTwHSwjl2MyQ3HUU9SoEdGxHURTWvn8V/o=; b=cwjPfYEQXlHeHdUDRAMrSR3x/0oLyTxJOLg6C53RMqnxkTpI9/MO6tCGb8U8YAj/dz UiU1uSUnqEqmBoLIdyZEqZFSxvAySeBWoaeWD1ISNqh4IxDAxzGkj9sUJlf2/JFJi08X wVWlmgSbvqNy6gBYDsHXoSb2FCIZ8noHtSpuFnk+1tYsE45DRBVa2HM5KvUN8xBv4kr+ iGOzKTfBCZqDPyyj6RYGDH10sAyVgyhf4drfVXA/cELevIIFFN7/p7IelaoueD06NE1p A40AzHsbsdWi2frL6qQlZzWdys1tym1Wb9EdOTGIPv1xveN+8SlCoeRZzFT5J0eOkhAS fEag== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1683071101; x=1685663101; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=qxCHWliQRwTwHSwjl2MyQ3HUU9SoEdGxHURTWvn8V/o=; b=Szh606a8dPvVUaQC97vQMRv9tX5aAUWFfkbCFH8wZ8gGJE5kdfSxNxpxT3hq2+7wEX au0/tYbKqRkU0PeX/mQ+UVAEUVuQzQWbrnG2zDo1/2ZiDCJBgoLaKejr+RhKz0l2BETY HVRHWTF39qFcuUdyIG3Gz1WUnCWi2K8c6wt3XfXC6MPG3lwQ+IVfydR7I9GWIi5jZCkF VrX3a9DRJhGglEmHpM5CEWMYdSfGXU+3fPK44L3KBhwbq1ynqJeqzDOzysMygHkM9D+U 5aiytKi/C621k/4x6cZW1xB2oBNlk/xhet0fIjtzNNdZ85cHy73ur8RBOHYMCPIws4xk yXjQ== X-Gm-Message-State: AC+VfDwzHQ/SMKSBhkrV6X/b9bdQ/i0WfzibLGq+QBFlmE6M5x9//Ns9 LFUqQ97tvmNtKOmi0X+EcX02bDoaN4KktHc0uP4= X-Received: by 2002:a2e:9490:0:b0:2a7:a719:5936 with SMTP id c16-20020a2e9490000000b002a7a7195936mr5402755ljh.19.1683071100926; Tue, 02 May 2023 16:45:00 -0700 (PDT) MIME-Version: 1.0 References: <20230424133542.14383-1-johan+linaro@kernel.org> <20230424133542.14383-2-johan+linaro@kernel.org> In-Reply-To: <20230424133542.14383-2-johan+linaro@kernel.org> From: Luiz Augusto von Dentz Date: Tue, 2 May 2023 16:44:48 -0700 Message-ID: Subject: Re: [PATCH 1/2] Bluetooth: fix invalid-bdaddr quirk for non-persistent setup To: Johan Hovold Cc: Marcel Holtmann , Johan Hedberg , Matthias Kaehlcke , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , linux-bluetooth@vger.kernel.org, linux-kernel@vger.kernel.org, netdev@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable 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-kernel@vger.kernel.org Hi Johan, On Mon, Apr 24, 2023 at 6:35=E2=80=AFAM Johan Hovold wrote: > > Devices that lack persistent storage for the device address can indicate > this by setting the HCI_QUIRK_INVALID_BDADDR which causes the controller > to be marked as unconfigured until user space has set a valid address. > > Once configured, the device address must be set on every setup for > controllers with HCI_QUIRK_NON_PERSISTENT_SETUP to avoid marking the > controller as unconfigured and requiring the address to be set again. > > Fixes: 740011cfe948 ("Bluetooth: Add new quirk for non-persistent setup s= ettings") > Signed-off-by: Johan Hovold > --- > net/bluetooth/hci_sync.c | 28 +++++++++++----------------- > 1 file changed, 11 insertions(+), 17 deletions(-) > > diff --git a/net/bluetooth/hci_sync.c b/net/bluetooth/hci_sync.c > index a8785126df75..f45598b5a532 100644 > --- a/net/bluetooth/hci_sync.c > +++ b/net/bluetooth/hci_sync.c > @@ -4573,23 +4573,17 @@ static int hci_dev_setup_sync(struct hci_dev *hde= v) > invalid_bdaddr =3D test_bit(HCI_QUIRK_INVALID_BDADDR, &hdev->quir= ks); > > if (!ret) { > - if (test_bit(HCI_QUIRK_USE_BDADDR_PROPERTY, &hdev->quirks= )) { > - if (!bacmp(&hdev->public_addr, BDADDR_ANY)) > - hci_dev_get_bd_addr_from_property(hdev); > - > - if (bacmp(&hdev->public_addr, BDADDR_ANY) && > - hdev->set_bdaddr) { > - ret =3D hdev->set_bdaddr(hdev, > - &hdev->public_addr= ); > - > - /* If setting of the BD_ADDR from the dev= ice > - * property succeeds, then treat the addr= ess > - * as valid even if the invalid BD_ADDR > - * quirk indicates otherwise. > - */ > - if (!ret) > - invalid_bdaddr =3D false; > - } > + if (test_bit(HCI_QUIRK_USE_BDADDR_PROPERTY, &hdev->quirks= ) && > + !bacmp(&hdev->public_addr, BDADDR_ANY)) > + hci_dev_get_bd_addr_from_property(hdev); > + > + if ((invalid_bdaddr || > + test_bit(HCI_QUIRK_USE_BDADDR_PROPERTY, &hdev->quirk= s)) && > + bacmp(&hdev->public_addr, BDADDR_ANY) && > + hdev->set_bdaddr) { > + ret =3D hdev->set_bdaddr(hdev, &hdev->public_addr= ); > + if (!ret) > + invalid_bdaddr =3D false; I'd keep the original comments since it appears you haven't changed its logic with respect to invalid_bdaddr. > } > } > > -- > 2.39.2 > --=20 Luiz Augusto von Dentz