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 3A7E0EB64D9 for ; Thu, 29 Jun 2023 04:42:32 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 9AB2F8D0002; Thu, 29 Jun 2023 00:42:31 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 95B3C8D0001; Thu, 29 Jun 2023 00:42:31 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 849FF8D0002; Thu, 29 Jun 2023 00:42:31 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 760888D0001 for ; Thu, 29 Jun 2023 00:42:31 -0400 (EDT) Received: from smtpin01.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id 3AA72140BA0 for ; Thu, 29 Jun 2023 04:42:31 +0000 (UTC) X-FDA: 80954539302.01.ED22AF4 Received: from mail-yb1-f176.google.com (mail-yb1-f176.google.com [209.85.219.176]) by imf04.hostedemail.com (Postfix) with ESMTP id 62C0B40008 for ; Thu, 29 Jun 2023 04:42:28 +0000 (UTC) Authentication-Results: imf04.hostedemail.com; dkim=pass header.d=google.com header.s=20221208 header.b=CmJJ25Hr; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf04.hostedemail.com: domain of hughd@google.com designates 209.85.219.176 as permitted sender) smtp.mailfrom=hughd@google.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1688013748; 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=eOfSHSvnetiPIiAzH/sv81XhJUlB8fw91bEdXAnyaZw=; b=2+rDPzCZMrwdPX9+YxHlSgyOBkTO5Jq4Xqd4XbIqvvsyE8DgUrC4pilPFK1GFWD6tK8Lmn iJRHXYPnzU6VvvBbQdwRdQqNyKkJsTYEL5oCvGKYmQdq86rZrnXx7emNcTT3GjNy960/Ba VMIrMgcLXqc1fWyP7hhNZu3uuhqz+zc= ARC-Authentication-Results: i=1; imf04.hostedemail.com; dkim=pass header.d=google.com header.s=20221208 header.b=CmJJ25Hr; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf04.hostedemail.com: domain of hughd@google.com designates 209.85.219.176 as permitted sender) smtp.mailfrom=hughd@google.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1688013748; a=rsa-sha256; cv=none; b=HOwB744DJpFP6MAufKzAcJPW+BJv8dI31gd+lQydD6Q0e6QZu5hFDL7YgFJkZI37fgVlAo PLYHmTvOVFZNiBp16rxdwKhfO2AFZqSKh+zQoYuonDsq+XQ34hPS8OOQc5T2wVI3Gn0Rz/ J2Dp9Jnm0oDWAqt7Ii5Gq+eBfMhnyjc= Received: by mail-yb1-f176.google.com with SMTP id 3f1490d57ef6-bff0beb2d82so262289276.2 for ; Wed, 28 Jun 2023 21:42:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20221208; t=1688013747; x=1690605747; h=mime-version:references:message-id:in-reply-to:subject:cc:to:from :date:from:to:cc:subject:date:message-id:reply-to; bh=eOfSHSvnetiPIiAzH/sv81XhJUlB8fw91bEdXAnyaZw=; b=CmJJ25HrnL+JjraEoOS3sXf7YzWlSrhPDKo8KN1vnFy4R/XOUkxz8EkkCBrMpB7yCw AG5AOCgh4bVrQQsdoS9OzptfmAP4L/ynbz4JMWWKRkp3vJiAzFUjovjSOdSVYHiWhkBj ap0xpnPCMNVqNJfxIVdu6W/UrmJbaOm4D7pg4LNg7fVtsAkfbDWFKZjV70FXOBy8TmCq stgLrXU3F2Q1IhlpkXD0STjtEWfxVSd4mtTsUhvkBXNZiZGKVKBxL2flMcMetEylmFY1 JvIKEmiVKthuGxMddAQVJTws7CQ/ULSnYSWHW9l1paidCwnMwPvAhOfhBnOxKNX1FHh1 iOyg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1688013747; x=1690605747; h=mime-version:references:message-id:in-reply-to:subject:cc:to:from :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=eOfSHSvnetiPIiAzH/sv81XhJUlB8fw91bEdXAnyaZw=; b=HgoRUwFDLf50/36j2w0drJjccLSbM0klCtV5p3oDHp97N/ahT5feNsJgE/FvRyxQQR /wd5nOoDYRoVM6jVnexRg6YURNubF0PE8uCepWQ/IJhJHPMkKCBOsFn1s2W5BcUBPrlX HVgYNFK4kG11KJRTfzQIgBUzzAadJ0lfDFAfinl8/odZhKaF1VDtQbIoceKlZkd/rIIZ utXsnFjdZt3wsiNYisV1sNF51DYGFt09+OTXcyXNr8FeGMRObl3GQcbkrkfzidLR148/ ebcg/rleb+ADxY+PE1pm6R9Tlj6fvyCZFSjgCUA4MKgLPiADvyH5n4jRkyd0bSMBn1r6 p9jg== X-Gm-Message-State: ABy/qLb5B5jvZMwgnagOafTjEcXUXuauQz1aEvLX1L4gWJ49c5v2MgKN FkSKf88ecEpMlBBFAO2wDkbX1g== X-Google-Smtp-Source: APBJJlHQCATTC4Wcb6fxdTfnRHkjimkFKMWchKkiRsoWwTB5FRzmzEae1Asb0cX7xRKcxqs0v3lmTg== X-Received: by 2002:a0d:ccd7:0:b0:577:228f:467f with SMTP id o206-20020a0dccd7000000b00577228f467fmr1246483ywd.36.1688013747359; Wed, 28 Jun 2023 21:42:27 -0700 (PDT) Received: from ripple.attlocal.net (172-10-233-147.lightspeed.sntcca.sbcglobal.net. [172.10.233.147]) by smtp.gmail.com with ESMTPSA id q130-20020a817588000000b0057725aeb4afsm160224ywc.84.2023.06.28.21.42.26 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 28 Jun 2023 21:42:26 -0700 (PDT) Date: Wed, 28 Jun 2023 21:42:25 -0700 (PDT) From: Hugh Dickins X-X-Sender: hugh@ripple.attlocal.net To: Jens Axboe cc: David Howells , Hugh Dickins , Andrew Morton , Matthew Wilcox , Naoya Horiguchi , David Hildenbrand , Yang Shi , linux-block@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-mm@kvack.org Subject: Re: [PATCH next] shmem: minor fixes to splice-read implementation In-Reply-To: <168173931746.319007.17265276905089710599.b4-ty@kernel.dk> Message-ID: References: <2d5fa5e3-dac5-6973-74e5-eeedf36a42b@google.com> <168173931746.319007.17265276905089710599.b4-ty@kernel.dk> MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII X-Rspamd-Queue-Id: 62C0B40008 X-Rspam-User: X-Rspamd-Server: rspam05 X-Stat-Signature: ao6rdk4z311467qbddssitxbftrzfi8b X-HE-Tag: 1688013748-4069 X-HE-Meta: U2FsdGVkX19DqrBmXD/z5BzG05VZdpyjd+83+8zhnOFQLtYdz756J8+wbbv0lGggtruQ7HDjG3Th61RDsIyVEQrnmqI9Tw2IJQjhcNfdXMwEnlO8uxLxOwneb3z+WfYvs7Vfi8C3TH9dRlStizAc10EQ04uby1P+bgKMexl5ddRYwEsHUlMvF7gdWVPDQdAua/hytrOP3+kONJq5w8IlE0SstahJqpD46YwnDHe4wnqJq1MKP2K44d0UoLkqvOzUnnNIW4xb7GxtHY/mjDUTTNBszNTb8Hg0kmCeJ3UoEZkDd9M4D2hAFmuyLhL+DudLRREBVEj0DnvHkT/fFhxk+jnTg9AfepM+rd0VgTiuqbeflgAizVQCvVZcDikj+GQhqokJPJfewe8EZKlbytn6SAyMIkvhvt/WbW1Pga5aZdiI2EKQXwYvTTw7Zi18ztGDztXMrIcvQ5BDv6hOG3FOdjRQnFfo+1+iQLjHVU7Ib/6WGru2Jr8ZGEXqaEN4jWfBg8B6kcbqdTeYuHbb/PMNC+jdnBvu/r69JiddwJG6NFEK5yMm1f5eXPQuLZMBErpvvtRCnQi1u/R7QMeuXyjmORdPzpZug+dolNmeiJ8KvIIsiow6L53yeEacqySXlsNlfcKhcFLBeSe3kAqND2XogQF2gFx73j1ZW/fyRkWVBiMlPKyGgKVkJyAZmjrGnO15dnvYJ9ssWdNtFI2tdsByNxRHyQKNfOSc7OwPTO32nh4q025nJlZlnwRgWc5pu5LaOftZLvgt+JdRX60dwuu/icpogu8uniKYVQtwNbTJlBYegVHDVy7sYAVI4f4/ldx2PsrUwi19s3HbimDhXoOTVtoQ8nXm8s8ZPjTcg/xjbBoqfOscyGSyJvP9harMrm3XEuKIeMlZJqyLob2xXkEv+9XWvL1De/9WCz7xuLa2arU1olVZ9vdsRO8jgIiik8E5WZQmd9tOx4h50rsKv5u TD+fwmG6 RyP7PWzUzHFEEDP+SSYx9sPbeSPwmfqLJWlb9GPjZqx8iTKlj9zwErBl1ahnrOwYJTibwo1gELNegElJFkTkC91DBDvncpm66viShmYJUA2nkUugi52oUgadMaOP3nTHnW55EA4hMmTwMa1a1em83wtQgcFcD/XDn1027QPbfgnhfg/84prgecN6wVVs0GbRcFmWW5n5gqiqT7ZmOXGU5wBcCMgaKNvzWEY0j0WC8fY2AmWAuZoI+1rELOWUvKCehiqHrhCLYRW/LLNnNvFg7SAUV3XGhKRmoOA6PRlPOjgWOV6NmbU9As2RLbed5pvcKAnOuP9ppkVPlqmQPuNgpoRxOiumsduD9PLkQz+p03sFrT5o= 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 Mon, 17 Apr 2023, Jens Axboe wrote: > On Sun, 16 Apr 2023 21:46:16 -0700, Hugh Dickins wrote: > > generic_file_splice_read() makes a couple of preliminary checks (for > > s_maxbytes and zero len), but shmem_file_splice_read() is called without > > those: so check them inside it. (But shmem does not support O_DIRECT, > > so no need for that one here - and even if O_DIRECT support were stubbed > > in, it would still just be using the page cache.) > > > > HWPoison: my reading of folio_test_hwpoison() is that it only tests the > > head page of a large folio, whereas splice_folio_into_pipe() will splice > > as much of the folio as it can: so for safety we should also check the > > has_hwpoisoned flag, set if any of the folio's pages are hwpoisoned. > > (Perhaps that ugliness can be improved at the mm end later.) > > > > [...] > > Applied, thanks! > > [1/1] shmem: minor fixes to splice-read implementation > commit: 72887c976a7c9ee7527f4a2e3d109576efea98ab > > Best regards, > -- > Jens Axboe Thanks, but it then vanished amidst the subsequent splice convulsions, and I can't quite tell how much of it is still needed - looks like the !len check is now done in vfs_splice_read(), but I didn't work out what happened to ppos and s_maxbytes; the hwpoison and "part" mods still needed, surely? Hugh