xfs: remove a __xfs_bunmapi call from reflink
authorDarrick J. Wong <djwong@kernel.org>
Tue, 26 Apr 2022 01:38:12 +0000 (18:38 -0700)
committerDarrick J. Wong <djwong@kernel.org>
Thu, 28 Apr 2022 17:25:08 +0000 (10:25 -0700)
This raw call isn't necessary since we can always remove a full delalloc
extent.

Signed-off-by: Darrick J. Wong <djwong@kernel.org>
Reviewed-by: Dave Chinner <dchinner@redhat.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
fs/xfs/xfs_reflink.c

index 1ae6d3434ad26094777d93b4b845d4a3e6c27da2..960917628a4465c914600dabdd6c52f18b2b3b85 100644 (file)
@@ -1138,7 +1138,7 @@ xfs_reflink_remap_extent(
                xfs_refcount_decrease_extent(tp, &smap);
                qdelta -= smap.br_blockcount;
        } else if (smap.br_startblock == DELAYSTARTBLOCK) {
-               xfs_filblks_t   len = smap.br_blockcount;
+               int             done;
 
                /*
                 * If the extent we're unmapping is a delalloc reservation,
@@ -1146,10 +1146,11 @@ xfs_reflink_remap_extent(
                 * incore state.  Dropping the delalloc reservation takes care
                 * of the quota reservation for us.
                 */
-               error = __xfs_bunmapi(NULL, ip, smap.br_startoff, &len, 0, 1);
+               error = xfs_bunmapi(NULL, ip, smap.br_startoff,
+                               smap.br_blockcount, 0, 1, &done);
                if (error)
                        goto out_cancel;
-               ASSERT(len == 0);
+               ASSERT(done);
        }
 
        /*