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 23E9DCD4F41 for ; Fri, 22 Sep 2023 09:34:12 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id A4D3D6B02A8; Fri, 22 Sep 2023 05:34:11 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 9FCF26B02A9; Fri, 22 Sep 2023 05:34:11 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 8ECB36B02AA; Fri, 22 Sep 2023 05:34:11 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id 7DD156B02A8 for ; Fri, 22 Sep 2023 05:34:11 -0400 (EDT) Received: from smtpin11.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id 4C6501A07FE for ; Fri, 22 Sep 2023 09:34:11 +0000 (UTC) X-FDA: 81263722302.11.D286F67 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by imf13.hostedemail.com (Postfix) with ESMTP id B7B2B20020 for ; Fri, 22 Sep 2023 09:34:09 +0000 (UTC) Authentication-Results: imf13.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=hhaIBnCa; dmarc=pass (policy=none) header.from=kernel.org; spf=pass (imf13.hostedemail.com: domain of horms@kernel.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=horms@kernel.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1695375249; a=rsa-sha256; cv=none; b=SyIq4+HPgTdEfXq1ZDWVKl9HpugSjca7bSj+EYNScnqIctqaN3HqzA8VeKZ5YYEj0Hepch CZzVu2NzoTvxxKnBS3rTBB1pSeVLx5+lXynHTSTR39yofDiOfxDnqcUbIm9RK7ajkkv68K zkEHq2Qk6OgMpVEE2PZsrRerGn/uid8= ARC-Authentication-Results: i=1; imf13.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=hhaIBnCa; dmarc=pass (policy=none) header.from=kernel.org; spf=pass (imf13.hostedemail.com: domain of horms@kernel.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=horms@kernel.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1695375249; 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: in-reply-to:in-reply-to:references:references:dkim-signature; bh=IwJ/bmdw3Gec3l4YY78ErHglpPqocLkLICgmqsOvJUQ=; b=42xleOKtlz8Mc7JxhhPLQu4Unr/k+5/sYL8t8Hhayl5krG+6xs37Lgo7aO/PdrDUcNMyJZ 5csMDwzbrBfstxoy4giQzNvxrjkZ1X+e7S6LHYrfqZun15HobmceNdRNGL5RrcbjQHwKtZ QGxJZ9p+7hECWliD/4Y55vciMPqKE4g= Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id CAD256222D; Fri, 22 Sep 2023 09:34:08 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id A4E5EC433C9; Fri, 22 Sep 2023 09:34:04 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1695375248; bh=3sau3zGAqT64PlvL93L3t5WW9upTsJ7zh15tcnTdr5Q=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=hhaIBnCaAbuCpSxAopP2bOKGZnEbjsw1ElAoo3Zz7BnAv+l/F+pFaAiLxFA9ny7H4 9L3mO0A6LcrzntFIYgI89H2ltGDEBIp8buJfoqqX2Oket8WLh5QH4+7vA52PjIoXmF zewHVEDJJ5s7nk3si4FZfbeiSKzOb+PQs0ixFTAuCpuG4a7+rn8HDBUBtzxA5Z7LmQ 9DxTufr/nkZ/j9CT/d7cv8Tjl14CVfZvwM5GTA2Jm9SOkAMYeEIgEsSi7Kk/Fh87yA C7Y3P8pP44GUxZbrjNnO7rg1kLoKIIy5/7H2qkrSrshAyEnkdWKtxFpFjNqPVSTvqh bwiFNK1GyFDMQ== Date: Fri, 22 Sep 2023 10:34:01 +0100 From: Simon Horman To: David Howells Cc: Jens Axboe , Al Viro , Linus Torvalds , Christoph Hellwig , Christian Brauner , David Laight , Matthew Wilcox , Jeff Layton , linux-fsdevel@vger.kernel.org, linux-block@vger.kernel.org, linux-mm@kvack.org, netdev@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v5 07/11] iov_iter: Add a kernel-type iterator-only iteration function Message-ID: <20230922093401.GW224399@kernel.org> References: <20230920222231.686275-1-dhowells@redhat.com> <20230920222231.686275-8-dhowells@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230920222231.686275-8-dhowells@redhat.com> X-Rspam-User: X-Rspamd-Server: rspam06 X-Rspamd-Queue-Id: B7B2B20020 X-Stat-Signature: gi9g7swt5da7yrj465eo55g5rr1r7zfg X-HE-Tag: 1695375249-990229 X-HE-Meta: U2FsdGVkX1+IvCMOziMN/9UbGGJekqy5++DYimUI5abLEpJZS4dB1d/5+CB/6Fp9lNZqVma8K6jzWhNLxd0SZ/1YtEmNsZCHaOkeckzbSjNifeagM3C2CQvjAFUaRhr2dy1ZG2bcqYSrk30R0diHVWt5Mc9HASusaQdi6OAItxRrf3+fJUO65QIV8+7tQCotbDapYzzvvXFBVUPtgdhNbxtwb3e1MWdvVHwvVoRxelSc+qOxrMReid/Xn0rQHRr0TWcqCYyeIsTyWfJjffl+1dm3AJqoA15VnI1oRT3u8Gndbozr6RWb+P6BsHCVgZ88brfa5/AUFvpjyj6LzCunoFTd+ThJzA/IutwKS5ghED0ODszryJAPV7+caq35HXdzLAQNhVcdMEYfDQkv3YtBz3fmpVfVokGW0QuyYQAhUcYMyDq7mZtP5sNJpyV0AFofO+1a1/nnw3eOMiZUscOFT2qcy7hp7+AvaaLpq9E9usCtt18bJFPrN/9E4GS9qQpsXR1AZA+V2PwChZXyG7B7PUD+qBcdW0EsOZU0MCxUk1HgubX64R8dWbJPkgA1h3urVmGIRtx92Y0eaEtVDBfZ+VUbkmb6uburGxnWy7Nkuopi2vh+1bS0TudWD3eqb/09g8p7++Q1v/MBd13sUgGxVspqA3rqljeHqIn5RTYqfS8NxWok/KolG0dsor+WrVNH/dCyJa99kOe5ScsXxYcrNMZeB/c6MQL5QW2D3d76NpvGGMSjz8n8Ze55VTzSpYADD0DgkA6agQaMIyD0iNldNSW78gF8QJ7nqW5dYPvALw/SdikX8rTV54/HWqD86r5ko+HBvDGZhY5HRSSYgRkax8UsJbjru4RCoCYK+oRQDr7I7bsvx778f2Lu9cCW1hG0lktY71L1GlbHceX8dt/k4Gbmt73UsLIBKTUG6CUmUOnyE+O2io92JGTRKAdEQRIKfGQGSXDKtIICkJV1sse Lqmftc8m +qfw4AlOAq9ykxVU6pYeqto9OSbGel4P02XhFbv6LC+iDrq7j5JuuQMvBQY50GadSGwuYDoIXLdesPB2Fjv/iZ2Nic6LpJXJnC20UzEyFOnEd/8FZ/SBMDB76/h3tOnB0QIhe9tv1GnYGcW6RoXC+nT0K6oRmkigpQTrHHRJhZ87UEJVeSYa9aOJKV+eBhwBBtD+u8JURhkr1qoRU7Dp9yiCDfIaN85jTBdFEDNuM0TC2vs2YMRpDAn8Hs0vXT2JkHwvKIvWnJCg7FDyFvFsi107ZqIgTkv4eq9ctIn1pJ4CP01L6Phg8vYC5X8oimeXZbkvSBSw4YDyfLss3T/WGelvIbKmB/gvE3dSzWBErxSKl39+Epzmq1QchgNABwfXjLkQURThuMJmDOcuJLDhUxqlhIYKCMtGIXbGwu/4ugRMGwzGTPfISbtg+6EowGKiCEJNaIrMZnT9VL0oIPBcEP5pXkGO0l/Ex9H9wHBLdNprjOSZ+mgOLz4e7cTV8rnHa8VkQMlzWrTCbJWeZm+PbNDseJWA8P9tMdI1aMOd8myTde08YGd5OZMen7xtHxLmwYGRf/iWuvzc8+vTKA0+iv1LiXW8W2Pw5/q6MwjaAKoIPLU/a7BDkFgUG2HWo+UJG9rcf5MbIjwX867ONYqbnOVSlKCFkjrQy6NikTUroXg54/UcWMJ5VeK2S4/iJnLRmK5x9R4DGiS6PTHlC7cQQNyzJSA== 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 Wed, Sep 20, 2023 at 11:22:27PM +0100, David Howells wrote: > Add an iteration function that can only iterate over kernel internal-type > iterators (ie. BVEC, KVEC, XARRAY) and not user-backed iterators (ie. UBUF > and IOVEC). This allows for smaller iterators to be built when it is known > the caller won't have a user-backed iterator. > > Signed-off-by: David Howells > cc: Alexander Viro > cc: Jens Axboe > cc: Christoph Hellwig > cc: Christian Brauner > cc: Matthew Wilcox > cc: Linus Torvalds > cc: David Laight > cc: linux-block@vger.kernel.org > cc: linux-fsdevel@vger.kernel.org > cc: linux-mm@kvack.org > --- > include/linux/iov_iter.h | 31 +++++++++++++++++++++++++++++++ > 1 file changed, 31 insertions(+) > > diff --git a/include/linux/iov_iter.h b/include/linux/iov_iter.h > index 270454a6703d..a94d605d7386 100644 > --- a/include/linux/iov_iter.h > +++ b/include/linux/iov_iter.h > @@ -271,4 +271,35 @@ size_t iterate_and_advance(struct iov_iter *iter, size_t len, void *priv, > return iterate_and_advance2(iter, len, priv, NULL, ustep, step); > } > > +/** > + * iterate_and_advance_kernel - Iterate over a kernel iterator > + * @iter: The iterator to iterate over. > + * @len: The amount to iterate over. > + * @priv: Data for the step functions. nit: an entry for @priv2 belongs here > + * @step: Processing function; given kernel addresses. > + * > + * Like iterate_and_advance2(), but rejected UBUF and IOVEC iterators and does > + * not take a user-step function. > + */ > +static __always_inline > +size_t iterate_and_advance_kernel(struct iov_iter *iter, size_t len, void *priv, > + void *priv2, iov_step_f step) > +{ ...