linux-fsdevel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* RFC: map multiple blocks per ->map_blocks in iomap writeback
@ 2023-11-26 12:47 Christoph Hellwig
  2023-11-26 12:47 ` [PATCH 01/13] iomap: clear the per-folio dirty bits on all writeback failures Christoph Hellwig
                   ` (12 more replies)
  0 siblings, 13 replies; 49+ messages in thread
From: Christoph Hellwig @ 2023-11-26 12:47 UTC (permalink / raw)
  To: Christian Brauner
  Cc: Darrick J. Wong, Chandan Babu R, Zhang Yi, Ritesh Harjani,
	linux-xfs, linux-fsdevel

Hi all,

this series overhaults a large chunk of the iomap writeback code with
the end result that ->map_blocks can now map multiple blocks at a time,
at least as long as they are all inside the same folio.

Variants of this have passed a lot of testing on XFS, but I haven't even
starting testing it with other file systems.  In terms of performance
there is a very slight reduction in large write workloads, but the main
point for me was to enable other work anyway.

Diffstat:
 fs/iomap/buffered-io.c |  561 +++++++++++++++++++++++--------------------------
 fs/xfs/xfs_aops.c      |    6 
 include/linux/iomap.h  |   17 +
 3 files changed, 287 insertions(+), 297 deletions(-)

^ permalink raw reply	[flat|nested] 49+ messages in thread

end of thread, other threads:[~2023-11-29  5:44 UTC | newest]

Thread overview: 49+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-11-26 12:47 RFC: map multiple blocks per ->map_blocks in iomap writeback Christoph Hellwig
2023-11-26 12:47 ` [PATCH 01/13] iomap: clear the per-folio dirty bits on all writeback failures Christoph Hellwig
2023-11-27  3:47   ` Ritesh Harjani
2023-11-27  6:29     ` Christoph Hellwig
2023-11-26 12:47 ` [PATCH 02/13] iomap: treat inline data in iomap_writepage_map as an I/O error Christoph Hellwig
2023-11-27  5:01   ` Ritesh Harjani
2023-11-27  6:33     ` Christoph Hellwig
2023-11-29  4:40       ` Darrick J. Wong
2023-11-29  5:39         ` Christoph Hellwig
2023-11-26 12:47 ` [PATCH 03/13] iomap: move the io_folios field out of struct iomap_ioend Christoph Hellwig
2023-11-27  5:33   ` Ritesh Harjani
2023-11-29  4:41   ` Darrick J. Wong
2023-11-26 12:47 ` [PATCH 04/13] iomap: drop the obsolete PF_MEMALLOC check in iomap_do_writepage Christoph Hellwig
2023-11-27  6:39   ` Ritesh Harjani
2023-11-27  6:41     ` Christoph Hellwig
2023-11-29  4:45       ` Darrick J. Wong
2023-11-26 12:47 ` [PATCH 05/13] iomap: factor out a iomap_writepage_handle_eof helper Christoph Hellwig
2023-11-27  6:57   ` Ritesh Harjani
2023-11-27  7:02     ` Ritesh Harjani
2023-11-27  7:12       ` Christoph Hellwig
2023-11-29  4:48         ` Darrick J. Wong
2023-11-26 12:47 ` [PATCH 06/13] iomap: move all remaining per-folio logic into xfs_writepage_map Christoph Hellwig
2023-11-27  7:36   ` Ritesh Harjani
2023-11-27 19:20   ` Josef Bacik
2023-11-29  4:50   ` Darrick J. Wong
2023-11-26 12:47 ` [PATCH 07/13] iomap: clean up the iomap_new_ioend calling convention Christoph Hellwig
2023-11-27  7:43   ` Ritesh Harjani
2023-11-27  8:13     ` Christoph Hellwig
2023-11-29  4:51       ` Darrick J. Wong
2023-11-26 12:47 ` [PATCH 08/13] iomap: move the iomap_sector sector calculation out of iomap_add_to_ioend Christoph Hellwig
2023-11-27  9:54   ` Ritesh Harjani
2023-11-27 13:54     ` Christoph Hellwig
2023-11-29  4:53       ` Darrick J. Wong
2023-11-29  5:42         ` Christoph Hellwig
2023-11-26 12:47 ` [PATCH 09/13] iomap: don't chain bios Christoph Hellwig
2023-11-27 12:53   ` Zhang Yi
2023-11-27 13:51     ` Christoph Hellwig
2023-11-29  4:59   ` Darrick J. Wong
2023-11-29  5:40     ` Christoph Hellwig
2023-11-26 12:47 ` [PATCH 10/13] iomap: only call mapping_set_error once for each failed bio Christoph Hellwig
2023-11-29  5:03   ` Darrick J. Wong
2023-11-29  5:41     ` Christoph Hellwig
2023-11-26 12:47 ` [PATCH 11/13] iomap: factor out a iomap_writepage_map_block helper Christoph Hellwig
2023-11-29  5:06   ` Darrick J. Wong
2023-11-26 12:47 ` [PATCH 12/13] iomap: submit ioends immediately Christoph Hellwig
2023-11-29  5:14   ` Darrick J. Wong
2023-11-26 12:47 ` [PATCH 13/13] iomap: map multiple blocks at a time Christoph Hellwig
2023-11-29  5:25   ` Darrick J. Wong
2023-11-29  5:44     ` Christoph Hellwig

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).