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 26459C77B7F for ; Fri, 19 May 2023 08:43:46 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id A0C8B900006; Fri, 19 May 2023 04:43:45 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 9BC6D900004; Fri, 19 May 2023 04:43:45 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 8AB3C900006; Fri, 19 May 2023 04:43:45 -0400 (EDT) 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 78C2D900004 for ; Fri, 19 May 2023 04:43:45 -0400 (EDT) Received: from smtpin16.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 421701609C2 for ; Fri, 19 May 2023 08:43:45 +0000 (UTC) X-FDA: 80806366410.16.84198D9 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by imf19.hostedemail.com (Postfix) with ESMTP id 5EF5D1A0014 for ; Fri, 19 May 2023 08:43:43 +0000 (UTC) Authentication-Results: imf19.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b="BTwTYL/z"; dmarc=pass (policy=none) header.from=redhat.com; spf=pass (imf19.hostedemail.com: domain of dhowells@redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=dhowells@redhat.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1684485823; 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=XqulE8q9IX0TG97OlqccamVpFcIlEkKL1KejXgaitAk=; b=XzeQ4cGrwWRM9M5qUWNMiSbKEdZPYJrROJ8ycFXgPoyb6/ER4w5x2wY6pzKcCVa7D6FBoh aQBSV0+VEqSlVq+OBUoJ84mwAs+SwOjqy1A1Ub+LuY59O13YPjuhdV4A9srufB36uH5A46 e9CLnMv7U11Pivd2F34Vc6Si/NIf29c= ARC-Authentication-Results: i=1; imf19.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b="BTwTYL/z"; dmarc=pass (policy=none) header.from=redhat.com; spf=pass (imf19.hostedemail.com: domain of dhowells@redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=dhowells@redhat.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1684485823; a=rsa-sha256; cv=none; b=XUZ46LAEUGdQJy+yNYyklHCKX9P1hJoiNyVr+wGc1hs26IyaPfZIkDMRVsJDgsEpBrqqHK DmkMCK6803Wdg6AxsqfO9USkiAHNgCQ91AK1pV6S0dplftvBicYEFgvvp6DDlLgYSaSErp pUFsADQW0SNdxOtB/odhyF4o9vatugs= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1684485822; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=XqulE8q9IX0TG97OlqccamVpFcIlEkKL1KejXgaitAk=; b=BTwTYL/z6w/qmMYWOMMVpa15uhdKwTT6EKuc6bb5mxEqNt1kxL6qSvcO6gUoT+Ikfaw/Uo Pm2493SIbo9OoFb9cUcrKGHYNKHO76oAfLIk+cYo+GeFG3XFCwIdh/Q16hptT+u/KWa7zy Z5kIclqQuhxO/ZvyypuNw3ba4pxXJbk= Received: from mimecast-mx02.redhat.com (mx3-rdu2.redhat.com [66.187.233.73]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-210-RPMCJFogMQCYbOjG6Sj0GA-1; Fri, 19 May 2023 04:43:39 -0400 X-MC-Unique: RPMCJFogMQCYbOjG6Sj0GA-1 Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.rdu2.redhat.com [10.11.54.2]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 5319B3802AC6; Fri, 19 May 2023 08:43:38 +0000 (UTC) Received: from warthog.procyon.org.uk (unknown [10.42.28.221]) by smtp.corp.redhat.com (Postfix) with ESMTP id 0D3F840C6CCD; Fri, 19 May 2023 08:43:34 +0000 (UTC) Organization: Red Hat UK Ltd. Registered Address: Red Hat UK Ltd, Amberley Place, 107-111 Peascod Street, Windsor, Berkshire, SI4 1TE, United Kingdom. Registered in England and Wales under Company Registration No. 3798903 From: David Howells In-Reply-To: References: <20230519074047.1739879-1-dhowells@redhat.com> <20230519074047.1739879-4-dhowells@redhat.com> To: Christoph Hellwig Cc: dhowells@redhat.com, Jens Axboe , Al Viro , Matthew Wilcox , Jan Kara , Jeff Layton , David Hildenbrand , Jason Gunthorpe , Logan Gunthorpe , Hillf Danton , Christian Brauner , Linus Torvalds , linux-fsdevel@vger.kernel.org, linux-block@vger.kernel.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org, Christoph Hellwig Subject: Re: [PATCH v20 03/32] splice: Make direct_read_splice() limit to eof where appropriate MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-ID: <1742092.1684485814.1@warthog.procyon.org.uk> Date: Fri, 19 May 2023 09:43:34 +0100 Message-ID: <1742093.1684485814@warthog.procyon.org.uk> X-Scanned-By: MIMEDefang 3.1 on 10.11.54.2 X-Rspamd-Server: rspam09 X-Rspamd-Queue-Id: 5EF5D1A0014 X-Stat-Signature: 8s6n4u9bpfx5ke5jc5qi1h8g3p4einhw X-Rspam-User: X-HE-Tag: 1684485823-642040 X-HE-Meta: U2FsdGVkX18llnqfaz3+VA5bYUdEAvHiRw0M5eSCvxP+FcZimiRLM3Ki69B0vSaXc42ufeZWL3suAlBr/6h7nE3T7gfE7dOyzV24YsLj9ENPD+N+V6SmJ61ib/5cHuEAYm7qKz4knYrxMHPKJnjScF0fgOHTLQEYpqi+mN+mEQtnTN4DAYCuT917qlzP6DLuDqt7IEsQZ8doBCS1uoPj/r4Vv0NJF4vm0hja75iaRDmD9VqwjFdnWWfCxIwdEJ64YtrZ57ch7NsEiOGAbM2QsZh2muuq7n+4SP4cSimNTlqVDI75KIT8kENQbxb9hW97mIObDnJ3UMcwPYpw0dRVq1hAx4e6cVp2pxt63wkczoqAcDgn9F/SLZWM978q8RQHj2Gpw/TKJx3dztKDQVIVYc3jA6af5eP6pvg8s85g6JY3tmDb9pPRzKovQFa7MqJL0Iih/ED3R/3vRc8iHj8XNENvUEF0ySSUTSgEXfTZCK4RL48Ajad0fPMhIq5r+mDw4ITwlixT6JFoJhVqsZxQqt+9cQKSdcFqwj/oO6iBDLsKV12NrY1RtvzN0gJIsfbVmwEBcSFL0YA1gF/h09cpQgCOSb3++6pQX2B5IKJaTajQiGWpkSjdhZRPbv9eNjhou7Z8Ckt289UrLKKQQZpq0DYH0UVLXN3JnUzmX1gX7SY/bIB66OxLibQApXOI+wBLDmdZ0w6olM+1MhiM3tGFMmURs3qu76v+bLWN78gbV/tlKWRavVgn9NHSGXCPqHiLjSKsXlNWpGYxFX/NTtwmghTs+QvkVYOUcqDeZUl1tQNEVKFqZVjkomGqFGFoJuAnWyLJJsRjOzwvmkloBDL4/P83JAOvCH+JbCBDk1+YlhBxCWEQxaTwLoGQUMnqOruCgBXfiCo6zq7T2Uls80CyWXIzqEDvMaWciIUm72W/VRr0UH29BmplCVazSbwWEAdV7Mkg4qtSAGzw4POQuCK iuEYpwfk nyvMREkjtqEkWusaB6ktyJy888Oc191g24ra/NorjY+gkHzOWuYyPBOzazv0Cz/WiIANwM7vQatqjeYq8u9KaKSyJxAmlVOrGfpe0KtQF6Ku7g7DjaEZrvsYWTe33caoIvO6Q6gIGixBhaRHuHKXM01JW77czjJQ4rKDGDmRIn3bQcaqID6d1WfHSOYNwVW7lmGPgZsypQj3iekvkE4g7wHpUepqB62/51Ce1WqTIO5XMlovYRZwpJ30sMy1zugML5683 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: Christoph Hellwig wrote: > I'm really not sure if this is a good idea. Right now > direct_read_splice (which also appears a little misnamed) really is > a splice by calling ->read_iter helper. It can be renamed if you want a different name. copy_splice_read() or copy_splice_read_iter()? > I we don't do any of this validtion we can just call it directly from > splice.c instead of calling into ->splice_read for direct I/O and DAX and > remove a ton of boilerplate code. There's a couple of places where we might not want to do that - at least for non-DAX. shmem and f2fs for example. f2fs calls back to buffered reading under some circumstances. shmem ignores O_DIRECT and always splices from the pagecache. David