Received: by 10.192.165.148 with SMTP id m20csp4699882imm; Tue, 8 May 2018 12:47:02 -0700 (PDT) X-Google-Smtp-Source: AB8JxZoeXd8syga0z4yAFy8VVhV0AZ/mZvw2IbHFPgkqEvuzKECBI3A2EU1Nd2LP3tj+nnS83So9 X-Received: by 10.98.253.18 with SMTP id p18mr22551760pfh.152.1525808822666; Tue, 08 May 2018 12:47:02 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1525808822; cv=none; d=google.com; s=arc-20160816; b=B1Lvr00WQYSKoJd2Bs+joRoIKkXkewcRZFP0yUiwIa4xkhqw4EoR5XwZC/vHcVZtWL ndd0GRtESLMN3ooiiYheIVQAvunVUdLJHCQ32VQQxRgYPFIYSJE75KRoH9ujAXbemqQo PUZG7WBWZIzQFmX5n93jpE7W1i4P9vw/nJePwjBgnRAU8nhKZHBUPSj1aFG3/L22oIng x7acqF2oZk6m0WmahddAKvKS3gOei0kcTBzhuAVQsAjLtgc3AuHwVnBmq+kLMxqKHZN5 i0tWhD2mjYSBhbt4QwANKX1SPVnO6/1iGp3ts2E1QTlS30UwSJcuqd/T58g0P8SJ1i81 iEkQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:subject:content-transfer-encoding :content-language:in-reply-to:mime-version:user-agent:date :message-id:from:references:cc:to:arc-authentication-results; bh=R8iakD2jsJZhUeaJ3umYU0icES7Kol6Oz3ExWh4gVHE=; b=W0YW7zt/dH6yOtA2nEhzSr3nLYKQFz+8how/QnKurlWImDvOICkRhSWJSiL94bxpxZ w9NKFX44YBKTU/AnBKrdJCQeCJf7G4/YN9gnTRQ6Lu8anBMPCpalj4SssOptBFsAnfeD 5acJwvPNX7TJREOxEQP5ZQaopKCxkdPuFQEKn6aFkzxe6UF0/NUNvyiasUAYJcekqSgJ V280mpHTQQx6oRlEWnM/qiSeovcRoHnRObNNuLvKRWd82EpSZDWtPEUb2HI4YptxDEtQ /FQmkXVxJ6SSOivKjUMWbQfTMUGKhG2RyO9oDFf1oqpYAwbFD2RoEaRX/BLwSB+SXTYJ 6lrg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id x9-v6si25680037plv.159.2018.05.08.12.46.48; Tue, 08 May 2018 12:47:02 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755211AbeEHTqR (ORCPT + 99 others); Tue, 8 May 2018 15:46:17 -0400 Received: from ale.deltatee.com ([207.54.116.67]:60686 "EHLO ale.deltatee.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751210AbeEHTqQ (ORCPT ); Tue, 8 May 2018 15:46:16 -0400 Received: from guinness.priv.deltatee.com ([172.16.1.162]) by ale.deltatee.com with esmtp (Exim 4.89) (envelope-from ) id 1fG8Yh-00077L-5U; Tue, 08 May 2018 13:45:59 -0600 To: Alex Williamson Cc: =?UTF-8?Q?Christian_K=c3=b6nig?= , Bjorn Helgaas , linux-kernel@vger.kernel.org, linux-pci@vger.kernel.org, linux-nvme@lists.infradead.org, linux-rdma@vger.kernel.org, linux-nvdimm@lists.01.org, linux-block@vger.kernel.org, Stephen Bates , Christoph Hellwig , Jens Axboe , Keith Busch , Sagi Grimberg , Bjorn Helgaas , Jason Gunthorpe , Max Gurtovoy , Dan Williams , =?UTF-8?B?SsOpcsO0bWUgR2xpc3Nl?= , Benjamin Herrenschmidt References: <20180423233046.21476-1-logang@deltatee.com> <20180423233046.21476-5-logang@deltatee.com> <20180507231306.GG161390@bhelgaas-glaptop.roam.corp.google.com> <0b4183ef-e720-204b-9e85-b9eaf7a4136a@deltatee.com> <3584a6ac-95c7-5d23-1859-aee30605776e@deltatee.com> <20180508133407.57a46902@w520.home> From: Logan Gunthorpe Message-ID: <5fc9b1c1-9208-06cc-0ec5-1f54c2520494@deltatee.com> Date: Tue, 8 May 2018 13:45:50 -0600 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.7.0 MIME-Version: 1.0 In-Reply-To: <20180508133407.57a46902@w520.home> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit X-SA-Exim-Connect-IP: 172.16.1.162 X-SA-Exim-Rcpt-To: benh@kernel.crashing.org, jglisse@redhat.com, dan.j.williams@intel.com, maxg@mellanox.com, jgg@mellanox.com, bhelgaas@google.com, sagi@grimberg.me, keith.busch@intel.com, axboe@kernel.dk, hch@lst.de, sbates@raithlin.com, linux-block@vger.kernel.org, linux-nvdimm@lists.01.org, linux-rdma@vger.kernel.org, linux-nvme@lists.infradead.org, linux-pci@vger.kernel.org, linux-kernel@vger.kernel.org, helgaas@kernel.org, christian.koenig@amd.com, alex.williamson@redhat.com X-SA-Exim-Mail-From: logang@deltatee.com X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on ale.deltatee.com X-Spam-Level: X-Spam-Status: No, score=-8.9 required=5.0 tests=ALL_TRUSTED,BAYES_00, GREYLIST_ISWHITE autolearn=ham autolearn_force=no version=3.4.1 Subject: Re: [PATCH v4 04/14] PCI/P2PDMA: Clear ACS P2P flags for all devices behind switches X-SA-Exim-Version: 4.2.1 (built Tue, 02 Aug 2016 21:08:31 +0000) X-SA-Exim-Scanned: Yes (on ale.deltatee.com) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 08/05/18 01:34 PM, Alex Williamson wrote: > They are not so unrelated, see the ACS Direct Translated P2P > capability, which in fact must be implemented by switch downstream > ports implementing ACS and works specifically with ATS. This appears to > be the way the PCI SIG would intend for P2P to occur within an IOMMU > managed topology, routing pre-translated DMA directly between peer > devices while requiring non-translated requests to bounce through the > IOMMU. Really, what's the value of having an I/O virtual address space > provided by an IOMMU if we're going to allow physical DMA between > downstream devices, couldn't we just turn off the IOMMU altogether? Of > course ATS is not without holes itself, basically that we trust the > endpoint's implementation of ATS implicitly. Thanks, I agree that this is what the SIG intends, but I don't think hardware fully supports this methodology yet. The Direct Translated capability just requires switches to forward packets that have the AT request type set. It does not require them to do the translation or to support ATS such that P2P requests can be translated by the IOMMU. I expect this is so that an downstream device can implement ATS and not get messed up by an upstream switch that doesn't support it. Logan