]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
xfs: zero directory data block padding on write verification
authorYuto Ohnuki <ytohnuki@amazon.com>
Sat, 11 Apr 2026 14:24:14 +0000 (15:24 +0100)
committerCarlos Maiolino <cem@kernel.org>
Mon, 27 Apr 2026 08:36:36 +0000 (10:36 +0200)
commit8fbb1877dfa5e26bda1baf8cc6abd3f805098486
tree4e61de70fd9fecffbc5fd28be6acddf59b3b968c
parent00dd8d7ec5253c6273023a0fd6dc08683e0bdfef
xfs: zero directory data block padding on write verification

Old kernels did not zero the pad field in xfs_dir3_data_hdr when
initializing directory data blocks, so existing filesystems may have
non-zero padding on disk.

Zero the pad field in xfs_dir3_data_write_verify alongside the existing
LSN and checksum updates. The pad field is pure alignment padding with
no runtime meaning, so zeroing it during write verification is safe and
has no additional I/O cost. This lets filesystems gradually self-heal
stale non-zero padding as directories are modified, without requiring an
explicit repair pass.

Suggested-by: Dave Chinner <dgc@kernel.org>
Signed-off-by: Yuto Ohnuki <ytohnuki@amazon.com>
Reviewed-by: Darrick J. Wong <djwong@kernel.org>
Signed-off-by: Carlos Maiolino <cem@kernel.org>
fs/xfs/libxfs/xfs_dir2_data.c