From: Dave Chinner Date: Thu, 28 Jun 2018 20:11:55 +0000 (-0500) Subject: xfs: adder caller IP to xfs_defer* tracepoints X-Git-Tag: v4.18.0-rc0~55 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=f11d5eddbc48abf599687a124e37b57812d10f39;p=thirdparty%2Fxfsprogs-dev.git xfs: adder caller IP to xfs_defer* tracepoints Source kernel commit: e632a5690c734a383a83272a502be79cb2c040e5 So it's clear in the trace where they are being called from. Signed-Off-By: Dave Chinner Reviewed-by: Christoph Hellwig Reviewed-by: Brian Foster Reviewed-by: Darrick J. Wong Signed-off-by: Darrick J. Wong Signed-off-by: Eric Sandeen --- diff --git a/include/xfs_trace.h b/include/xfs_trace.h index 7b9eb6ff4..b5a2fbc4a 100644 --- a/include/xfs_trace.h +++ b/include/xfs_trace.h @@ -176,20 +176,20 @@ #define trace_xfs_perag_get_tag(a,b,c,d) ((c) = (c)) #define trace_xfs_perag_put(a,b,c,d) ((c) = (c)) -#define trace_xfs_defer_init(a,b) ((void) 0) -#define trace_xfs_defer_cancel(a,b) ((void) 0) +#define trace_xfs_defer_init(a,b,c) ((void) 0) +#define trace_xfs_defer_cancel(a,b,c) ((void) 0) #define trace_xfs_defer_intake_work(a,b) ((void) 0) #define trace_xfs_defer_intake_cancel(a,b) ((void) 0) #define trace_xfs_defer_pending_commit(a,b) ((void) 0) #define trace_xfs_defer_pending_abort(a,b) ((void) 0) #define trace_xfs_defer_pending_cancel(a,b) ((void) 0) #define trace_xfs_defer_pending_finish(a,b) ((void) 0) -#define trace_xfs_defer_trans_abort(a,b) ((void) 0) -#define trace_xfs_defer_trans_roll(a,b) ((void) 0) +#define trace_xfs_defer_trans_abort(a,b,c) ((void) 0) +#define trace_xfs_defer_trans_roll(a,b,c) ((void) 0) #define trace_xfs_defer_trans_roll_error(a,b,c) ((void) 0) -#define trace_xfs_defer_finish(a,b) ((void) 0) +#define trace_xfs_defer_finish(a,b,c) ((void) 0) #define trace_xfs_defer_finish_error(a,b,c) ((void) 0) -#define trace_xfs_defer_finish_done(a,b) ((void) 0) +#define trace_xfs_defer_finish_done(a,b,c) ((void) 0) #define trace_xfs_bmap_free_defer(...) ((void) 0) #define trace_xfs_bmap_free_deferred(...) ((void) 0) diff --git a/libxfs/xfs_defer.c b/libxfs/xfs_defer.c index 717e83689..b548acb92 100644 --- a/libxfs/xfs_defer.c +++ b/libxfs/xfs_defer.c @@ -220,7 +220,7 @@ xfs_defer_trans_abort( { struct xfs_defer_pending *dfp; - trace_xfs_defer_trans_abort(tp->t_mountp, dop); + trace_xfs_defer_trans_abort(tp->t_mountp, dop, _RET_IP_); /* Abort intent items that don't have a done item. */ list_for_each_entry(dfp, &dop->dop_pending, dfp_list) { @@ -253,7 +253,7 @@ xfs_defer_trans_roll( for (i = 0; i < XFS_DEFER_OPS_NR_BUFS && dop->dop_bufs[i]; i++) xfs_trans_dirty_buf(*tp, dop->dop_bufs[i]); - trace_xfs_defer_trans_roll((*tp)->t_mountp, dop); + trace_xfs_defer_trans_roll((*tp)->t_mountp, dop, _RET_IP_); /* Roll the transaction. */ error = xfs_trans_roll(tp); @@ -356,7 +356,7 @@ xfs_defer_finish( ASSERT((*tp)->t_flags & XFS_TRANS_PERM_LOG_RES); - trace_xfs_defer_finish((*tp)->t_mountp, dop); + trace_xfs_defer_finish((*tp)->t_mountp, dop, _RET_IP_); /* * Attach dfops to the transaction during deferred ops processing. This @@ -443,7 +443,7 @@ out: if (error) trace_xfs_defer_finish_error((*tp)->t_mountp, dop, error); else - trace_xfs_defer_finish_done((*tp)->t_mountp, dop); + trace_xfs_defer_finish_done((*tp)->t_mountp, dop, _RET_IP_); return error; } @@ -459,7 +459,7 @@ xfs_defer_cancel( struct list_head *pwi; struct list_head *n; - trace_xfs_defer_cancel(NULL, dop); + trace_xfs_defer_cancel(NULL, dop, _RET_IP_); /* * Free the pending items. Caller should already have arranged @@ -544,5 +544,5 @@ xfs_defer_init( *fbp = NULLFSBLOCK; INIT_LIST_HEAD(&dop->dop_intake); INIT_LIST_HEAD(&dop->dop_pending); - trace_xfs_defer_init(NULL, dop); + trace_xfs_defer_init(NULL, dop, _RET_IP_); }