On Thu, Nov 24, 2022 at 08:59:35AM -0800, Darrick J. Wong wrote: > From: Darrick J. Wong <djwong@xxxxxxxxxx> > > -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@xxxxxxxxxx> As far as I understand, I don't think this can happen as well. Reviewed-by: Gao Xiang <hsiangkao@xxxxxxxxxxxxxxxxx> Thanks, Gao Xiang > --- > fs/xfs/xfs_trans_ail.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > > diff --git a/fs/xfs/xfs_trans_ail.c b/fs/xfs/xfs_trans_ail.c > index f51df7d94ef7..7d4109af193e 100644 > --- a/fs/xfs/xfs_trans_ail.c > +++ b/fs/xfs/xfs_trans_ail.c > @@ -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;