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 886BAEB64DC for ; Thu, 20 Jul 2023 14:07:39 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 19F20280111; Thu, 20 Jul 2023 10:07:39 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 1282228004C; Thu, 20 Jul 2023 10:07:39 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id EE487280111; Thu, 20 Jul 2023 10:07:38 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id D8FC028004C for ; Thu, 20 Jul 2023 10:07:38 -0400 (EDT) Received: from smtpin26.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id B6802B0B34 for ; Thu, 20 Jul 2023 14:07:36 +0000 (UTC) X-FDA: 81032168112.26.6983F03 Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) by imf02.hostedemail.com (Postfix) with ESMTP id 92D5480359 for ; Thu, 20 Jul 2023 14:05:00 +0000 (UTC) Authentication-Results: imf02.hostedemail.com; dkim=pass header.d=infradead.org header.s=bombadil.20210309 header.b=anw34U13; dmarc=none; spf=none (imf02.hostedemail.com: domain of BATV+ae7cc45e83adbe90d207+7270+infradead.org+hch@bombadil.srs.infradead.org has no SPF policy when checking 198.137.202.133) smtp.mailfrom=BATV+ae7cc45e83adbe90d207+7270+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=1689861901; 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-transfer-encoding:content-transfer-encoding: in-reply-to:references:dkim-signature; bh=r6VPyu9gsZuH8VJquNMO+URB3eVHSlazkIbeLhLt+jY=; b=LWFeq4unn5ZXGUJEvoCCIr/S7ubX1AH+qLEBctEb4I+Oll3f8gIpXDWnJ2HjpQYyqetThE cGD6NAo4NC9wAx4lDxmGwJcBqK52vLAIClk8EMQfk7zVaBGRthJagve5GWSU+enmHc0oXA ano8cOvFEW0G8LqbvRB9WYv8xPM98+k= ARC-Authentication-Results: i=1; imf02.hostedemail.com; dkim=pass header.d=infradead.org header.s=bombadil.20210309 header.b=anw34U13; dmarc=none; spf=none (imf02.hostedemail.com: domain of BATV+ae7cc45e83adbe90d207+7270+infradead.org+hch@bombadil.srs.infradead.org has no SPF policy when checking 198.137.202.133) smtp.mailfrom=BATV+ae7cc45e83adbe90d207+7270+infradead.org+hch@bombadil.srs.infradead.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1689861901; a=rsa-sha256; cv=none; b=GJqM3fMevVpbsIAcaC0XgIYSeSkzQW+KQbcQRFXLtV9L1zYV4SANxV61xfdyD4zLFCC03s p/Aq77xdMZDtDthz8mr1LRim2C4Y/R95Tm1sC3UuREomNSsp/1fOe4q32sKZuGvrruHoVv V2LHMhh6wsmw9T00N6ey8/p2RyZ4PBs= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20210309; h=Content-Transfer-Encoding: MIME-Version:Message-Id:Date:Subject:Cc:To:From:Sender:Reply-To:Content-Type: Content-ID:Content-Description:In-Reply-To:References; bh=r6VPyu9gsZuH8VJquNMO+URB3eVHSlazkIbeLhLt+jY=; b=anw34U13y7O9T4LymqzZz9xQtJ k+/enaW+JpCm3OEJhNKlx2w+Ni8L2Luy9FamN3UndB2S67Cf77Rychmh9l7eB1AhZuXb6CYz1+1g+ h6+KbKc6Un6+biqn42qgftFra2bfIrgEo+FeJpJJt4Pj+whPgbg1BFsPInxvH8FpJA4Ra6Z6F+2kR VRpCYKFUOoEiw9nvPIHPNZEpG7TgotBdka4TJ+dA+yADs/BZFpTpzRnk74gD+eNEeCC2zyw7afK4t jfsRh+bHFpb59/r6lPphmzSF9Ii5KcXXkW5EVyOIZRzR8DkMG3wKVukMq95nJSpg9qUF9CFbI+e9V itFDCzRQ==; Received: from [2001:4bb8:19a:298e:a587:c3ea:b692:5b8d] (helo=localhost) by bombadil.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux)) id 1qMUH0-00BKni-2b; Thu, 20 Jul 2023 14:04:55 +0000 From: Christoph Hellwig To: Jens Axboe Cc: "Darrick J. Wong" , Andrew Morton , Matthew Wilcox , Christian Brauner , linux-block@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-xfs@vger.kernel.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: allow building a kernel without buffer_heads Date: Thu, 20 Jul 2023 16:04:46 +0200 Message-Id: <20230720140452.63817-1-hch@lst.de> X-Mailer: git-send-email 2.39.2 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-SRS-Rewrite: SMTP reverse-path rewritten from by bombadil.infradead.org. See http://www.infradead.org/rpr.html X-Rspamd-Server: rspam09 X-Rspamd-Queue-Id: 92D5480359 X-Stat-Signature: j1ffefrwsbwb7x9xinochyamg4g9biwf X-Rspam-User: X-HE-Tag: 1689861900-104558 X-HE-Meta: U2FsdGVkX18PsHpmyJaY1X0RaTRI0+WLDt02wZ6TZC9jJgMbDYtRq3BI4T6JOTZAneazEfOfEtrEm4HRW7X6cDJmsv1gmO95oVuuygq6waVW9DmU91tfykj7VanMD9a0825yb3zqs9fiXbDxo2SPE75sxFErOuqgynY9Xe6DGr+ZygdwPEjNZtkAQ7jfigYRNIPf9gU+xILJCxDirTAdXKNABdhKHorHpeojHjcsbWHb1AUvOiDEAWYTZAe31kzTzCp0N4JzwiAM+MVf7r6QjfRzY7l5m7vAUOsN28sAa1VASu6DLTB7Z0697cEMQd/wDzR1GcelLoSNJsw2NkX9HwMK14siqazYQ8Eo9+85OaXO/KtMlve7stHfI7FE/Y6gLi7a0ICuO3BNuEKJU3ruUmbVkC/dcN51qmJwyh8Rlt76HNnd6x2jecrqAmPFK0VdEplwG5/tTuWQSIVAKHOOulAH1HlQdQjzOhIJC2UTmG5JvGAAtqfdQyF+ACtqCx/l88N+ACzaCwMvayYPV120CvNEundJLjCTwQRqpiKs+TMGOns6k3b6gnDnHokbWSLX5uo1utz3z2gtIg4PZW8B2IBwFBGnFca4tQd/OYoMWVrEg3SkqA45zVz276Mw7Da45ii600Rd8m/rKH8HS4BrR6I8kGP+NsFkiPhk2YLrO+gh3fKG8gMARIqzV2omuPwpvFIcslo7sEnhEon4OV5k6o4PaVmA48hlzM+G9htGxTM8JiPWrRrRXlrA1TEmgg7M5qH1s1lwwmyK7ypRQ86hoaowwZI/KE6/aN++ULhJ8kyiRV4p6z4AaNmf6NziIgMPHoDlv0i6wK26edMfj/nIywqfjv0Lr5p/S8yQPq0z+xkJe5iTVIzm8KAmdJDX07UfySXY/p29GOJRpEYt5GSJgSgb4dPwiZgJAn0jiyHvPZnHdeh2mWR7s8NupZPB30CZTS7CUumKwbQGPdshxsP yt7J3URD 4M6kzXEVSeY4mJgnvM0t9O8jdjUnZDpMWoNxGQ5v6zTin6c5G4+ay2NmXzd+FJeSLa+Gpg2EZDd1pgfrcDSWqMnQJv9sBvCQleDq1gyHw+1Ckd3Qt9SxrFdYhFASruvxx43kXFe+79NXjO6xCgRmsUTBoxDP8ZeQCEPb5bRA8cq0M1JRyhHTkKYa1zHu4tJ3CQTjnEah5YNjXj+mqmYlIXNiFelY1jyfJxqMsPaZEpkkfK6uGYRMRZpDf6HJV1pf+UpqbixuNUVtF2aqHJeknucUf1UjNj8n1SDor53TYE87Psl1cffzahflbym6zrR3J/LFVklUN/buQ8BxEO8ZBzNtSHv2ju/FWdzWSW4MXBqgPWMAUdODR/MQZ2ERAbhqKiSCLOZ1oXGDnKg/DSUkPN6vetK+S0mfcYG4Ap/tgBaJ3rpdpVQBkCLTNgNMEtEcg3fiFpfnTHDayoUQ= 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: Hi all, This series allows to build a kernel without buffer_heads, which I think is useful to show where the dependencies are, and maybe also for some very much limited environments, where people just needs xfs and/or btrfs and some of the read-only block based file systems. It first switches buffered writes (but not writeback) for block devices to use iomap unconditionally, but still using buffer_heads, and then adds a CONFIG_BUFFER_HEAD selected by all file systems that need it (which is most block based file systems), makes the buffer_head support in iomap optional, and adds an alternative implementation of the block device address_operations using iomap. This latter implementation will also be useful to support block size > PAGE_SIZE for block device nodes as buffer_heads won't work very well for that. Note that for now the md software raid drivers is also disabled as it has some (rather questionable) buffer_head usage in the unconditionally built bitmap code. I have a series pending to make the bitmap code conditional and deprecated it, but it hasn't been merged yet. Changes since v1: - drop the already merged prep patches - depend on FS_IOMAP not IOMAP - pick a better new name for block_page_mkwrite_return