From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id D3B4FC352A1 for ; Tue, 6 Dec 2022 18:40:43 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 6A4FF8E0003; Tue, 6 Dec 2022 13:40:43 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 654868E0001; Tue, 6 Dec 2022 13:40:43 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 51C5A8E0003; Tue, 6 Dec 2022 13:40:43 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 3F3CA8E0001 for ; Tue, 6 Dec 2022 13:40:43 -0500 (EST) Received: from smtpin11.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id EBAD3AB24D for ; Tue, 6 Dec 2022 18:40:42 +0000 (UTC) X-FDA: 80212747524.11.D3EDF80 Received: from ale.deltatee.com (ale.deltatee.com [204.191.154.188]) by imf06.hostedemail.com (Postfix) with ESMTP id B5A9618000B for ; Tue, 6 Dec 2022 18:40:40 +0000 (UTC) Authentication-Results: imf06.hostedemail.com; dkim=pass header.d=deltatee.com header.s=20200525 header.b=fxa8RuuD; spf=pass (imf06.hostedemail.com: domain of logang@deltatee.com designates 204.191.154.188 as permitted sender) smtp.mailfrom=logang@deltatee.com; dmarc=pass (policy=none) header.from=deltatee.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1670352042; a=rsa-sha256; cv=none; b=FD5ocGlO+xikM8aqOW3ye9rUnjn885ND3FnfIATYfmJa+LXvbyvBp+PbE1gFClYBBqXGoO bP+Ee/8ZMatko2bTk7fRbHusjAaCAqNZ5mkHCzDBDREZ1l43huA2CMMGxJaTu61o4qvGBd SH0SBKgN55Qgt1oJeOo44kbJCwWh8+I= ARC-Authentication-Results: i=1; imf06.hostedemail.com; dkim=pass header.d=deltatee.com header.s=20200525 header.b=fxa8RuuD; spf=pass (imf06.hostedemail.com: domain of logang@deltatee.com designates 204.191.154.188 as permitted sender) smtp.mailfrom=logang@deltatee.com; dmarc=pass (policy=none) header.from=deltatee.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1670352042; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=ZiiH7sPM36eESYgVd0MVQCEMcrxi9jMZwAnjeL8qWtI=; b=srvD4WDinXPam0OmrZ113ZEGkvDAMffU2gKYa1T9cTqsHQdRsNuCjzKGRRaDOD3B/DYLuy H65555MVhHrgv5Q+4L9rYA/neffQNtiR8KFyXmpmMkWaCI/iKsaYODs8hXuo4iwLw+8/j4 uHMnYAO0zEvclFRvkMRRjHgb6loaITg= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=deltatee.com; s=20200525; h=Subject:In-Reply-To:From:References:Cc:To: MIME-Version:Date:Message-ID:content-disposition; bh=ZiiH7sPM36eESYgVd0MVQCEMcrxi9jMZwAnjeL8qWtI=; b=fxa8RuuDWwVd5gWqReAJK6uA7h Nny/0gZQC9I+tr59D1gA2hOqNspedLXG9FyqFlyZQR7+257futnwHXjXoQPmoPr/W+jZic5cVzPHR 0xnD5YskPYAPxIjxKVejQ+Isixsl6K7NuwfPkpbxDLoWhH+1L0Q0+VYyZNdfl+s+5BYEsyHurI8Dk g4EAXFBbgAqTKkk2YkJT7c5jOklOoFSL65+EFFhHQW4dHvpEr+/mg/CslZWjcE7h8qPntCQ8tLgtk lsHRjnQJckZ4g1qkZM7hhxIMXOH4cdXuuXZ8s0sOVLmx3zEQwrhxCsk3+RI/HrZsY+kLwGu1F+INb kSrHsTFA==; Received: from s0106a84e3fe8c3f3.cg.shawcable.net ([24.64.144.200] helo=[192.168.0.10]) by ale.deltatee.com with esmtpsa (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.94.2) (envelope-from ) id 1p2crp-001syz-HJ; Tue, 06 Dec 2022 11:40:34 -0700 Message-ID: <8420a781-6ac2-e976-cc43-a04d59d2d043@deltatee.com> Date: Tue, 6 Dec 2022 11:40:32 -0700 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.5.0 Content-Language: en-CA To: David Howells Cc: Al Viro , Christoph Hellwig , John Hubbard , Matthew Wilcox , linux-fsdevel@vger.kernel.org, linux-mm@kvack.org, Christoph Hellwig , Jeff Layton , linux-kernel@vger.kernel.org References: <0d62615c-57d1-922b-5ebc-32faabf33327@deltatee.com> <166997419665.9475.15014699817597102032.stgit@warthog.procyon.org.uk> <166997421646.9475.14837976344157464997.stgit@warthog.procyon.org.uk> <1251303.1670351737@warthog.procyon.org.uk> From: Logan Gunthorpe In-Reply-To: <1251303.1670351737@warthog.procyon.org.uk> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-SA-Exim-Connect-IP: 24.64.144.200 X-SA-Exim-Rcpt-To: dhowells@redhat.com, viro@zeniv.linux.org.uk, hch@lst.de, jhubbard@nvidia.com, willy@infradead.org, linux-fsdevel@vger.kernel.org, linux-mm@kvack.org, hch@infradead.org, jlayton@kernel.org, linux-kernel@vger.kernel.org X-SA-Exim-Mail-From: logang@deltatee.com Subject: Re: [PATCH v3 2/4] iov_iter: Add a function to extract a page list from an iterator X-SA-Exim-Version: 4.2.1 (built Sat, 13 Feb 2021 17:57:42 +0000) X-SA-Exim-Scanned: Yes (on ale.deltatee.com) X-Spamd-Result: default: False [-4.22 / 9.00]; BAYES_HAM(-4.32)[95.96%]; SUBJECT_HAS_UNDERSCORES(1.00)[]; DMARC_POLICY_ALLOW(-0.50)[deltatee.com,none]; R_SPF_ALLOW(-0.20)[+ip4:204.191.154.188]; R_DKIM_ALLOW(-0.20)[deltatee.com:s=20200525]; MIME_GOOD(-0.10)[text/plain]; RCVD_NO_TLS_LAST(0.10)[]; RCVD_COUNT_TWO(0.00)[2]; MIME_TRACE(0.00)[0:+]; RCPT_COUNT_SEVEN(0.00)[10]; FROM_EQ_ENVFROM(0.00)[]; TO_MATCH_ENVRCPT_SOME(0.00)[]; MID_RHS_MATCH_FROM(0.00)[]; ARC_NA(0.00)[]; DKIM_TRACE(0.00)[deltatee.com:+]; FROM_HAS_DN(0.00)[]; ARC_SIGNED(0.00)[hostedemail.com:s=arc-20220608:i=1]; TO_DN_SOME(0.00)[]; RCVD_VIA_SMTP_AUTH(0.00)[] X-Rspam-User: X-Rspamd-Server: rspam03 X-Rspamd-Queue-Id: B5A9618000B X-Stat-Signature: jrxgk6fwid88hee719rcpc6bmj54wu4t X-HE-Tag: 1670352040-636770 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: On 2022-12-06 11:35, David Howells wrote: > Logan Gunthorpe wrote: > >> If this is going to be a general replacement for iov_iter_get_pages() >> it's going to need to pass through gup_flags. My recent patchset added >> versions with these and I think it should be in during the next merge >> cycle. [1] > > Cool. Note that the current iov_iter_get_pages2() is broken, which is why Al > wanted a replacement. It should not be taking a ref on the pages in an > XARRAY, BVEC or PIPE - and it should be pinning rather than getting a ref on > pages in IOVEC or UBUF if the buffer is being read into. I'm guessing that > your changes move the latter decision to the caller? My changes maintained the status quo in terms of brokenness. They simply added the gup_flags so I could pass a P2PDMA flag in a couple specific cases. I have no objections to the other changes and vaguely look ok to me, but having not seen patches to convert the users I care about, I thought I'd point out that the P2PDMA use case will need to be supported somehow. Logan