On Mon, Sep 17, 2018 at 10:53:46PM +0200, Christoph Hellwig wrote: > This function is only used to punch out delayed allocations on I/O > failure, which means we need to have read the extents earlier. > > Signed-off-by: Christoph Hellwig <hch@xxxxxx> Looks ok, Reviewed-by: Darrick J. Wong <darrick.wong@xxxxxxxxxx> --D > --- > fs/xfs/xfs_bmap_util.c | 8 ++------ > 1 file changed, 2 insertions(+), 6 deletions(-) > > diff --git a/fs/xfs/xfs_bmap_util.c b/fs/xfs/xfs_bmap_util.c > index addbd74ecd8e..418e1e725f3a 100644 > --- a/fs/xfs/xfs_bmap_util.c > +++ b/fs/xfs/xfs_bmap_util.c > @@ -702,13 +702,9 @@ xfs_bmap_punch_delalloc_range( > struct xfs_iext_cursor icur; > int error = 0; > > - xfs_ilock(ip, XFS_ILOCK_EXCL); > - if (!(ifp->if_flags & XFS_IFEXTENTS)) { > - error = xfs_iread_extents(NULL, ip, XFS_DATA_FORK); > - if (error) > - goto out_unlock; > - } > + ASSERT(ifp->if_flags & XFS_IFEXTENTS); > > + xfs_ilock(ip, XFS_ILOCK_EXCL); > if (!xfs_iext_lookup_extent_before(ip, ifp, &end_fsb, &icur, &got)) > goto out_unlock; > > -- > 2.18.0 >