xfs: check for cow blocks before trying to clear them
authorDarrick J. Wong <darrick.wong@oracle.com>
Wed, 7 Mar 2018 01:08:31 +0000 (17:08 -0800)
committerDarrick J. Wong <darrick.wong@oracle.com>
Mon, 12 Mar 2018 03:27:56 +0000 (20:27 -0700)
commit6231848c3aa5c7378fb0dd7a7fff53e9db7edd09
tree748319f4f4cc850389eb207aa9021c53e2498bdb
parent3f883f5bb197b6fe4e6f461362782aa7b0e89cb6
xfs: check for cow blocks before trying to clear them

There's no point in allocating a transaction and locking the inode in
preparation to clear cow blocks if there actually are any cow fork
extents.  Therefore, move the xfs_reflink_cancel_cow_range hunk to
xfs_inactive and check the cow ifp first.  This makes inode reclamation
run faster.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Brian Foster <bfoster@redhat.com>
fs/xfs/xfs_inode.c
fs/xfs/xfs_super.c