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 F0947C636D7 for ; Mon, 13 Feb 2023 08:22:53 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 5E3596B0071; Mon, 13 Feb 2023 03:22:53 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 56BA16B0074; Mon, 13 Feb 2023 03:22:53 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 40B696B0075; Mon, 13 Feb 2023 03:22:53 -0500 (EST) 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 2EB0F6B0071 for ; Mon, 13 Feb 2023 03:22:53 -0500 (EST) Received: from smtpin04.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id E496B40D29 for ; Mon, 13 Feb 2023 08:22:52 +0000 (UTC) X-FDA: 80461577784.04.C57D6B4 Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) by imf01.hostedemail.com (Postfix) with ESMTP id 78EC840011 for ; Mon, 13 Feb 2023 08:22:49 +0000 (UTC) Authentication-Results: imf01.hostedemail.com; dkim=pass header.d=infradead.org header.s=bombadil.20210309 header.b=myKwfl24; spf=none (imf01.hostedemail.com: domain of BATV+b43816e12a84725ed160+7113+infradead.org+hch@bombadil.srs.infradead.org has no SPF policy when checking 198.137.202.133) smtp.mailfrom=BATV+b43816e12a84725ed160+7113+infradead.org+hch@bombadil.srs.infradead.org; dmarc=none ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1676276571; a=rsa-sha256; cv=none; b=sklvBGBHhKaJA8Lz363J8kQPApxG5VA0ES07SsVUn59N5CDFTM0+DziU1oQDq5JMsS/W9t B2XgQvXStzawQy9yuI2YES1PC/FBjdZigJlaqtoxKlyK91yztyuTujVzd44PWyzDVPcLYZ EbiC3c/OYduK4oX5N84sNwcmYg8uB80= ARC-Authentication-Results: i=1; imf01.hostedemail.com; dkim=pass header.d=infradead.org header.s=bombadil.20210309 header.b=myKwfl24; spf=none (imf01.hostedemail.com: domain of BATV+b43816e12a84725ed160+7113+infradead.org+hch@bombadil.srs.infradead.org has no SPF policy when checking 198.137.202.133) smtp.mailfrom=BATV+b43816e12a84725ed160+7113+infradead.org+hch@bombadil.srs.infradead.org; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1676276571; 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:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=mQA/TMoqGXtzaC3xl5xqOmLbaTvrl04Kg+nkMyx7H6o=; b=QRvkKmr5rAaiP4+R/A1uzeISbiKVee7DD3ltxiXZCcTEsHoZ81Xk6hUJwaT/j61FM6yxud bcGbPZHMak6vDBvniLqf2nbwq/xXUI8cd44VZq3HoV6fdqZalapnLjK0elYvxXWGax4viy qyqK4s03paGjcjhenXrEYrEBAyEH+9Q= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20210309; h=In-Reply-To:Content-Transfer-Encoding :Content-Type:MIME-Version:References:Message-ID:Subject:Cc:To:From:Date: Sender:Reply-To:Content-ID:Content-Description; bh=mQA/TMoqGXtzaC3xl5xqOmLbaTvrl04Kg+nkMyx7H6o=; b=myKwfl24JBnnudqvTZWtxcOoM7 vSYq9vFkJ6kLpTtn34g7Zd6tKdd+GZxaccqbhIP3MKORXGysgWarLaZqld2FaU2px9GtU7DwAVWRb RSSz9Dc/bFMeFNpohNDcmrffxwAA9f0HQp5WRChtNR3cLbjR8Gx2sOn+uzo42IBATYhwi2JGWni+4 TevkWhFX3zbzw1GvT/L2V2ei8t/Fmd+aUtJtHjpk1Dt4bjReVoKee2JUtMuQzZX5KozrtEngJx76l iI6pjlfh6OYrle1Ml0EonQvRBLd2gG9fQc6hpn0b9jk+Cf/bsQtpRQxy7UfLKKBNxyzBivUhch/2F S0CT16qQ==; Received: from hch by bombadil.infradead.org with local (Exim 4.94.2 #2 (Red Hat Linux)) id 1pRU6N-00DZfL-En; Mon, 13 Feb 2023 08:22:19 +0000 Date: Mon, 13 Feb 2023 00:22:19 -0800 From: Christoph Hellwig To: David Howells Cc: Matthew Wilcox , Jens Axboe , Al Viro , Christoph Hellwig , Jan Kara , Jeff Layton , David Hildenbrand , Jason Gunthorpe , Logan Gunthorpe , Hillf Danton , linux-fsdevel@vger.kernel.org, linux-block@vger.kernel.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org, syzbot+a440341a59e3b7142895@syzkaller.appspotmail.com, Christoph Hellwig , John Hubbard Subject: Re: [PATCH v14 01/12] splice: Fix O_DIRECT file read splice to avoid reversion of ITER_PIPE Message-ID: References: <20230209102954.528942-1-dhowells@redhat.com> <20230209102954.528942-2-dhowells@redhat.com> <909202.1675959337@warthog.procyon.org.uk> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <909202.1675959337@warthog.procyon.org.uk> X-SRS-Rewrite: SMTP reverse-path rewritten from by bombadil.infradead.org. See http://www.infradead.org/rpr.html X-Rspam-User: X-Rspamd-Queue-Id: 78EC840011 X-Rspamd-Server: rspam01 X-Stat-Signature: dce3ww4rcbpxjtjrt5xqs8xrhzeo4byg X-HE-Tag: 1676276569-720947 X-HE-Meta: U2FsdGVkX19vLZOFrnYrfnkT+4XuiAPiIX8eLgqhqQ4EUrDT7qztFVhJ2WpqmhKhTQYtiusPBrxNgaivuVpA8b91bnj64/b0a9hy5aex9bXkr3IGxpQNwKLd4xMyE6Dg5kZysdzBy4DYC5urmAAsGYVmTntqO1WXQzIz5vpzh3XD5ke+QEHnvzs1/MlNnJaqtiTl7pqONn3vg2Svq9yfFC+MZBe46iRMla3cdg2oocGZsW7HIgpxUislc/O4jLIAySbLDMkDa4r5OGoacaHNuDBCtqqajAyLBLYph4flJl68+H2aSy40NIVoIkzmANu7nx7khyQ+7PypJWSVWB/9nw0/wjL2wkCJss7cwsXY0/nSlwfS0WbOilvTJ9awp9vbsY5sOPJisPgZ+aBmOIjZ0NxvPUFiCj6sM7drwgc5C00f+WuJjAOAXut/QYyjIvQSPY53FuENwgpixaVDyEtR8n9hYkwUi3cEE8aeebJS6kC/zfkFFMFTQhJcXBJGeZZeuBI9tP+vniu6t99EvUXmLKLpip3S+uo50BKdfYNZ4Cpios9gwoFdiPuZ+cFSYC2Y0Ey6QUBGkiTf3+vwaN80z9/vL+LDcW8zTyQioT3purbujsI1bGFfSi+17GUHh94uTxOiGT25ekrTJyTms4Uihdbq89FtIGT1fyAVDwrUSf36LdBcLWdOIaawg5kuOd+hECXEs9tUp/h7LZwKW4n6b/sRFxgZm+n8vbNOYX7S7ghADzwN2vj5ASCu+aYP6S4lp7rGZyuy+6EOnjNl4WAsGhFUO8gxFy/sgjcjv6Y/HDWqroyD1v9xSqshlD4U9CU9ojHTRtWEOYTzVD726KRD/kLgrVHjjQ56Y+FCPSKZUb1sTGWCpCirl73DnYekrhDGrjaT/cOxwGyzHrgaW6mguV4v1MncrhwhAkkJdoJCJ7gtQ8JFuYdE0fCxKfOQ8LrnBZeUcoNUw5Ggi6ajSvQ b9FyjxMY B6zsd6WOw7t7y0NA0o/EZ30VoegKYYCdtuNkMOSpMIsCJjz9CXtmYrw2kVIAXZIwjZJ651Zs8O/M3uMPIRBm7OxoijzM+9Z97UWp8mJ3dRWFxprFfPO7ofNtoaDCstgkZr73APHUAoRkBV9L4uZs3Mgr6Wr1TELLtVAo1gVEYbnn7Ce6wJTh1G5RdY7rmlShpsH+3DYCALYTM6AQe/eOAeIefBB7XL0CEsusYA2miiWX8eEG2AT6Pl0ql6Y/4mq6+YcdvGvVs8MRz0TKkU0It5GEuw5p6yKkOUiKkoSVYc9E48ZW73WtWhszmVcBj2oYF7V8mLLB4s1HRkOg5XXh69Jo5hbq8tX8IgTSgeSmwXYMZbfEHZV1v5tdHtHktBgJkeSlIBz+rOaS0DIYkXbRrRx/wfdBOf3UquIAMPXb8Tz2Z4uJRD5o3WN7ijAvZfMV7M8x1J/ot57DZbH7IkZjOZKOccOjfMTc9ZE3qd0QRZCnP8DW5fawnGlR8ZVTB+JRp5RsMxM5twwhVEiGJQoYwfB4CbW4NXrUeGbQh/9VmxYthVT0= 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: > + if (!bv) > + return -ENOMEM; > + > + pages = (void *)(bv + npages); I think this cast should be to struct page **… not void *. > + npages = alloc_pages_bulk_array(GFP_USER, npages, pages); > + if (!npages) { > + kfree(bv); > + return -ENOMEM; > + } > + reclaim = npages * PAGE_SIZE; > + remain = 0; > + if (ret > 0) { > + reclaim -= ret; > + remain = ret; ... > + /* Free any pages that didn't get touched at all. */ > + reclaim /= PAGE_SIZE; Any reason not to keep reclaim in PAGE_SIZE units to start with?