Skip to content

Commit 4e0e2c0

Browse files
author
Darrick J. Wong
committed
xfs: clean up extent free log intent item tracepoint callsites
Pass the incore EFI structure to the tracepoints instead of open-coding the argument passing. This cleans up the call sites a bit. Signed-off-by: Darrick J. Wong <[email protected]> Reviewed-by: Christoph Hellwig <[email protected]>
1 parent ac3a027 commit 4e0e2c0

File tree

3 files changed

+20
-26
lines changed

3 files changed

+20
-26
lines changed

fs/xfs/libxfs/xfs_alloc.c

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2544,7 +2544,7 @@ xfs_defer_agfl_block(
25442544
xefi->xefi_owner = oinfo->oi_owner;
25452545
xefi->xefi_agresv = XFS_AG_RESV_AGFL;
25462546

2547-
trace_xfs_agfl_free_defer(mp, agno, 0, agbno, 1);
2547+
trace_xfs_agfl_free_defer(mp, xefi);
25482548

25492549
xfs_extent_free_get_group(mp, xefi);
25502550
xfs_defer_add(tp, &xefi->xefi_list, &xfs_agfl_free_defer_type);
@@ -2606,9 +2606,8 @@ xfs_defer_extent_free(
26062606
} else {
26072607
xefi->xefi_owner = XFS_RMAP_OWN_NULL;
26082608
}
2609-
trace_xfs_bmap_free_defer(mp,
2610-
XFS_FSB_TO_AGNO(tp->t_mountp, bno), 0,
2611-
XFS_FSB_TO_AGBNO(tp->t_mountp, bno), len);
2609+
2610+
trace_xfs_extent_free_defer(mp, xefi);
26122611

26132612
xfs_extent_free_get_group(mp, xefi);
26142613
*dfpp = xfs_defer_add(tp, &xefi->xefi_list, &xfs_extent_free_defer_type);

fs/xfs/xfs_extfree_item.c

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -464,8 +464,7 @@ xfs_extent_free_finish_item(
464464
if (xefi->xefi_flags & XFS_EFI_BMBT_BLOCK)
465465
oinfo.oi_flags |= XFS_OWNER_INFO_BMBT_BLOCK;
466466

467-
trace_xfs_bmap_free_deferred(tp->t_mountp, xefi->xefi_pag->pag_agno, 0,
468-
agbno, xefi->xefi_blockcount);
467+
trace_xfs_extent_free_deferred(mp, xefi);
469468

470469
/*
471470
* If we need a new transaction to make progress, the caller will log a
@@ -542,8 +541,7 @@ xfs_agfl_free_finish_item(
542541
agbno = XFS_FSB_TO_AGBNO(mp, xefi->xefi_startblock);
543542
oinfo.oi_owner = xefi->xefi_owner;
544543

545-
trace_xfs_agfl_free_deferred(mp, xefi->xefi_pag->pag_agno, 0, agbno,
546-
xefi->xefi_blockcount);
544+
trace_xfs_agfl_free_deferred(mp, xefi);
547545

548546
error = xfs_alloc_read_agf(xefi->xefi_pag, tp, 0, &agbp);
549547
if (!error)

fs/xfs/xfs_trace.h

Lines changed: 15 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,7 @@ struct xfs_exchrange;
9090
struct xfs_getparents;
9191
struct xfs_parent_irec;
9292
struct xfs_attrlist_cursor_kern;
93+
struct xfs_extent_free_item;
9394

9495
#define XFS_ATTR_FILTER_FLAGS \
9596
{ XFS_ATTR_ROOT, "ROOT" }, \
@@ -2710,41 +2711,37 @@ DEFINE_DEFER_PENDING_EVENT(xfs_defer_item_pause);
27102711
DEFINE_DEFER_PENDING_EVENT(xfs_defer_item_unpause);
27112712

27122713
DECLARE_EVENT_CLASS(xfs_free_extent_deferred_class,
2713-
TP_PROTO(struct xfs_mount *mp, xfs_agnumber_t agno,
2714-
int type, xfs_agblock_t agbno, xfs_extlen_t len),
2715-
TP_ARGS(mp, agno, type, agbno, len),
2714+
TP_PROTO(struct xfs_mount *mp, struct xfs_extent_free_item *free),
2715+
TP_ARGS(mp, free),
27162716
TP_STRUCT__entry(
27172717
__field(dev_t, dev)
27182718
__field(xfs_agnumber_t, agno)
2719-
__field(int, type)
27202719
__field(xfs_agblock_t, agbno)
27212720
__field(xfs_extlen_t, len)
2721+
__field(unsigned int, flags)
27222722
),
27232723
TP_fast_assign(
27242724
__entry->dev = mp->m_super->s_dev;
2725-
__entry->agno = agno;
2726-
__entry->type = type;
2727-
__entry->agbno = agbno;
2728-
__entry->len = len;
2725+
__entry->agno = XFS_FSB_TO_AGNO(mp, free->xefi_startblock);
2726+
__entry->agbno = XFS_FSB_TO_AGBNO(mp, free->xefi_startblock);
2727+
__entry->len = free->xefi_blockcount;
2728+
__entry->flags = free->xefi_flags;
27292729
),
2730-
TP_printk("dev %d:%d op %d agno 0x%x agbno 0x%x fsbcount 0x%x",
2730+
TP_printk("dev %d:%d agno 0x%x agbno 0x%x fsbcount 0x%x flags 0x%x",
27312731
MAJOR(__entry->dev), MINOR(__entry->dev),
2732-
__entry->type,
27332732
__entry->agno,
27342733
__entry->agbno,
2735-
__entry->len)
2734+
__entry->len,
2735+
__entry->flags)
27362736
);
27372737
#define DEFINE_FREE_EXTENT_DEFERRED_EVENT(name) \
27382738
DEFINE_EVENT(xfs_free_extent_deferred_class, name, \
2739-
TP_PROTO(struct xfs_mount *mp, xfs_agnumber_t agno, \
2740-
int type, \
2741-
xfs_agblock_t bno, \
2742-
xfs_extlen_t len), \
2743-
TP_ARGS(mp, agno, type, bno, len))
2744-
DEFINE_FREE_EXTENT_DEFERRED_EVENT(xfs_bmap_free_defer);
2745-
DEFINE_FREE_EXTENT_DEFERRED_EVENT(xfs_bmap_free_deferred);
2739+
TP_PROTO(struct xfs_mount *mp, struct xfs_extent_free_item *free), \
2740+
TP_ARGS(mp, free))
27462741
DEFINE_FREE_EXTENT_DEFERRED_EVENT(xfs_agfl_free_defer);
27472742
DEFINE_FREE_EXTENT_DEFERRED_EVENT(xfs_agfl_free_deferred);
2743+
DEFINE_FREE_EXTENT_DEFERRED_EVENT(xfs_extent_free_defer);
2744+
DEFINE_FREE_EXTENT_DEFERRED_EVENT(xfs_extent_free_deferred);
27482745

27492746
DECLARE_EVENT_CLASS(xfs_defer_pending_item_class,
27502747
TP_PROTO(struct xfs_mount *mp, struct xfs_defer_pending *dfp,

0 commit comments

Comments
 (0)