ext4: add RWF_UNCACHED write support
authorJens Axboe <axboe@kernel.dk>
Sat, 9 Nov 2024 16:51:58 +0000 (09:51 -0700)
committerJens Axboe <axboe@kernel.dk>
Sun, 1 Dec 2024 22:55:24 +0000 (15:55 -0700)
commit8f661d5dd345776f70b0acc14f10504f18e8b45f
tree2b6aeea832d2a0726ae5aa8f72a52f1893b47b6d
parent98664c563a1e7730e6abf3125073c691dae7c78d
ext4: add RWF_UNCACHED write support

IOCB_UNCACHED IO needs to prune writeback regions on IO completion,
and hence need the worker punt that ext4 also does for unwritten
extents. Add an io_end flag to manage that.

If foliop is set to foliop_uncached in ext4_write_begin(), then set
FGP_UNCACHED so that __filemap_get_folio() will mark newly created
folios as uncached. That in turn will make writeback completion drop
these ranges from the page cache.

Now that ext4 supports both uncached reads and writes, add the fop_flag
FOP_UNCACHED to enable it.

Signed-off-by: Jens Axboe <axboe@kernel.dk>
fs/ext4/ext4.h
fs/ext4/file.c
fs/ext4/inline.c
fs/ext4/inode.c
fs/ext4/page-io.c