Hi all, Here are some bugfixes for 6.10. The first two patches are from hch, and fix some longstanding delalloc leaks that only came to light now that we've enabled it for realtime. The second two fixes are from me -- one fixes a bug when we run out of space for cow preallocations when alwayscow is turned on (xfs/205), and the other corrects overzealous inode validation that causes log recovery failure with generic/388. The last patch is a debugging patch to ensure that transactions never commit corrupt inodes, buffers, or dquots. If you're going to start using this code, I strongly recommend pulling from my git trees, which are linked below. This has been lightly tested with fstests. Enjoy! Comments and questions are, as always, welcome. --D kernel git tree: https://git.kernel.org/cgit/linux/kernel/git/djwong/xfs-linux.git/log/?h=random-fixes-6.10 --- Commits in this patchset: * xfs: don't treat append-only files as having preallocations * xfs: fix freeing speculative preallocations for preallocated files * xfs: restrict when we try to align cow fork delalloc to cowextsz hints * xfs: allow unlinked symlinks and dirs with zero size * xfs: verify buffer, inode, and dquot items every tx commit --- fs/xfs/libxfs/xfs_bmap.c | 14 +++++++++++--- fs/xfs/libxfs/xfs_bmap.h | 2 +- fs/xfs/libxfs/xfs_inode_buf.c | 23 ++++++++++++++++++----- fs/xfs/xfs_bmap_util.c | 37 +++++++++++++++++++++++-------------- fs/xfs/xfs_bmap_util.h | 2 +- fs/xfs/xfs_buf_item.c | 32 ++++++++++++++++++++++++++++++++ fs/xfs/xfs_dquot_item.c | 31 +++++++++++++++++++++++++++++++ fs/xfs/xfs_icache.c | 4 ++-- fs/xfs/xfs_inode.c | 14 ++++---------- fs/xfs/xfs_inode_item.c | 32 ++++++++++++++++++++++++++++++++ fs/xfs/xfs_iomap.c | 14 ++++++++++++-- 11 files changed, 167 insertions(+), 38 deletions(-)