Hi ALL, This patch series fixes zero padding data issues in concurrent append write scenarios. A detailed problem description and solution can be found in patch 2. Patch 1 is introduced as preparation for the fix in patch 2, eliminating the need to resample inode size for io_size trimming and avoiding issues caused by inode size changes during concurrent writeback and truncate operations. Patch 3 is a minor cleanup. v5: https://lore.kernel.org/linux-xfs/20241127063503.2200005-1-leo.lilong@xxxxxxxxxx/ v4: https://lore.kernel.org/linux-xfs/20241125023341.2816630-1-leo.lilong@xxxxxxxxxx/ v3: https://lore.kernel.org/linux-xfs/20241121063430.3304895-1-leo.lilong@xxxxxxxxxx/ v2: https://lore.kernel.org/linux-xfs/20241113091907.56937-1-leo.lilong@xxxxxxxxxx/ v1: https://lore.kernel.org/linux-xfs/20241108122738.2617669-1-leo.lilong@xxxxxxxxxx/ v5->v6: 1. Introduce patch 1. 2. The io_size is trimmed based on the end_pos in patch 2. 3. Update the fix tag to a more accurate in patch 2. 4. Collect reviewed tag. Long Li (3): iomap: pass byte granular end position to iomap_add_to_ioend iomap: fix zero padding data issue in concurrent append writes xfs: clean up xfs_end_ioend() to reuse local variables fs/iomap/buffered-io.c | 66 ++++++++++++++++++++++++++++++++++++------ fs/xfs/xfs_aops.c | 2 +- include/linux/iomap.h | 2 +- 3 files changed, 59 insertions(+), 11 deletions(-) -- 2.39.2