summaryrefslogtreecommitdiffstats
path: root/fs
diff options
context:
space:
mode:
authorDarrick J. Wong <darrick.wong@oracle.com>2016-08-03 12:31:07 +1000
committerDave Chinner <david@fromorbit.com>2016-08-03 12:31:07 +1000
commit3481b68285238054be519ad0c8cad5cc2425e26c (patch)
treea64c439f4371d0ceb07b60d3d285f6c5b4d80a1c /fs
parent51ce9d000c0a80bddf9a93a4232283cc9a4564c0 (diff)
downloadlinux-0-day-3481b68285238054be519ad0c8cad5cc2425e26c.tar.gz
linux-0-day-3481b68285238054be519ad0c8cad5cc2425e26c.tar.xz
xfs: move (and rename) the deferred bmap-free tracepoints
Rename the deferred bmap-free to extent_free and make them only trigger when we're really running deferred ops. Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com> Reviewed-by: Dave Chinner <dchinner@redhat.com> Signed-off-by: Dave Chinner <david@fromorbit.com>
Diffstat (limited to 'fs')
-rw-r--r--fs/xfs/libxfs/xfs_alloc.c2
-rw-r--r--fs/xfs/xfs_trans_extfree.c7
2 files changed, 7 insertions, 2 deletions
diff --git a/fs/xfs/libxfs/xfs_alloc.c b/fs/xfs/libxfs/xfs_alloc.c
index a0dc2999778d3..776ae2f325d1e 100644
--- a/fs/xfs/libxfs/xfs_alloc.c
+++ b/fs/xfs/libxfs/xfs_alloc.c
@@ -2819,8 +2819,6 @@ xfs_free_extent(
ASSERT(len != 0);
- trace_xfs_bmap_free_deferred(mp, agno, 0, agbno, len);
-
if (XFS_TEST_ERROR(false, mp,
XFS_ERRTAG_FREE_EXTENT,
XFS_RANDOM_FREE_EXTENT))
diff --git a/fs/xfs/xfs_trans_extfree.c b/fs/xfs/xfs_trans_extfree.c
index 7d1e84c1b848d..459ddec137a48 100644
--- a/fs/xfs/xfs_trans_extfree.c
+++ b/fs/xfs/xfs_trans_extfree.c
@@ -21,6 +21,7 @@
#include "xfs_format.h"
#include "xfs_log_format.h"
#include "xfs_trans_resv.h"
+#include "xfs_bit.h"
#include "xfs_mount.h"
#include "xfs_defer.h"
#include "xfs_trans.h"
@@ -28,6 +29,7 @@
#include "xfs_extfree_item.h"
#include "xfs_alloc.h"
#include "xfs_bmap.h"
+#include "xfs_trace.h"
/*
* This routine is called to allocate an "extent free done"
@@ -68,10 +70,15 @@ xfs_trans_free_extent(
xfs_extlen_t ext_len,
struct xfs_owner_info *oinfo)
{
+ struct xfs_mount *mp = tp->t_mountp;
uint next_extent;
+ xfs_agnumber_t agno = XFS_FSB_TO_AGNO(mp, start_block);
+ xfs_agblock_t agbno = XFS_FSB_TO_AGBNO(mp, start_block);
struct xfs_extent *extp;
int error;
+ trace_xfs_bmap_free_deferred(tp->t_mountp, agno, 0, agbno, ext_len);
+
error = xfs_free_extent(tp, start_block, ext_len, oinfo);
/*