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 56AACC05027 for ; Thu, 26 Jan 2023 21:59:51 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id E499B8E0003; Thu, 26 Jan 2023 16:59:50 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id DF9D78E0001; Thu, 26 Jan 2023 16:59:50 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id CC2838E0003; Thu, 26 Jan 2023 16:59:50 -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 BB4F78E0001 for ; Thu, 26 Jan 2023 16:59:50 -0500 (EST) Received: from smtpin10.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id 890D31C6748 for ; Thu, 26 Jan 2023 21:59:50 +0000 (UTC) X-FDA: 80398318140.10.5EBABBD Received: from zeniv.linux.org.uk (zeniv.linux.org.uk [62.89.141.173]) by imf05.hostedemail.com (Postfix) with ESMTP id DEC9E10000A for ; Thu, 26 Jan 2023 21:59:48 +0000 (UTC) Authentication-Results: imf05.hostedemail.com; dkim=pass header.d=linux.org.uk header.s=zeniv-20220401 header.b=ZAhKcJYH; spf=none (imf05.hostedemail.com: domain of viro@ftp.linux.org.uk has no SPF policy when checking 62.89.141.173) smtp.mailfrom=viro@ftp.linux.org.uk; dmarc=pass (policy=none) header.from=zeniv.linux.org.uk ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1674770389; h=from:from:sender: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=OjhglGBtSbHObWDXAQNTT3eTz1SwBz2eUzou0wVBXL4=; b=hWpDuoiOY3apwcjDJBgVzIUKFWINNw+noJvKehpWLXcx+/p1PLtp/l/gu+rNAQ3ITFGeOM ZyFq5SvPNFlm3Fg5syNDEjVGYhyH3SwvdUuVdpUaFK3CUnS3msGx1sDym1Ug0dC1a7WwhS WAgkB8ZsFnpM/8pp+aAM1xMVKcnBan0= ARC-Authentication-Results: i=1; imf05.hostedemail.com; dkim=pass header.d=linux.org.uk header.s=zeniv-20220401 header.b=ZAhKcJYH; spf=none (imf05.hostedemail.com: domain of viro@ftp.linux.org.uk has no SPF policy when checking 62.89.141.173) smtp.mailfrom=viro@ftp.linux.org.uk; dmarc=pass (policy=none) header.from=zeniv.linux.org.uk ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1674770389; a=rsa-sha256; cv=none; b=pbt1y/+AYS/4KTlktY5QKZ8ygR+XaQ7bxdv67q361yYmb11UdvK2R3ICN2Ubb3RD7u9g3K tJj82ryYoQuajEkJMB7kvQbJ8slYqMs1xppE6UsRBnlXux5GLSb1gLkAjLs6FQGpxbluOw ZdkjZ9bByZYHYKvEND0h8KcbeZ+fpBQ= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=linux.org.uk; s=zeniv-20220401; h=Sender:In-Reply-To:Content-Type: MIME-Version:References:Message-ID:Subject:Cc:To:From:Date:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description; bh=OjhglGBtSbHObWDXAQNTT3eTz1SwBz2eUzou0wVBXL4=; b=ZAhKcJYH33xoZNrKKxREfVuiKH FE2ksTaRnzRNGB7IjpkdxrQCJVPWs339OBUOQlTkneAfPxtnhoD14ttrIN7GVO4aDCyQzKuiUJKtl ivkcVgBY7xYxb89/MCqUyU0tbGFdeKsxaMqlt/jWodNWlpaq4GQ7faOfpFmYKCJ1c+lnBHVmApfvb DMFPueqgxVxAQhHmDrqLaSUp1TnqHiNvn4sde+xASvB5wvg9YuR9lXOX/xzIXsj0yK/ICoaDmlN+A CDL6eN9pCiUuU9x1vYn2sHeQ/G8hKMy51an4yw8P65vo0syurSlKlXW/MXAF6xgl5cAZfDBiyGiz3 dQJAHSCA==; Received: from viro by zeniv.linux.org.uk with local (Exim 4.96 #2 (Red Hat Linux)) id 1pLAHQ-004K6H-2O; Thu, 26 Jan 2023 21:59:36 +0000 Date: Thu, 26 Jan 2023 21:59:36 +0000 From: Al Viro To: David Howells Cc: Christoph Hellwig , Matthew Wilcox , Jens Axboe , Jan Kara , Jeff Layton , David Hildenbrand , Jason Gunthorpe , Logan Gunthorpe , linux-fsdevel@vger.kernel.org, linux-block@vger.kernel.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org, Christoph Hellwig , John Hubbard Subject: Re: [PATCH v11 2/8] iov_iter: Add a function to extract a page list from an iterator Message-ID: References: <20230126141626.2809643-1-dhowells@redhat.com> <20230126141626.2809643-3-dhowells@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230126141626.2809643-3-dhowells@redhat.com> X-Stat-Signature: skzfdt9tenjaa6dd5j6sj3arbjxbbq97 X-Rspam-User: X-Rspamd-Queue-Id: DEC9E10000A X-Rspamd-Server: rspam06 X-HE-Tag: 1674770388-394942 X-HE-Meta: U2FsdGVkX18Iuq7QyVnrWs4dIkOoqr3Ms1vC8IRGqh6OI6qhSCurQTeO9OzYCAWQqEFPeuWzMmxbFrU329toP1IdsrK0QfUu4chKclfOEx5TSI/CBcw0xnCnnRlAZxw24NmgXmH9BNCs1KLPyVMksPKYyfaoum+i8JVBL8+MW8gYjH0p0KbR9P+RTnlcnvWBmqL7RPmQj+qlRb6HO7yuiwtFrcPbq21E8gJnA3dY3i5qGhN+EF6FfSzaddOp2j97R8DXhix20q/NoijNIeP4fs2E0Cx1vw74omggWu7zmtErE4cOpIXrDHCYHrgHWnWxGauDygYbAnDPK5t/VjvNHmstZwZbo0CXQzJWnTYEG1qfytfADamM1+inHlEE4XgZ48gWRFmmf2x6K94vebamMlwpa1tZPDHOqM10pJkVSy3kNCfXiyQKNAXcNnJspywyQPQVNfu2vRBvVWKgCC6ecPWyXNlVaZJaxWhrZ2MRpLg/uTfDVzdOR/+XWqw0tO2S4WDy5rikdUzGeILLFQRfVx/K6p2XqPA+3nLGzNFRqEN9zgC9fdceCCVnaLb32EqYq6E/Hdotwo0qWS7y8pVrO0w5bnTyGQgpWhMQ4Bf1RCLyLCNDfhTSiTeFDaSVfLW1bvGEx0jK9NSNPeHiWRW8zcZU3AOzQMz4GaTHsOtTtZPK05yp4aPkHwT9YhF0pAj7UIIniJTSzoz/xvdsWd2f46RKXv00DH6ku1JY+N/oL7Z3ilCD/ffC9c/cHnS+h4K/yLldffBmKEtWBY/pH2KgJXqpZD0Xu3ZP7ZuyopUA/HcULXrbv/++90QzSSoJ4Oe5Z1yRcH38sOQsDNvyUrtL9xE/f6ngnL76orEpMsZwTlAC1OjqavS5DK9ts5sRlOPBhkvz/W5RhnafKt5l3PHsdKZilvUEbiCl7tL3oauIMxz2sUIDm7E/Lyazq0cRneWKgPMXWWNbB0fe1B11ZNz CAV6ZGdJ DT47yrTGcNepl/oiYzhUPE7Ff+/uShMmTWBLcTGWmdCL14caLzUXBY0NER7rUpAEc9+xTWlPyXHN0PvwQPzBnVetwOTQ1Yl76KqoiD/GSvRPn6caYJw/WXtRPbFgsJGdlukoqpTnBw5FNBrJD5u3KOE/U1oK/hBK2ZYXfAhV/RXKbA+yaXANO+xiZdFEEV3+msC8uyqVZtviRZvp5znPptBMzw11LqIBaAlRPN7L4S1SjxP+75kw7IQBjTWqXoq6jF+v24kFod3m+UDF0GzlnG+rm7lWOSx0qsYluiI5ABk2rOIhafMAG9laFvWj4XUmqFCv3qYS4qp2H4nPklGPvebSuA/TfouLaX8GTJeQ9VethADy9WuB39zEdvtMATO1V8pWemV16PZqcuP+B0wqgfxqAvcTkHRq5FfuLU26W9AqMUL5AAuzQ2lGlJUqN/yAmHIj9ir2YRLLrD7cjbSys2/cNh6sAc/HSrXRB 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 Thu, Jan 26, 2023 at 02:16:20PM +0000, David Howells wrote: > +/** > + * iov_iter_extract_will_pin - Indicate how pages from the iterator will be retained > + * @iter: The iterator > + * > + * Examine the iterator and indicate by returning true or false as to how, if > + * at all, pages extracted from the iterator will be retained by the extraction > + * function. > + * > + * %true indicates that the pages will have a pin placed in them that the > + * caller must unpin. This is must be done for DMA/async DIO to force fork() > + * to forcibly copy a page for the child (the parent must retain the original > + * page). > + * > + * %false indicates that no measures are taken and that it's up to the caller > + * to retain the pages. > + */ > +static inline bool iov_iter_extract_will_pin(const struct iov_iter *iter) > +{ > + return user_backed_iter(iter); > +} > + Wait a sec; why would we want a pin for pages we won't be modifying? A reference - sure, but...