]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
xfs: only assert new size for datafork during truncate extents
authorLong Li <leo.lilong@huawei.com>
Tue, 17 Mar 2026 01:51:52 +0000 (09:51 +0800)
committerCarlos Maiolino <cem@kernel.org>
Mon, 23 Mar 2026 09:47:27 +0000 (10:47 +0100)
The assertion functions properly because we currently only truncate the
attr to a zero size. Any other new size of the attr is not preempted.
Make this assertion is specific to the datafork, preparing for
subsequent patches to truncate the attribute to a non-zero size.

Reviewed-by: Darrick J. Wong <djwong@kernel.org>
Signed-off-by: Long Li <leo.lilong@huawei.com>
Signed-off-by: Carlos Maiolino <cem@kernel.org>
fs/xfs/xfs_inode.c

index 50c0404f90642a122f1ee394fb49969f813ffae7..beaa26ec62da4055a53b85c0b6a5e002b91989bd 100644 (file)
@@ -1048,7 +1048,8 @@ xfs_itruncate_extents_flags(
        xfs_assert_ilocked(ip, XFS_ILOCK_EXCL);
        if (icount_read(VFS_I(ip)))
                xfs_assert_ilocked(ip, XFS_IOLOCK_EXCL);
-       ASSERT(new_size <= XFS_ISIZE(ip));
+       if (whichfork == XFS_DATA_FORK)
+               ASSERT(new_size <= XFS_ISIZE(ip));
        ASSERT(tp->t_flags & XFS_TRANS_PERM_LOG_RES);
        ASSERT(ip->i_itemp != NULL);
        ASSERT(ip->i_itemp->ili_lock_flags == 0);