Received: by 2002:a05:6a10:f347:0:0:0:0 with SMTP id d7csp4461906pxu; Wed, 9 Dec 2020 18:44:10 -0800 (PST) X-Google-Smtp-Source: ABdhPJx7sdwpN60HSdphL/GDeMOAjooFLii37IDbW4Tw6FkyI8HPcKQ1HYy53geFqyUORt4W9sTh X-Received: by 2002:a17:906:3187:: with SMTP id 7mr4608194ejy.225.1607568250761; Wed, 09 Dec 2020 18:44:10 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1607568250; cv=none; d=google.com; s=arc-20160816; b=q5C6kipUxZejQ+/J4SFXw0QwSc1q4qnUU5R7LOdoPeGLOCz79JjTnXim80tMsobOVV l3WLusVggIeFHgyPrDtuS8Tdu93k9O7D7IrgUkEkcEKWnWpYb7MU4riQszIJFwzOGMih MYZSNerPk7RXZyNWef1u23MnQa/geY8UU4yIYPtGjNHf+SQLOk54AUr8dUVG7hmfxlgM ZN/VdlvpNbWL2h2df2IOQNZXYR/+KPxMxUc9waiGzXZKw3TCLvFT5pWk+FlEEmBjt3py 4KpKDfbiZNd5rH5meDLeY4VeN7rvCKIwhaL/55fbbHg/2PnHrXuIovWXYpcdsU/uEEOX d3jg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:subject:content-transfer-encoding :content-language:in-reply-to:mime-version:user-agent:date :message-id:from:references:cc:to:dkim-signature; bh=Uml3Mld7EOkwqbJ9IqsKe3VTCWPV7AsDblFsW7V45yw=; b=fPvGufh9vyt+neWoY7JFT7cYLDcb4UkoImfoZkidVyBFFZTIH4IFqwE5n106ThnHIm r0rzSCcmZ8EMfGcfaQfedAKagoxo/TEE269g4HRebwAqZJuZdyk0SnaPMQO8t4kDXTyg 4sOdN59lxQt7Bdow2MPzGbABovKrgGwx5sc1QX+W5rmpbGx4OgfhNAwTEoK6SNhaarl+ uJ1c6Yk47I9vJHgpUpZMP56bEw4F51AFkgs6ZIjVjLyjk69xAP3cwmiXXJmZoTrQ8jGN m6RmOcDfmMIBFSOtmCe+hs02uv/7eY/v7D2ZE55PdEAMRaBf/sc6xESl8SJPFH2gZw67 H4TQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@deltatee.com header.s=20200525 header.b=q5k3ZedQ; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id e14si1754779ejr.169.2020.12.09.18.43.46; Wed, 09 Dec 2020 18:44:10 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@deltatee.com header.s=20200525 header.b=q5k3ZedQ; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727759AbgLJCHc (ORCPT + 99 others); Wed, 9 Dec 2020 21:07:32 -0500 Received: from ale.deltatee.com ([204.191.154.188]:39192 "EHLO ale.deltatee.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727126AbgLJCHb (ORCPT ); Wed, 9 Dec 2020 21:07:31 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=deltatee.com; s=20200525; h=Subject:In-Reply-To:MIME-Version:Date: Message-ID:From:References:Cc:To:content-disposition; bh=Uml3Mld7EOkwqbJ9IqsKe3VTCWPV7AsDblFsW7V45yw=; b=q5k3ZedQmC5MXoHZ2KUQBWN2Oz hquggxONMg9OTs9nTIGThURenvo42BA7KY08/toQkCBcNvHJmSs/mKRb5vQ9qzVX/OQgeho0G6WdO 9XxCBe11YKfR/VlCB41qkLCtIUS3xCIgIfqrgZQRZ2bxV+gFQp/JjVUm8FS1KWKPLt4w1vqalq2Y+ Y5a5In4k6tV2ekjPZBMOl4ZPDqqXRiRCqiRxzbFMyXp5HhBTRqxZK/1xsBeK1Vg84BAWQx1sItp/D Jr5RGFJd+FK4oQ14PB9CQP62D+M45qewCwQT+yFwRJ9FzoW79zsE6chP5NWVZBjIKnO41O8XhIL9u fFBxnSUA==; Received: from s01060023bee90a7d.cg.shawcable.net ([24.64.145.4] helo=[192.168.0.10]) by ale.deltatee.com with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1knBLs-0005p7-VP; Wed, 09 Dec 2020 19:06:41 -0700 To: Dan Williams Cc: Christoph Hellwig , Linux Kernel Mailing List , linux-nvme@lists.infradead.org, linux-block@vger.kernel.org, Linux PCI , Linux MM , "open list:DMA MAPPING HELPERS" , Stephen Bates , Jason Gunthorpe , =?UTF-8?Q?Christian_K=c3=b6nig?= , Ira Weiny , John Hubbard , Don Dutile , Matthew Wilcox , Daniel Vetter References: <20201106170036.18713-1-logang@deltatee.com> <20201106170036.18713-5-logang@deltatee.com> <20201109091258.GB28918@lst.de> <4e336c7e-207b-31fa-806e-c4e8028524a5@deltatee.com> From: Logan Gunthorpe Message-ID: Date: Wed, 9 Dec 2020 19:06:35 -0700 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.5.1 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit X-SA-Exim-Connect-IP: 24.64.145.4 X-SA-Exim-Rcpt-To: daniel.vetter@ffwll.ch, willy@infradead.org, ddutile@redhat.com, jhubbard@nvidia.com, iweiny@intel.com, christian.koenig@amd.com, jgg@ziepe.ca, sbates@raithlin.com, iommu@lists.linux-foundation.org, linux-mm@kvack.org, linux-pci@vger.kernel.org, linux-block@vger.kernel.org, linux-nvme@lists.infradead.org, linux-kernel@vger.kernel.org, hch@lst.de, dan.j.williams@intel.com X-SA-Exim-Mail-From: logang@deltatee.com X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on ale.deltatee.com X-Spam-Level: X-Spam-Status: No, score=-6.9 required=5.0 tests=ALL_TRUSTED,BAYES_00, NICE_REPLY_A autolearn=ham autolearn_force=no version=3.4.2 Subject: Re: [RFC PATCH 04/15] lib/scatterlist: Add flag for indicating P2PDMA segments in an SGL X-SA-Exim-Version: 4.2.1 (built Wed, 08 May 2019 21:11:16 +0000) X-SA-Exim-Scanned: Yes (on ale.deltatee.com) Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 2020-12-09 6:22 p.m., Dan Williams wrote: > On Mon, Nov 9, 2020 at 8:47 AM Logan Gunthorpe wrote: >> >> >> >> On 2020-11-09 2:12 a.m., Christoph Hellwig wrote: >>> On Fri, Nov 06, 2020 at 10:00:25AM -0700, Logan Gunthorpe wrote: >>>> We make use of the top bit of the dma_length to indicate a P2PDMA >>>> segment. >>> >>> I don't think "we" can. There is nothing limiting the size of a SGL >>> segment. >> >> Yes, I expected this would be the unacceptable part. Any alternative ideas? > > Why is the SG_P2PDMA_FLAG needed as compared to checking the SGL > segment-pages for is_pci_p2pdma_page()? Because the DMA and page segments in the SGL aren't necessarily aligned... The IOMMU implementations can coalesce multiple pages into fewer DMA address ranges, so the page pointed to by sg->page_link may not be the one that corresponds to the address in sg->dma_address for a given segment. If that makes sense -- it's not the easiest thing to explain. Logan