xfs: don't free rt blocks when we're doing a REMAP bunmapi call
authorDarrick J. Wong <darrick.wong@oracle.com>
Mon, 21 Sep 2020 16:15:08 +0000 (09:15 -0700)
committerDarrick J. Wong <darrick.wong@oracle.com>
Wed, 23 Sep 2020 15:58:51 +0000 (08:58 -0700)
commit8df0fa39bdd86ca81a8d706a6ed9d33cc65ca625
treef899ac51aa78b12d32e96fa4b677f32c846e505b
parentc54e14d155f5fdbac73a8cd4bd2678cb252149dc
xfs: don't free rt blocks when we're doing a REMAP bunmapi call

When callers pass XFS_BMAPI_REMAP into xfs_bunmapi, they want the extent
to be unmapped from the given file fork without the extent being freed.
We do this for non-rt files, but we forgot to do this for realtime
files.  So far this isn't a big deal since nobody makes a bunmapi call
to a rt file with the REMAP flag set, but don't leave a logic bomb.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Dave Chinner <dchinner@redhat.com>
fs/xfs/libxfs/xfs_bmap.c