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 <djwong@kernel.org> Reviewed-by: Christoph Hellwig <hch@lst.de>
This commit is contained in:
@@ -2544,7 +2544,7 @@ xfs_defer_agfl_block(
|
||||
xefi->xefi_owner = oinfo->oi_owner;
|
||||
xefi->xefi_agresv = XFS_AG_RESV_AGFL;
|
||||
|
||||
trace_xfs_agfl_free_defer(mp, agno, 0, agbno, 1);
|
||||
trace_xfs_agfl_free_defer(mp, xefi);
|
||||
|
||||
xfs_extent_free_get_group(mp, xefi);
|
||||
xfs_defer_add(tp, &xefi->xefi_list, &xfs_agfl_free_defer_type);
|
||||
@@ -2606,9 +2606,8 @@ xfs_defer_extent_free(
|
||||
} else {
|
||||
xefi->xefi_owner = XFS_RMAP_OWN_NULL;
|
||||
}
|
||||
trace_xfs_bmap_free_defer(mp,
|
||||
XFS_FSB_TO_AGNO(tp->t_mountp, bno), 0,
|
||||
XFS_FSB_TO_AGBNO(tp->t_mountp, bno), len);
|
||||
|
||||
trace_xfs_extent_free_defer(mp, xefi);
|
||||
|
||||
xfs_extent_free_get_group(mp, xefi);
|
||||
*dfpp = xfs_defer_add(tp, &xefi->xefi_list, &xfs_extent_free_defer_type);
|
||||
|
||||
@@ -464,8 +464,7 @@ xfs_extent_free_finish_item(
|
||||
if (xefi->xefi_flags & XFS_EFI_BMBT_BLOCK)
|
||||
oinfo.oi_flags |= XFS_OWNER_INFO_BMBT_BLOCK;
|
||||
|
||||
trace_xfs_bmap_free_deferred(tp->t_mountp, xefi->xefi_pag->pag_agno, 0,
|
||||
agbno, xefi->xefi_blockcount);
|
||||
trace_xfs_extent_free_deferred(mp, xefi);
|
||||
|
||||
/*
|
||||
* If we need a new transaction to make progress, the caller will log a
|
||||
@@ -542,8 +541,7 @@ xfs_agfl_free_finish_item(
|
||||
agbno = XFS_FSB_TO_AGBNO(mp, xefi->xefi_startblock);
|
||||
oinfo.oi_owner = xefi->xefi_owner;
|
||||
|
||||
trace_xfs_agfl_free_deferred(mp, xefi->xefi_pag->pag_agno, 0, agbno,
|
||||
xefi->xefi_blockcount);
|
||||
trace_xfs_agfl_free_deferred(mp, xefi);
|
||||
|
||||
error = xfs_alloc_read_agf(xefi->xefi_pag, tp, 0, &agbp);
|
||||
if (!error)
|
||||
|
||||
@@ -90,6 +90,7 @@ struct xfs_exchrange;
|
||||
struct xfs_getparents;
|
||||
struct xfs_parent_irec;
|
||||
struct xfs_attrlist_cursor_kern;
|
||||
struct xfs_extent_free_item;
|
||||
|
||||
#define XFS_ATTR_FILTER_FLAGS \
|
||||
{ XFS_ATTR_ROOT, "ROOT" }, \
|
||||
@@ -2710,41 +2711,37 @@ DEFINE_DEFER_PENDING_EVENT(xfs_defer_item_pause);
|
||||
DEFINE_DEFER_PENDING_EVENT(xfs_defer_item_unpause);
|
||||
|
||||
DECLARE_EVENT_CLASS(xfs_free_extent_deferred_class,
|
||||
TP_PROTO(struct xfs_mount *mp, xfs_agnumber_t agno,
|
||||
int type, xfs_agblock_t agbno, xfs_extlen_t len),
|
||||
TP_ARGS(mp, agno, type, agbno, len),
|
||||
TP_PROTO(struct xfs_mount *mp, struct xfs_extent_free_item *free),
|
||||
TP_ARGS(mp, free),
|
||||
TP_STRUCT__entry(
|
||||
__field(dev_t, dev)
|
||||
__field(xfs_agnumber_t, agno)
|
||||
__field(int, type)
|
||||
__field(xfs_agblock_t, agbno)
|
||||
__field(xfs_extlen_t, len)
|
||||
__field(unsigned int, flags)
|
||||
),
|
||||
TP_fast_assign(
|
||||
__entry->dev = mp->m_super->s_dev;
|
||||
__entry->agno = agno;
|
||||
__entry->type = type;
|
||||
__entry->agbno = agbno;
|
||||
__entry->len = len;
|
||||
__entry->agno = XFS_FSB_TO_AGNO(mp, free->xefi_startblock);
|
||||
__entry->agbno = XFS_FSB_TO_AGBNO(mp, free->xefi_startblock);
|
||||
__entry->len = free->xefi_blockcount;
|
||||
__entry->flags = free->xefi_flags;
|
||||
),
|
||||
TP_printk("dev %d:%d op %d agno 0x%x agbno 0x%x fsbcount 0x%x",
|
||||
TP_printk("dev %d:%d agno 0x%x agbno 0x%x fsbcount 0x%x flags 0x%x",
|
||||
MAJOR(__entry->dev), MINOR(__entry->dev),
|
||||
__entry->type,
|
||||
__entry->agno,
|
||||
__entry->agbno,
|
||||
__entry->len)
|
||||
__entry->len,
|
||||
__entry->flags)
|
||||
);
|
||||
#define DEFINE_FREE_EXTENT_DEFERRED_EVENT(name) \
|
||||
DEFINE_EVENT(xfs_free_extent_deferred_class, name, \
|
||||
TP_PROTO(struct xfs_mount *mp, xfs_agnumber_t agno, \
|
||||
int type, \
|
||||
xfs_agblock_t bno, \
|
||||
xfs_extlen_t len), \
|
||||
TP_ARGS(mp, agno, type, bno, len))
|
||||
DEFINE_FREE_EXTENT_DEFERRED_EVENT(xfs_bmap_free_defer);
|
||||
DEFINE_FREE_EXTENT_DEFERRED_EVENT(xfs_bmap_free_deferred);
|
||||
TP_PROTO(struct xfs_mount *mp, struct xfs_extent_free_item *free), \
|
||||
TP_ARGS(mp, free))
|
||||
DEFINE_FREE_EXTENT_DEFERRED_EVENT(xfs_agfl_free_defer);
|
||||
DEFINE_FREE_EXTENT_DEFERRED_EVENT(xfs_agfl_free_deferred);
|
||||
DEFINE_FREE_EXTENT_DEFERRED_EVENT(xfs_extent_free_defer);
|
||||
DEFINE_FREE_EXTENT_DEFERRED_EVENT(xfs_extent_free_deferred);
|
||||
|
||||
DECLARE_EVENT_CLASS(xfs_defer_pending_item_class,
|
||||
TP_PROTO(struct xfs_mount *mp, struct xfs_defer_pending *dfp,
|
||||
|
||||
Reference in New Issue
Block a user