From: Jan Kara Date: Thu, 26 Mar 2026 09:54:08 +0000 (+0100) Subject: fs: Rename generic_file_fsync() to simple_fsync() X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=5f36c9ca33336036a087b270e68e8236c733f448;p=thirdparty%2Fkernel%2Flinux.git fs: Rename generic_file_fsync() to simple_fsync() The implementation is now really basic so rename generic_file_fsync() simple_fsync() and __generic_file_fsync() to simple_fsync_noflush(). Signed-off-by: Jan Kara Link: https://patch.msgid.link/20260326095354.16340-56-jack@suse.cz Signed-off-by: Christian Brauner --- diff --git a/fs/adfs/dir.c b/fs/adfs/dir.c index 493500f37cb9f..b8e23e8124ed3 100644 --- a/fs/adfs/dir.c +++ b/fs/adfs/dir.c @@ -389,7 +389,7 @@ const struct file_operations adfs_dir_operations = { .read = generic_read_dir, .llseek = generic_file_llseek, .iterate_shared = adfs_iterate, - .fsync = generic_file_fsync, + .fsync = simple_fsync, }; static int diff --git a/fs/adfs/file.c b/fs/adfs/file.c index cd13165fd904a..4a1828b3f88fe 100644 --- a/fs/adfs/file.c +++ b/fs/adfs/file.c @@ -26,7 +26,7 @@ const struct file_operations adfs_file_operations = { .llseek = generic_file_llseek, .read_iter = generic_file_read_iter, .mmap_prepare = generic_file_mmap_prepare, - .fsync = generic_file_fsync, + .fsync = simple_fsync, .write_iter = generic_file_write_iter, .splice_read = filemap_splice_read, }; diff --git a/fs/exfat/file.c b/fs/exfat/file.c index 90cd540afeaa7..4e8d34a75b663 100644 --- a/fs/exfat/file.c +++ b/fs/exfat/file.c @@ -577,7 +577,7 @@ int exfat_file_fsync(struct file *filp, loff_t start, loff_t end, int datasync) if (unlikely(exfat_forced_shutdown(inode->i_sb))) return -EIO; - err = __generic_file_fsync(filp, start, end, datasync); + err = simple_fsync_noflush(filp, start, end, datasync); if (err) return err; diff --git a/fs/libfs.c b/fs/libfs.c index e67e43c6509aa..327d8108ed9fb 100644 --- a/fs/libfs.c +++ b/fs/libfs.c @@ -1538,19 +1538,18 @@ struct dentry *generic_fh_to_parent(struct super_block *sb, struct fid *fid, EXPORT_SYMBOL_GPL(generic_fh_to_parent); /** - * __generic_file_fsync - generic fsync implementation for simple filesystems + * simple_fsync_noflush - generic fsync implementation for simple filesystems * * @file: file to synchronize * @start: start offset in bytes * @end: end offset in bytes (inclusive) * @datasync: only synchronize essential metadata if true * - * This is a generic implementation of the fsync method for simple - * filesystems which track all non-inode metadata in the buffers list - * hanging off the address_space structure. + * This function is an fsync handler for simple filesystems. It writes out + * dirty data, inode (if dirty), but does not issue a cache flush. */ -int __generic_file_fsync(struct file *file, loff_t start, loff_t end, - int datasync) +int simple_fsync_noflush(struct file *file, loff_t start, loff_t end, + int datasync) { struct inode *inode = file->f_mapping->host; int err; @@ -1573,30 +1572,29 @@ out: ret = err; return ret; } -EXPORT_SYMBOL(__generic_file_fsync); +EXPORT_SYMBOL(simple_fsync_noflush); /** - * generic_file_fsync - generic fsync implementation for simple filesystems - * with flush + * simple_fsync - fsync implementation for simple filesystems with flush * @file: file to synchronize * @start: start offset in bytes * @end: end offset in bytes (inclusive) * @datasync: only synchronize essential metadata if true * + * This function is an fsync handler for simple filesystems. It writes out + * dirty data, inode (if dirty), and issues a cache flush. */ - -int generic_file_fsync(struct file *file, loff_t start, loff_t end, - int datasync) +int simple_fsync(struct file *file, loff_t start, loff_t end, int datasync) { struct inode *inode = file->f_mapping->host; int err; - err = __generic_file_fsync(file, start, end, datasync); + err = simple_fsync_noflush(file, start, end, datasync); if (err) return err; return blkdev_issue_flush(inode->i_sb->s_bdev); } -EXPORT_SYMBOL(generic_file_fsync); +EXPORT_SYMBOL(simple_fsync); /** * generic_check_addressable - Check addressability of file system diff --git a/fs/omfs/file.c b/fs/omfs/file.c index 49a1de5a827f4..28f3b113340e8 100644 --- a/fs/omfs/file.c +++ b/fs/omfs/file.c @@ -334,7 +334,7 @@ const struct file_operations omfs_file_operations = { .read_iter = generic_file_read_iter, .write_iter = generic_file_write_iter, .mmap_prepare = generic_file_mmap_prepare, - .fsync = generic_file_fsync, + .fsync = simple_fsync, .splice_read = filemap_splice_read, }; diff --git a/fs/qnx4/dir.c b/fs/qnx4/dir.c index 6402715ab377e..a9038d231be46 100644 --- a/fs/qnx4/dir.c +++ b/fs/qnx4/dir.c @@ -71,7 +71,7 @@ const struct file_operations qnx4_dir_operations = .llseek = generic_file_llseek, .read = generic_read_dir, .iterate_shared = qnx4_readdir, - .fsync = generic_file_fsync, + .fsync = simple_fsync, .setlease = generic_setlease, }; diff --git a/fs/qnx6/dir.c b/fs/qnx6/dir.c index ae0c9846833d9..135fb42f69365 100644 --- a/fs/qnx6/dir.c +++ b/fs/qnx6/dir.c @@ -275,7 +275,7 @@ const struct file_operations qnx6_dir_operations = { .llseek = generic_file_llseek, .read = generic_read_dir, .iterate_shared = qnx6_readdir, - .fsync = generic_file_fsync, + .fsync = simple_fsync, .setlease = generic_setlease, }; diff --git a/fs/ufs/dir.c b/fs/ufs/dir.c index 43f1578ab8666..f611f965cb96b 100644 --- a/fs/ufs/dir.c +++ b/fs/ufs/dir.c @@ -652,7 +652,7 @@ const struct file_operations ufs_dir_operations = { .release = ufs_dir_release, .read = generic_read_dir, .iterate_shared = ufs_readdir, - .fsync = generic_file_fsync, + .fsync = simple_fsync, .llseek = ufs_dir_llseek, .setlease = generic_setlease, }; diff --git a/fs/ufs/file.c b/fs/ufs/file.c index 809c7a4603f86..85c509ced7f9d 100644 --- a/fs/ufs/file.c +++ b/fs/ufs/file.c @@ -41,7 +41,7 @@ const struct file_operations ufs_file_operations = { .write_iter = generic_file_write_iter, .mmap_prepare = generic_file_mmap_prepare, .open = generic_file_open, - .fsync = generic_file_fsync, + .fsync = simple_fsync, .splice_read = filemap_splice_read, .splice_write = iter_file_splice_write, .setlease = generic_setlease, diff --git a/include/linux/fs.h b/include/linux/fs.h index 8b3dd145b25ec..0fc0cb23000e1 100644 --- a/include/linux/fs.h +++ b/include/linux/fs.h @@ -3295,8 +3295,8 @@ void simple_offset_destroy(struct offset_ctx *octx); extern const struct file_operations simple_offset_dir_operations; -extern int __generic_file_fsync(struct file *, loff_t, loff_t, int); -extern int generic_file_fsync(struct file *, loff_t, loff_t, int); +extern int simple_fsync_noflush(struct file *, loff_t, loff_t, int); +extern int simple_fsync(struct file *, loff_t, loff_t, int); extern int generic_check_addressable(unsigned, u64);