Received: by 2002:a05:6358:d09b:b0:dc:cd0c:909e with SMTP id jc27csp8621023rwb; Thu, 24 Nov 2022 01:57:41 -0800 (PST) X-Google-Smtp-Source: AA0mqf4jKnbvIAslRoYdx355PVTKaQQWXuxwBlLTrN52An+Q4CEt+mIcbyXwpwXGiO5TQ9rQVFUU X-Received: by 2002:a63:d143:0:b0:476:c8c5:ba85 with SMTP id c3-20020a63d143000000b00476c8c5ba85mr28742897pgj.182.1669283861366; Thu, 24 Nov 2022 01:57:41 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1669283861; cv=none; d=google.com; s=arc-20160816; b=v7ibkykCGfDtJdvNcK07/Vqntnyuz+0kBr8mET32+bcsvvVtAXhsLjieTOQamgpCrF 22ZMLmeUEnRqalfV5BXYoFI/c+x05AMJvM2xLTh1kFK104WztCXFx/AeFqAA2cudI/e9 iDL34a89x4kHaHq5p9bNh3IHbZ7dChFSZ073fE5XOcZtM/FNUtKoi4ETnLlTWEMblYss cNQqiUU6gDopQfUTnpY+W5LunlktvZzaTd2w+rLEh3BsPjq4GNqEU/cnAgzI77IsNM7g /aTsnr3xtO4MAgJrShPtdd6efbtqzZ/ZWO0VbG5Gj8s5SvmDGn/0NdHK9EIEoPWXGzpU B1YQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:message-id:date:references :in-reply-to:subject:cc:to:dkim-signature:dkim-signature:from; bh=Tjizbh8hWoBsQRunZtQQh9g5OJSznOxQIsaJyKhrvY4=; b=hqPpAAavdGWYgrHHPBrQhzJmgo3zTHuCLYV3/SZCLvRv3I7WrzjUMcnqFCCi8bTp+T Zzrkc8L6cZYfiSFr4Nv0PBA7Y6uXMRKFZB7DDtdmNEkdPmPZdX0hfnRJebuqRX3aBywA /Wx9uLiuujka+iAcShPVbADfLt9ed+1IPvKijsKcZ3rvjV+WZyz81MEyAqFEjJU1gA9g W76npTyelt6FXTP2IzUoWU98zEdaGozZ4cE45VEUgKdtFDdool4+cGG46nrZz3SvvhsC z3fOnvvgSZlqE98dHMaq1Ipb1yBv8j8h53W+i8x07BWdswNvhDs8u+548hll2jIb185n 0r+g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linutronix.de header.s=2020 header.b=C9MBI36l; dkim=neutral (no key) header.i=@linutronix.de header.s=2020e header.b=302zCTmD; 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=linutronix.de Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id f17-20020a170902f39100b0018388edd187si587439ple.56.2022.11.24.01.57.30; Thu, 24 Nov 2022 01:57:41 -0800 (PST) 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=@linutronix.de header.s=2020 header.b=C9MBI36l; dkim=neutral (no key) header.i=@linutronix.de header.s=2020e header.b=302zCTmD; 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=linutronix.de Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229698AbiKXJh4 (ORCPT + 87 others); Thu, 24 Nov 2022 04:37:56 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:48850 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229459AbiKXJhz (ORCPT ); Thu, 24 Nov 2022 04:37:55 -0500 Received: from galois.linutronix.de (Galois.linutronix.de [IPv6:2a0a:51c0:0:12e:550::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id C561A1F62F; Thu, 24 Nov 2022 01:37:54 -0800 (PST) From: Thomas Gleixner DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020; t=1669282673; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=Tjizbh8hWoBsQRunZtQQh9g5OJSznOxQIsaJyKhrvY4=; b=C9MBI36lXTOK5rNSl4tj3DGptwslIqTgmLItfx0CKyB3ne+Dd0tmdMIfiz209fcA9vixlx 2teLzuNjJ8ljmoIvc7Xy1N2SYBSUgRWzvAlTjDHemyxp0BsUJarg1y+wCqCVqn+JcQu/Ti qnaDwwdOar5iGkhrs8YwASq6UweHRtprwNGW5v5TkHd8ghGTJIpIYU+1bAYh5ALMRY7k7v s8CJ0i2EMsuZ7cn8F3OuXqa9AxR4WdK5iG8gYhcWjvoAeOZlXdlJNPfNvW7ZTVirlCKiAS OUt2Bz+zaiepmEr8bANxSA3/kA9+qm9vFhqRVw9qwLzimcENlYADSD85oa7JOQ== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020e; t=1669282673; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=Tjizbh8hWoBsQRunZtQQh9g5OJSznOxQIsaJyKhrvY4=; b=302zCTmDM6qHG2AccjtKzwe2xp7tI80vPQ9FLQhiYOUW7KQ0JmmNLbD94Oq9fCUBCFgotm jDHDMlJDWpl50xBw== To: "Tian, Kevin" , LKML Cc: "x86@kernel.org" , Joerg Roedel , Will Deacon , "linux-pci@vger.kernel.org" , Bjorn Helgaas , Lorenzo Pieralisi , Marc Zyngier , Greg Kroah-Hartman , Jason Gunthorpe , "Jiang, Dave" , Alex Williamson , "Williams, Dan J" , Logan Gunthorpe , "Raj, Ashok" , Jon Mason , Allen Hubbe Subject: RE: [patch V2 31/33] iommu/vt-d: Enable PCI/IMS In-Reply-To: References: <20221121083657.157152924@linutronix.de> <20221121091328.184455059@linutronix.de> Date: Thu, 24 Nov 2022 10:37:53 +0100 Message-ID: <87ilj4d766.ffs@tglx> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Status: No, score=-4.4 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_MED,SPF_HELO_NONE, SPF_PASS 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 On Thu, Nov 24 2022 at 03:17, Kevin Tian wrote: >> static const struct msi_parent_ops dmar_msi_parent_ops = { >> - .supported_flags = X86_VECTOR_MSI_FLAGS_SUPPORTED | >> MSI_FLAG_MULTI_PCI_MSI, >> + .supported_flags = X86_VECTOR_MSI_FLAGS_SUPPORTED | >> + MSI_FLAG_MULTI_PCI_MSI | >> + MSI_FLAG_PCI_IMS, >> .prefix = "IR-", >> .init_dev_msi_info = msi_parent_init_dev_msi_info, >> }; > > vIR is already available on vIOMMU today [1]. > > Fortunately both intel/amd IOMMU has a way to detect whether it's a vIOMMU. > > For intel it's cap_caching_mode(). > > For AMD it's amd_iommu_np_cache. > > Then MSI_FLAG_PCI_IMS should be set only on physical IOMMU. Ok. Let me fix that then. But that made me read back some more. Jason said, that the envisioned Mellanox use case does not depend on the IOMMU because the card itself has one which takes care of the protections. How are we going to resolve that dilemma? Thanks, tglx