Received: by 2002:a05:7412:37c9:b0:e2:908c:2ebd with SMTP id jz9csp2838421rdb; Fri, 22 Sep 2023 09:38:16 -0700 (PDT) X-Google-Smtp-Source: AGHT+IGMtA7NQ/Ytaxkprwv6yP+vqadEpq/7P9KZpI7zTS9zlWF90CyyST+lkd9dsNA6Z1Q3O571 X-Received: by 2002:a05:6a20:5646:b0:140:94b8:3b70 with SMTP id is6-20020a056a20564600b0014094b83b70mr94859pzc.17.1695400696214; Fri, 22 Sep 2023 09:38:16 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1695400696; cv=none; d=google.com; s=arc-20160816; b=DR9xI+WYpudWQwM4zwyr1ssH8lldXtsUM2XbPqOzw84LG+jV8MkFqLqqbv8g2xteUq 7+6Bw06B4FMTg25MR4akyNQFKyxVcAbcl71z/Kt4coBn8qQbR5uqIMaNcXzqRk8iy+iJ CswhIJ/4+0viF6k1TxKolRny3H1cg5r7znWO5/mdA0DjjRQjEVPkGUirW/NRc9kI/SUa sE1R0QTVhu8c2Z3rrJu0/hnlJLoR3n4RF6qq7TW3zBLzASWe/E3TRbaPyPnUaYntGpoF fTQuAmvuOg9YJyWiC1IpaTh+DqRUggC+aui5ga6v44vn4ghbayDpuPWL9PC0seOeonN9 X9uQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:message-id:content-transfer-encoding :mime-version:subject:date:from:dkim-signature; bh=yKKD3DKkA31jJehvo5wTLysv3+3TfAYrCS3TtTQn9hc=; fh=KuXNZ1l7eHdfBxEBKH05eMMA7pDfwEFyOMwOaNmX6rc=; b=j3GPE+qCGSUt19TioPvlbaowvrdb8X/UVIkyMm9SDa0rS6E+ONdbilRjjzCg9l56lb Nz6rRVSA5lyQdhseiBnMIbrVqFIK0KSKoGT2k48E2Rc5XKbHaEmY1T8sZebWIS6XK0T1 E6PfiGQDavzoiJN+G0PusRutno09jGy5yoHpLtj65hm91IhxK95LDkjk0jmDcJf6O5Pt SYky60NwCwA+lCPsi+GlG0HG/rSGzMKVW2bwOLULml/Si4u7sKdjSEcsRnh+s8++eCz/ Zc7VA+wsGgol0RaV3dOBPY0DUXQmgr2vdFoapJmgG1OiD8hiy0WEz5YgwFuAeP9iq9Tf NVSg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@marcan.st header.s=default header.b=JDUrN5GZ; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.37 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=marcan.st Return-Path: Received: from snail.vger.email (snail.vger.email. [23.128.96.37]) by mx.google.com with ESMTPS id f20-20020a056a00229400b00690daa48517si4349606pfe.200.2023.09.22.09.38.15 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 22 Sep 2023 09:38:16 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.37 as permitted sender) client-ip=23.128.96.37; Authentication-Results: mx.google.com; dkim=pass header.i=@marcan.st header.s=default header.b=JDUrN5GZ; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.37 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=marcan.st Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by snail.vger.email (Postfix) with ESMTP id 255E983421A0; Fri, 22 Sep 2023 07:55:49 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at snail.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232046AbjIVOzv (ORCPT + 99 others); Fri, 22 Sep 2023 10:55:51 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:52664 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231833AbjIVOzu (ORCPT ); Fri, 22 Sep 2023 10:55:50 -0400 Received: from mail.marcansoft.com (marcansoft.com [212.63.210.85]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 796C4C6; Fri, 22 Sep 2023 07:55:43 -0700 (PDT) Received: from [127.0.0.1] (localhost [127.0.0.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: sendonly@marcansoft.com) by mail.marcansoft.com (Postfix) with ESMTPSA id 58FD83FA0B; Fri, 22 Sep 2023 14:55:38 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=marcan.st; s=default; t=1695394541; bh=JC8yv+fNB5FiwOtZSD3GUGqW+YmVjy5b00Y4p97vKL8=; h=From:Date:Subject:To:Cc; b=JDUrN5GZzfN7QRRqw3OCK6PfL1j62nZYru/sYrDEuW7xLEduVTG9OfIn4T3caU8Fu I/EUTB1RuHPQNNbc/WrygHwkefF9ES735utJRbBLPPBw4PZxHNAJuzNTOLqfam5ely Emd0DSV7Vtikl6K6m3rRgDm37H4681WqNNpMalM5fznq1d/FgG3NtDzT6S1OoH8YMe keDDZ3FKBAUy7vlSBjyqpeuun5lTQWXthhxqxRFzHGEBPo892T8QQbpDurZHO3Z3dQ naSP+V3QRqJdSnZsostSD5OedWAt4g6QIQS7KN/aXiByU7aE3/gXXVoByFHPUS/H2J hxUc9NIeOW75A== From: Hector Martin Date: Fri, 22 Sep 2023 23:55:23 +0900 Subject: [PATCH REGRESSION v2] iommu/apple-dart: Handle DMA_FQ domains in attach_dev() MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Message-Id: <20230922-iommu-type-regression-v2-1-689b2ba9b673@marcan.st> X-B4-Tracking: v=1; b=H4sIANqqDWUC/4WNQQ6CMBBFr0JmbQ1MMaAr72FYYBlgFi1kWhsJ6 d0tXMD81fvJf38HT8Lk4VHsIBTZ8+Iy4KUAM/duIsVDZsASdXlHVLxY+1FhW0kJTUL+WCi8veu x1sPYNCXk7So08vf0vrrMM/uwyHbexOpo/xljpXJo0G12o9Ht0/Zienf1AbqU0g9xazpTugAAA A== To: Joerg Roedel , Will Deacon , Robin Murphy , Jason Gunthorpe , Jerry Snitselaar Cc: Joerg Roedel , Neal Gompa , "Justin M. Forbes" , iommu@lists.linux.dev, linux-kernel@vger.kernel.org, asahi@lists.linux.dev, stable@vger.kernel.org, regressions@lists.linux.dev, Hector Martin X-Mailer: b4 0.12.3 X-Developer-Signature: v=1; a=openpgp-sha256; l=1701; i=marcan@marcan.st; h=from:subject:message-id; bh=JC8yv+fNB5FiwOtZSD3GUGqW+YmVjy5b00Y4p97vKL8=; b=owGbwMvMwCUm+yP4NEe/cRLjabUkhlTeVS93Trj9L0JplduMZSwXqx/5/ztYtWfSY8bgq27d/ 9c0NZcHd5SyMIhxMciKKbI0nug91e05/Zy6asp0mDmsTCBDGLg4BWAi/O4M/91/HBGsdnI9PldN fbHjg7fHI5e3PN+b3pD3IelHnTlPKRvDf+/I5YI5Ov5yn+QFJ2kohG2Wz5vyVi57Peup+1nuN0q UeAA= X-Developer-Key: i=marcan@marcan.st; a=openpgp; fpr=FC18F00317968B7BE86201CBE22A629A4C515DD5 X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED 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 X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (snail.vger.email [0.0.0.0]); Fri, 22 Sep 2023 07:55:49 -0700 (PDT) Commit a4fdd9762272 ("iommu: Use flush queue capability") hid the IOMMU_DOMAIN_DMA_FQ domain type from domain allocation. A check was introduced in iommu_dma_init_domain() to fall back if not supported, but this check runs too late: by that point, devices have been attached to the IOMMU, and apple-dart's attach_dev() callback does not expect IOMMU_DOMAIN_DMA_FQ domains. Change the logic so the IOMMU_DOMAIN_DMA codepath is the default, instead of explicitly enumerating all types. Fixes an apple-dart regression in v6.5. Cc: regressions@lists.linux.dev Cc: stable@vger.kernel.org Suggested-by: Robin Murphy Fixes: a4fdd9762272 ("iommu: Use flush queue capability") Signed-off-by: Hector Martin --- Changes in v2: - Fixed the issue in apple-dart instead of the iommu core, per Robin's suggestion. - Link to v1: https://lore.kernel.org/r/20230922-iommu-type-regression-v1-1-1ed3825b2c38@marcan.st --- drivers/iommu/apple-dart.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/drivers/iommu/apple-dart.c b/drivers/iommu/apple-dart.c index 2082081402d3..0b8927508427 100644 --- a/drivers/iommu/apple-dart.c +++ b/drivers/iommu/apple-dart.c @@ -671,8 +671,7 @@ static int apple_dart_attach_dev(struct iommu_domain *domain, return ret; switch (domain->type) { - case IOMMU_DOMAIN_DMA: - case IOMMU_DOMAIN_UNMANAGED: + default: ret = apple_dart_domain_add_streams(dart_domain, cfg); if (ret) return ret; --- base-commit: ce9ecca0238b140b88f43859b211c9fdfd8e5b70 change-id: 20230922-iommu-type-regression-25b4f43df770 Best regards, -- Hector Martin