xfs: do the assert for all the log done items in xfs_trans_cancel

We should do the assert for all the log intent-done items if they appear
here. This patch detect intent-done items by the fact that their item ops
don't have iop_unpin and iop_push methods and also move the helper
xlog_item_is_intent to xfs_trans.h.

Signed-off-by: Kaixu Xia <kaixuxia@tencent.com>
Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
This commit is contained in:
Kaixu Xia
2020-09-23 09:13:28 -07:00
committed by Darrick J. Wong
parent 74af4c1770
commit d6b8fc6c7a
3 changed files with 17 additions and 8 deletions

View File

@@ -2465,13 +2465,6 @@ xlog_finish_defer_ops(
return xfs_trans_commit(tp);
}
/* Is this log item a deferred action intent? */
static inline bool xlog_item_is_intent(struct xfs_log_item *lip)
{
return lip->li_ops->iop_recover != NULL &&
lip->li_ops->iop_match != NULL;
}
/*
* When this is called, all of the log intent items which did not have
* corresponding log done items should be in the AIL. What we do now