The patch titled Subject: mm: call filemap_fdatawrite_range_kick() after IOCB_DONTCACHE issue has been added to the -mm mm-unstable branch. Its filename is mm-call-filemap_fdatawrite_range_kick-after-iocb_dontcache-issue.patch This patch will shortly appear at https://git.kernel.org/pub/scm/linux/kernel/git/akpm/25-new.git/tree/patches/mm-call-filemap_fdatawrite_range_kick-after-iocb_dontcache-issue.patch This patch will later appear in the mm-unstable branch at git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm Before you just go and hit "reply", please: a) Consider who else should be cc'ed b) Prefer to cc a suitable mailing list as well c) Ideally: find the original patch on the mailing list and do a reply-to-all to that, adding suitable additional cc's *** Remember to use Documentation/process/submit-checklist.rst when testing your code *** The -mm tree is included into linux-next via the mm-everything branch at git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm and is updated there every 2-3 working days ------------------------------------------------------ From: Jens Axboe <axboe@xxxxxxxxx> Subject: mm: call filemap_fdatawrite_range_kick() after IOCB_DONTCACHE issue Date: Fri, 20 Dec 2024 08:47:49 -0700 When a buffered write submitted with IOCB_DONTCACHE has been successfully submitted, call filemap_fdatawrite_range_kick() to kick off the IO. File systems call generic_write_sync() for any successful buffered write submission, hence add the logic here rather than needing to modify the file system. Link: https://lkml.kernel.org/r/20241220154831.1086649-12-axboe@xxxxxxxxx Signed-off-by: Jens Axboe <axboe@xxxxxxxxx> Cc: Brian Foster <bfoster@xxxxxxxxxx> Cc: Chris Mason <clm@xxxxxxxx> Cc: Christoph Hellwig <hch@xxxxxx> Cc: Johannes Weiner <hannes@xxxxxxxxxxx> Cc: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx> Cc: Matthew Wilcox (Oracle) <willy@xxxxxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- include/linux/fs.h | 5 +++++ 1 file changed, 5 insertions(+) --- a/include/linux/fs.h~mm-call-filemap_fdatawrite_range_kick-after-iocb_dontcache-issue +++ a/include/linux/fs.h @@ -2912,6 +2912,11 @@ static inline ssize_t generic_write_sync (iocb->ki_flags & IOCB_SYNC) ? 0 : 1); if (ret) return ret; + } else if (iocb->ki_flags & IOCB_DONTCACHE) { + struct address_space *mapping = iocb->ki_filp->f_mapping; + + filemap_fdatawrite_range_kick(mapping, iocb->ki_pos, + iocb->ki_pos + count); } return count; _ Patches currently in -mm which might be from axboe@xxxxxxxxx are mm-filemap-change-filemap_create_folio-to-take-a-struct-kiocb.patch mm-filemap-use-page_cache_sync_ra-to-kick-off-read-ahead.patch mm-readahead-add-folio-allocation-helper.patch mm-add-pg_dropbehind-folio-flag.patch mm-readahead-add-readahead_control-dropbehind-member.patch mm-truncate-add-folio_unmap_invalidate-helper.patch fs-add-rwf_dontcache-iocb-and-fop_dontcache-file_operations-flag.patch mm-filemap-add-read-support-for-rwf_dontcache.patch mm-filemap-drop-streaming-uncached-pages-when-writeback-completes.patch mm-filemap-add-filemap_fdatawrite_range_kick-helper.patch mm-call-filemap_fdatawrite_range_kick-after-iocb_dontcache-issue.patch mm-add-fgp_dontcache-folio-creation-flag.patch