OSDN Git Service

xfs: refactor xlog_item_is_intent now that we're done converting
authorDarrick J. Wong <darrick.wong@oracle.com>
Wed, 6 May 2020 19:07:25 +0000 (12:07 -0700)
committerDarrick J. Wong <darrick.wong@oracle.com>
Fri, 8 May 2020 15:50:00 +0000 (08:50 -0700)
Now that we've finished converting all types of log intent items to
provide an ->iop_recover function, we can convert the "is this an intent
item?" predicate to look for a non-null iop_recover pointer.

Move the predicate closer to the functions that use it.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Chandan Babu R <chandanrlinux@gmail.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
fs/xfs/xfs_log_recover.c

index 65081a3..e21cb9c 100644 (file)
@@ -2546,20 +2546,6 @@ xlog_recover_process_data(
        return 0;
 }
 
-/* Is this log item a deferred action intent? */
-static inline bool xlog_item_is_intent(struct xfs_log_item *lip)
-{
-       switch (lip->li_type) {
-       case XFS_LI_EFI:
-       case XFS_LI_RUI:
-       case XFS_LI_CUI:
-       case XFS_LI_BUI:
-               return true;
-       default:
-               return false;
-       }
-}
-
 /* Take all the collected deferred ops and finish them in order. */
 static int
 xlog_finish_defer_ops(
@@ -2594,6 +2580,12 @@ 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;
+}
+
 /*
  * 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