xfs: trace log intent item recovery failures
Add a trace point so that we can capture when a recovered log intent item fails to recover. Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com> Reviewed-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Brian Foster <bfoster@redhat.com>
This commit is contained in:
parent
da5de11029
commit
6337032689
|
@ -2559,8 +2559,11 @@ xlog_recover_process_intents(
|
|||
spin_unlock(&ailp->ail_lock);
|
||||
error = lip->li_ops->iop_recover(lip, &capture_list);
|
||||
spin_lock(&ailp->ail_lock);
|
||||
if (error)
|
||||
if (error) {
|
||||
trace_xlog_intent_recovery_failed(log->l_mp, error,
|
||||
lip->li_ops->iop_recover);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
xfs_trans_ail_cursor_done(&cur);
|
||||
|
|
|
@ -103,6 +103,24 @@ DEFINE_ATTR_LIST_EVENT(xfs_attr_list_notfound);
|
|||
DEFINE_ATTR_LIST_EVENT(xfs_attr_leaf_list);
|
||||
DEFINE_ATTR_LIST_EVENT(xfs_attr_node_list);
|
||||
|
||||
TRACE_EVENT(xlog_intent_recovery_failed,
|
||||
TP_PROTO(struct xfs_mount *mp, int error, void *function),
|
||||
TP_ARGS(mp, error, function),
|
||||
TP_STRUCT__entry(
|
||||
__field(dev_t, dev)
|
||||
__field(int, error)
|
||||
__field(void *, function)
|
||||
),
|
||||
TP_fast_assign(
|
||||
__entry->dev = mp->m_super->s_dev;
|
||||
__entry->error = error;
|
||||
__entry->function = function;
|
||||
),
|
||||
TP_printk("dev %d:%d error %d function %pS",
|
||||
MAJOR(__entry->dev), MINOR(__entry->dev),
|
||||
__entry->error, __entry->function)
|
||||
);
|
||||
|
||||
DECLARE_EVENT_CLASS(xfs_perag_class,
|
||||
TP_PROTO(struct xfs_mount *mp, xfs_agnumber_t agno, int refcount,
|
||||
unsigned long caller_ip),
|
||||
|
|
Loading…
Reference in New Issue