[PATCH 13/42] fs: Drop sync_mapping_buffers() from __generic_file_fsync()
Jan Kara <[email protected]> Thu, 26 Mar 2026 10:54:07 +0100
| Newsgroups | gmane.linux.kernel.aio.general,gmane.linux.file-systems,gmane.linux.block,gmane.comp.file-systems.ext4,gmane.linux.kernel.mm |
|---|---|
| Message-ID | <[email protected]> |
No filesystem calling __generic_file_fsync() uses metadata bh tracking. Drop sync_mapping_buffers() call from __generic_file_fsync() as it's pointless now which untangles buffer head handling from fs/libfs.c. Signed-off-by: Jan Kara <[email protected]> --- fs/libfs.c | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/fs/libfs.c b/fs/libfs.c index ed7242d614fe..e67e43c6509a 100644 --- a/fs/libfs.c +++ b/fs/libfs.c @@ -18,7 +18,6 @@ #include <linux/exportfs.h> #include <linux/iversion.h> #include <linux/writeback.h> -#include <linux/buffer_head.h> /* sync_mapping_buffers */ #include <linux/fs_context.h> #include <linux/pseudo_fs.h> #include <linux/fsnotify.h> @@ -1555,22 +1554,18 @@ int __generic_file_fsync(struct file *file, loff_t start, loff_t end, { struct inode *inode = file->f_mapping->host; int err; - int ret; + int ret = 0; err = file_write_and_wait_range(file, start, end); if (err) return err; - ret = sync_mapping_buffers(inode->i_mapping); if (!(inode_state_read_once(inode) & I_DIRTY_ALL)) goto out; if (datasync && !(inode_state_read_once(inode) & I_DIRTY_DATASYNC)) goto out; - err = sync_inode_metadata(inode, 1); - if (ret == 0) - ret = err; - + ret = sync_inode_metadata(inode, 1); out: /* check and advance again to catch errors after syncing out buffers */ err = file_check_and_advance_wb_err(file); -- 2.51.0 -- To unsubscribe, send a message with 'unsubscribe linux-aio' in the body to [email protected]. For more info on Linux AIO, see: http://www.kvack.org/aio/ Don't email: <a href=mailto:"[email protected]">[email protected]</a>