xfs: shut up -Wuninitialized in xfsaild_push
authorDarrick J. Wong <djwong@kernel.org>
Tue, 29 Nov 2022 01:24:42 +0000 (17:24 -0800)
committerDarrick J. Wong <djwong@kernel.org>
Wed, 30 Nov 2022 16:55:18 +0000 (08:55 -0800)
-Wuninitialized complains about @target in xfsaild_push being
uninitialized in the case where the waitqueue is active but there is no
last item in the AIL to wait for.  I /think/ it should never be the case
that the subsequent xfs_trans_ail_cursor_first returns a log item and
hence we'll never end up at XFS_LSN_CMP, but let's make this explicit.

Signed-off-by: Darrick J. Wong <djwong@kernel.org>
Reviewed-by: Gao Xiang <hsiangkao@linux.alibaba.com>
Reviewed-by: Dave Chinner <dchinner@redhat.com>
fs/xfs/xfs_trans_ail.c

index f51df7d..7d4109a 100644 (file)
@@ -422,7 +422,7 @@ xfsaild_push(
        struct xfs_ail_cursor   cur;
        struct xfs_log_item     *lip;
        xfs_lsn_t               lsn;
-       xfs_lsn_t               target;
+       xfs_lsn_t               target = NULLCOMMITLSN;
        long                    tout;
        int                     stuck = 0;
        int                     flushing = 0;
@@ -472,6 +472,8 @@ xfsaild_push(
 
        XFS_STATS_INC(mp, xs_push_ail);
 
+       ASSERT(target != NULLCOMMITLSN);
+
        lsn = lip->li_lsn;
        while ((XFS_LSN_CMP(lip->li_lsn, target) <= 0)) {
                int     lock_result;