linux/fs/ext2
Jan Kara 917e583992
ext2: Fix data integrity writeout issues
Ext2 could fail to properly write out inode on fsync(2) due to races
with WB_SYNC_NONE writeback. Several racing fsyncs could also result in
some fsync returning earlier than all metadata buffers were properly
persisted. Finally DIRSYNC handling was not properly persisting all
inode related metadata.

Fix all these issues by using new .sync_inode_metadata method which
makes sure all inode related metadata is written to disk during any
WB_SYNC_ALL writeback.

Signed-off-by: Jan Kara <jack@suse.cz>
Link: https://patch.msgid.link/20260727104923.3828017-29-jack@suse.cz
Signed-off-by: Christian Brauner (Amutable) <brauner@kernel.org>
2026-07-27 16:25:32 +02:00
..
acl.c ext2: convert to ctime accessor functions 2023-07-13 10:28:07 +02:00
acl.h fs: port ->set_acl() to pass mnt_idmap 2023-01-19 09:24:27 +01:00
balloc.c ext2: guard reservation window dump with EXT2FS_DEBUG 2026-02-27 12:16:07 +01:00
dir.c ext2: Fix data integrity writeout issues 2026-07-27 16:25:32 +02:00
ext2.h ext2: Fix data integrity writeout issues 2026-07-27 16:25:32 +02:00
file.c ext2: Fix data integrity writeout issues 2026-07-27 16:25:32 +02:00
ialloc.c treewide: change inode->i_ino from unsigned long to u64 2026-03-06 14:31:28 +01:00
inode.c ext2: Fix data integrity writeout issues 2026-07-27 16:25:32 +02:00
ioctl.c tree-wide: s/struct fileattr/struct file_kattr/g 2025-07-04 16:14:39 +02:00
Kconfig ext2: Remove LEGACY_DIRECT_IO dependency 2024-05-03 11:50:28 +02:00
Makefile ext2: Add direct-io trace points 2023-05-16 11:32:42 +02:00
namei.c ext2: avoid drop_nlink() during unlink of zero-nlink inode in ext2_unlink() 2026-02-27 12:17:52 +01:00
super.c ext2: Fix data integrity writeout issues 2026-07-27 16:25:32 +02:00
symlink.c ext2: code cleanup by removing ifdef macro surrounding 2020-05-22 15:11:00 +02:00
trace.c ext2: Add direct-io trace points 2023-05-16 11:32:42 +02:00
trace.h ext2: widen trace event i_ino fields to u64 2026-03-06 14:31:27 +01:00
xattr_security.c fs: port xattr to mnt_idmap 2023-01-19 09:24:28 +01:00
xattr_trusted.c fs: port xattr to mnt_idmap 2023-01-19 09:24:28 +01:00
xattr_user.c fs: port xattr to mnt_idmap 2023-01-19 09:24:28 +01:00
xattr.c ext2: Fix lost inode updates for IS_SYNC inodes 2026-07-27 16:25:32 +02:00
xattr.h ext2: move ext2_xattr_handlers and ext2_xattr_handler_map to .rodata 2023-10-09 16:24:18 +02:00