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 1D211C7EE26 for ; Fri, 19 May 2023 08:48:17 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 99625900006; Fri, 19 May 2023 04:48:16 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 91FB2900004; Fri, 19 May 2023 04:48:16 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 7E662900006; Fri, 19 May 2023 04:48:16 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id 6C391900004 for ; Fri, 19 May 2023 04:48:16 -0400 (EDT) Received: from smtpin16.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id 390A7409DD for ; Fri, 19 May 2023 08:48:16 +0000 (UTC) X-FDA: 80806377792.16.D6A028E Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) by imf17.hostedemail.com (Postfix) with ESMTP id 148F240008 for ; Fri, 19 May 2023 08:48:12 +0000 (UTC) Authentication-Results: imf17.hostedemail.com; dkim=pass header.d=infradead.org header.s=bombadil.20210309 header.b=bRy4xB+F; dmarc=none; spf=none (imf17.hostedemail.com: domain of BATV+aecf67361b95543ec79f+7208+infradead.org+hch@bombadil.srs.infradead.org has no SPF policy when checking 198.137.202.133) smtp.mailfrom=BATV+aecf67361b95543ec79f+7208+infradead.org+hch@bombadil.srs.infradead.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1684486094; 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=ZAbGvedE1BQJOMrbfCufZTyJ4e2EZLn0BqAhB63sICY=; b=oL/ppz2lzWsN3KVYuxSYXXIWRiXlp/bcKNRu60LiDm5cm3yLIedUFDWvX7soPm09fX+YqU 2umMoObYpYQC9JkpEM6mpA3KKaUKcwqWdUmv5kkaFKmp9TsvkhMYU1D8e0ktJvpaBDL2DW PzHSYoEllawJks4ay6axq65nggn3C9Y= ARC-Authentication-Results: i=1; imf17.hostedemail.com; dkim=pass header.d=infradead.org header.s=bombadil.20210309 header.b=bRy4xB+F; dmarc=none; spf=none (imf17.hostedemail.com: domain of BATV+aecf67361b95543ec79f+7208+infradead.org+hch@bombadil.srs.infradead.org has no SPF policy when checking 198.137.202.133) smtp.mailfrom=BATV+aecf67361b95543ec79f+7208+infradead.org+hch@bombadil.srs.infradead.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1684486094; a=rsa-sha256; cv=none; b=Qyel+EbrJqUHy5RNKBpNraDAa9CP3NFtoTUyytNfz8W6UrIetaAo33lindH1AHmJhU1sVy YkInNQR91HEfL/N7a/eGAvaRK080ehIk9xWMzHLExIK8cHshmsaiSEi9P1UO1xRN/QM0CH ZtZh21AC7T6BMBiNtiUr1JUf/QwxXww= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20210309; h=In-Reply-To:Content-Type:MIME-Version :References:Message-ID:Subject:Cc:To:From:Date:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description; bh=ZAbGvedE1BQJOMrbfCufZTyJ4e2EZLn0BqAhB63sICY=; b=bRy4xB+F05w3yUcX9Qj7jsXixk UiPK2HdtbtcNlpwDDsAwCjjVN21Tp6m1GqZVtPqu51Zhc6QFKauy/qn1GcXC52/0SNNQKgEZeknSX 1dCTZoBtDIOdxZuKa757Yd+g3fbdTG/klmlaRG2fFtO15XaDjQqvTdwnk/Tpkz2ldnTO37pUBCiMF LOHeUyGfWDuTGQyuyG3p0D7oGhKcYZggXCvVyz5lpXq3AzvG08oK2f3l3T/faSWz+kBHPlw8dAMTT 1OJKf6iOGpmKMWIapyjTFeN5r/xDRyfa5hfC5eSXLwrEQyVOiwkPSqmZunppGfp65GiofaE2or3W+ wUeaUBzw==; Received: from hch by bombadil.infradead.org with local (Exim 4.96 #2 (Red Hat Linux)) id 1pzvmI-00FZoD-04; Fri, 19 May 2023 08:47:58 +0000 Date: Fri, 19 May 2023 01:47:57 -0700 From: Christoph Hellwig To: David Howells Cc: Christoph Hellwig , 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 Message-ID: References: <20230519074047.1739879-1-dhowells@redhat.com> <20230519074047.1739879-4-dhowells@redhat.com> <1742093.1684485814@warthog.procyon.org.uk> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1742093.1684485814@warthog.procyon.org.uk> X-SRS-Rewrite: SMTP reverse-path rewritten from by bombadil.infradead.org. See http://www.infradead.org/rpr.html X-Rspamd-Queue-Id: 148F240008 X-Rspam-User: X-Rspamd-Server: rspam02 X-Stat-Signature: bodmxibk5m3u4gbr3jr8kjazx3n3z5oq X-HE-Tag: 1684486092-454584 X-HE-Meta: U2FsdGVkX194Xw9cEUDBJQU8mmtwUw1eBrpiT68FsiGe8pEw74Ik0WbahXNH0W3H5ElXfbLVp6vjw77sV2VxPmDUghkiWtWJV5E1b5zvh9S6ofIyO1q4eoBqfguaSvEEJ+1H9w8nU0qa6El5beT8HYm8MhZ/bpXD1WW1hdQzkSEX0+cM7gi8FAYY6/ms3tcW1RaU/xL2q8XUZ6aOChBX44GobTBjpmRCwo1fmWAvORwQ71KHLJwDiqjI4cGzvr72uuuQ7hT9Fu8iN/snNOVu7YQSP/vSmdIPWKkLHVAqDrDGffHC3O9/gRRIuzMLVBi5EJQt8r6f73LH/nkMG5z54ScF/ezwtK51iKiUG7L7voj/YApnS8eJ6a2Jh9X2T5p3ifM7hn9D5hjMAVVpoW8tJynyxy0VX0rxJhYegAEm85EovbhPunqzLwcx3+rV6gTTaMh9sXN08XgnaeGSwvKSxERyga3+uFUnHHmiPybPo3VbESBC9EQXVeVuYuE29UwLVaT6EySOzHkmqzN39Fz7Fk+5ScPR1Yc8lzNyJASDPxvxT2nRUOgHFf09uyGUp1XKM19t5Uux7i7SM+ywHIBdC7MZVkMcONNB0e2qm9/WulF4YMcTLt4os9mrczcUWyAwa4wVr93V5AsexMEJ0vny6xb9yVHM5Vn6HSCd8zkG50iEG3tpombhVaJ8egsHc1TMgAMfnJAhX0AKEQkFF1Q4BsNcROGgpX1+1nL5mny+4L+e478P9b9hiKkrOivs7IR1rz6PG5kUxNTY13XEGWOFtWjQ5gEKAu8OPILQQlB5+PqYBY7K6rMqUYduwn0wneSWnKyTgKjEQDPXqRCceduCjXxVqa9/HHuri7ATyolsvFoYQ8htSE3/DEfKr8kqeCg0e3QUheLeRA3kffwucAq24VSLuUoJV+jSmJjDYPEXqJynfBiEmTM6tcs92c+qzk7QzohIavjTxmjVNA6U5uM qj6EKzrV TQPwt6SH9Bn7l2f/DNGzK5U37BrvZBm0C3NHD2AQyhCqnQQJu0HLlE0nBSElB98mSgz//AQw+ugP230rWdcRQbE8jhTXYoy0WTdCLZWE2WYDuvE4K8GjXza0WfVmqBa+vTo5P4/DHaKofhYT82rIfFUjHYhB4eallieQpXClPQzb6ZYkYnwxkGoelzR4IT+B0+xKcw+Hs8w2V0JfCnRdIREcSsVKNvWBs510gO2Nmngeb4tgOGQBgSkrWAeDy+wPep0rFBZrnoRRxc3g8gE1KP5nZSZZZV7oBIZ/xXAgvMpgzQtEYVP7mNXY4EYQMWBwDfmKVfES75GNf93hj/y88UHRIzx/QOFkcAsHZ4H3BkIKusFjIeFZmN0LJxs1TxfH3dKdHLyRL1HRpfWRKsscYMNjFZMkf/kI8I5Y6H13WvUP0rw0OSNhCA4eMxg== 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 Fri, May 19, 2023 at 09:43:34AM +0100, David Howells wrote: > > 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()? Maybe something like that, yes. > > > 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. So? even if ->read_iter does buffered I/O for O_DIRECT it will still work. This can in fact happen for many other file systems due when they fall back to buffeed I/O due to various reasons.