From patchwork Thu Nov 25 21:08:11 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Matthew Wilcox X-Patchwork-Id: 12639815 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 0340AC433F5 for ; Thu, 25 Nov 2021 21:08:36 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 5DBF86B0074; Thu, 25 Nov 2021 16:08:26 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 58A276B0075; Thu, 25 Nov 2021 16:08:26 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 49FC36B0078; Thu, 25 Nov 2021 16:08:26 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0039.hostedemail.com [216.40.44.39]) by kanga.kvack.org (Postfix) with ESMTP id 3C5E86B0074 for ; Thu, 25 Nov 2021 16:08:26 -0500 (EST) Received: from smtpin14.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay04.hostedemail.com (Postfix) with ESMTP id E6C7486E80 for ; Thu, 25 Nov 2021 21:08:15 +0000 (UTC) X-FDA: 78848690592.14.DBA6F0A Received: from casper.infradead.org (casper.infradead.org [90.155.50.34]) by imf30.hostedemail.com (Postfix) with ESMTP id 0FCB1E002103 for ; Thu, 25 Nov 2021 21:08:07 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=casper.20170209; 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=JbPu0sanHIoDdCdNVaSqLJ/ATyCk1958f2ugIhUQGQ0=; b=v1nkFrq//MZVSs4ZVxUaxeuNfp 6OCy9uc7M4DrudT7JEykQ2r2hNUkj+6QRL8z0Yj4wI6E+gu7LlJbyeDZq5m96R3coBFAZvLSLZOvv dw1mctTaJlQUMNwVWmmMGxV9iXGiEcIjk8lWVwF7RbIR8DTn9CtBKqClXCxrzlWyxJvrBNLYttafX lY+Mw8ldQ6LfUsN8zegw00ApSNMiPaJ3IJShrnwJA5X2Pysp5tCaIHFLHYQfWgI+Ee57J1mis+Axy Q1DwEotOgm3HRlBiDSPVavGhG870BESemCtkjOO3t2VfYxL/6pF/kr8dCPmC9w3y/SdKQL6t4Z34L Dsun5cXw==; Received: from willy by casper.infradead.org with local (Exim 4.94.2 #2 (Red Hat Linux)) id 1mqLyV-007og9-Cf; Thu, 25 Nov 2021 21:08:11 +0000 Date: Thu, 25 Nov 2021 21:08:11 +0000 From: Matthew Wilcox To: "Darrick J. Wong" Cc: xfs , linux-fsdevel , linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: iomap folio conversion for 5.17 Message-ID: References: <20211124183905.GE266024@magnolia> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20211124183905.GE266024@magnolia> X-Rspamd-Server: rspam06 X-Rspamd-Queue-Id: 0FCB1E002103 X-Stat-Signature: bsw53apapw1y41uq499pzt4qmyeb578z Authentication-Results: imf30.hostedemail.com; dkim=pass header.d=infradead.org header.s=casper.20170209 header.b="v1nkFrq/"; spf=none (imf30.hostedemail.com: domain of willy@infradead.org has no SPF policy when checking 90.155.50.34) smtp.mailfrom=willy@infradead.org; dmarc=none X-HE-Tag: 1637874487-42141 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 Wed, Nov 24, 2021 at 10:39:05AM -0800, Darrick J. Wong wrote: > Hi folks, > > The iomap-for-next branch of the xfs-linux repository at: > > git://git.kernel.org/pub/scm/fs/xfs/xfs-linux.git > > has just been updated. Hi Darrick, Would you like to pull the folio changes from my git tree? They are generally as posted previously, with minor tweaks to match upstream changes. They do not introduce any new xfstests problems in my testing. The following changes since commit b501b85957deb17f1fe0a861fee820255519d526: Merge tag 'asm-generic-5.16-2' of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-generic (2021-11-25 10:41:28 -0800) are available in the Git repository at: git://git.infradead.org/users/willy/linux.git tags/iomap-folio-5.17 for you to fetch changes up to 979fe192e8a935968fd739983217128b431f6268: xfs: Support large folios (2021-11-25 14:03:56 -0500) ---------------------------------------------------------------- Convert fs/iomap to use folios These patches prepare XFS to use large folios to cache files. There are some preliminary patches to add folio interfaces to the block layer & buffer layer, then all the iomap functions are converted to use folios instead of pages. ---------------------------------------------------------------- Matthew Wilcox (Oracle) (24): block: Add bio_add_folio() block: Add bio_for_each_folio_all() fs/buffer: Convert __block_write_begin_int() to take a folio iomap: Convert to_iomap_page to take a folio iomap: Convert iomap_page_create to take a folio iomap: Convert iomap_page_release to take a folio iomap: Convert iomap_releasepage to use a folio iomap: Add iomap_invalidate_folio iomap: Pass the iomap_page into iomap_set_range_uptodate iomap: Convert bio completions to use folios iomap: Use folio offsets instead of page offsets iomap: Convert iomap_read_inline_data to take a folio iomap: Convert readahead and readpage to use a folio iomap: Convert iomap_page_mkwrite to use a folio iomap: Convert __iomap_zero_iter to use a folio iomap: Convert iomap_write_begin() and iomap_write_end() to folios iomap: Convert iomap_write_end_inline to take a folio iomap,xfs: Convert ->discard_page to ->discard_folio iomap: Simplify iomap_writepage_map() iomap: Simplify iomap_do_writepage() iomap: Convert iomap_add_to_ioend() to take a folio iomap: Convert iomap_migrate_page() to use folios iomap: Support large folios in invalidatepage xfs: Support large folios Documentation/core-api/kernel-api.rst | 1 + block/bio.c | 22 ++ fs/buffer.c | 23 +- fs/internal.h | 2 +- fs/iomap/buffered-io.c | 506 +++++++++++++++++----------------- fs/xfs/xfs_aops.c | 24 +- fs/xfs/xfs_icache.c | 2 + include/linux/bio.h | 56 +++- include/linux/iomap.h | 3 +- 9 files changed, 363 insertions(+), 276 deletions(-)