diff options
author | Darrick J. Wong <djwong@kernel.org> | 2021-09-01 11:16:00 -0700 |
---|---|---|
committer | Darrick J. Wong <djwong@kernel.org> | 2021-09-17 18:55:13 -0700 |
commit | 8df1dcc373338a590bb2d06df0fe04c7787e92fd (patch) | |
tree | 4afd20e87818a4c9fb0901ad99cf6a4882d075c0 | |
parent | 2771bf46f39cc4400b705687609110606145500e (diff) |
xfs: support error injection when freeing rt extents
A handful of fstests expect to be able to test what happens when extent
free intents fail to actually free the extent. Now that we're
supporting EFIs for realtime extents, add to xfs_rtfree_extent the same
injection point that exists in the regular extent freeing code.
Signed-off-by: Darrick J. Wong <djwong@kernel.org>
-rw-r--r-- | fs/xfs/libxfs/xfs_rtbitmap.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/fs/xfs/libxfs/xfs_rtbitmap.c b/fs/xfs/libxfs/xfs_rtbitmap.c index 7b70ac58a1dc..e16788c54094 100644 --- a/fs/xfs/libxfs/xfs_rtbitmap.c +++ b/fs/xfs/libxfs/xfs_rtbitmap.c @@ -17,6 +17,7 @@ #include "xfs_rtalloc.h" #include "xfs_error.h" #include "xfs_health.h" +#include "xfs_errortag.h" /* * Realtime allocator bitmap functions shared with userspace. @@ -983,6 +984,9 @@ xfs_rtfree_extent( ASSERT(mp->m_rbmip->i_itemp != NULL); ASSERT(xfs_isilocked(mp->m_rbmip, XFS_ILOCK_EXCL)); + if (XFS_TEST_ERROR(false, mp, XFS_ERRTAG_FREE_EXTENT)) + return -EIO; + error = xfs_rtcheck_alloc_range(mp, tp, bno, len); if (error) return error; |