public inbox for linux-fsdevel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH v3 0/4] iomap: zero range flush fixes
@ 2024-11-08 12:42 Brian Foster
  2024-11-08 12:42 ` [PATCH v3 1/4] iomap: reset per-iter state on non-error iter advances Brian Foster
                   ` (3 more replies)
  0 siblings, 4 replies; 20+ messages in thread
From: Brian Foster @ 2024-11-08 12:42 UTC (permalink / raw)
  To: linux-fsdevel

Hi all,

Here's v3 of the change to improve zero range performance in the case of
frequent size extensions leading to excessive flushing. The main
differences from v2 are the addition of patch 1 to replace the need for
an iter reinit helper, some minor cleanups, and the addition of patch 4
to detect unexpected uses of zero range now that it no longer updates
i_size.

Thoughts, reviews, flames appreciated.

Brian

v3:
- Added new patch 1 to always reset per-iter state in iomap_iter.
- Dropped iomap_iter_init() helper.
- Misc. cleanups.
- Appended patch 4 to warn on zeroing beyond EOF.
v2: https://lore.kernel.org/linux-fsdevel/20241031140449.439576-1-bfoster@redhat.com/
- Added patch 1 to lift zeroed mapping handling code into caller.
- Split unaligned start range handling at the top level.
- Retain existing conditional flush behavior (vs. unconditional flush)
  for the remaining range.
v1: https://lore.kernel.org/linux-fsdevel/20241023143029.11275-1-bfoster@redhat.com/

Brian Foster (4):
  iomap: reset per-iter state on non-error iter advances
  iomap: lift zeroed mapping handling into iomap_zero_range()
  iomap: elide flush from partial eof zero range
  iomap: warn on zero range of a post-eof folio

 fs/iomap/buffered-io.c | 89 ++++++++++++++++++++++--------------------
 fs/iomap/iter.c        | 11 +++---
 2 files changed, 51 insertions(+), 49 deletions(-)

-- 
2.47.0


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

end of thread, other threads:[~2024-11-15 19:30 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-11-08 12:42 [PATCH v3 0/4] iomap: zero range flush fixes Brian Foster
2024-11-08 12:42 ` [PATCH v3 1/4] iomap: reset per-iter state on non-error iter advances Brian Foster
2024-11-09  3:00   ` Darrick J. Wong
2024-11-11  5:53   ` Christoph Hellwig
2024-11-12 13:59     ` Brian Foster
2024-11-08 12:42 ` [PATCH v3 2/4] iomap: lift zeroed mapping handling into iomap_zero_range() Brian Foster
2024-11-09  3:01   ` Darrick J. Wong
2024-11-12 13:59     ` Brian Foster
2024-11-11  6:03   ` Christoph Hellwig
2024-11-12 14:00     ` Brian Foster
2024-11-15 14:53       ` Brian Foster
2024-11-15 17:02         ` Darrick J. Wong
2024-11-15 19:31           ` Brian Foster
2024-11-08 12:42 ` [PATCH v3 3/4] iomap: elide flush from partial eof zero range Brian Foster
2024-11-09  3:03   ` Darrick J. Wong
2024-11-11  6:06   ` Christoph Hellwig
2024-11-08 12:42 ` [PATCH v3 4/4] iomap: warn on zero range of a post-eof folio Brian Foster
2024-11-09  3:06   ` Darrick J. Wong
2024-11-12 14:01     ` Brian Foster
2024-11-11  6:06   ` Christoph Hellwig

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox