diff options
| -rw-r--r-- | fs/xfs/xfs_trans_ail.c | 26 | 
1 files changed, 13 insertions, 13 deletions
| diff --git a/fs/xfs/xfs_trans_ail.c b/fs/xfs/xfs_trans_ail.c index acdb92f14d51..226c58bd62e0 100644 --- a/fs/xfs/xfs_trans_ail.c +++ b/fs/xfs/xfs_trans_ail.c @@ -346,18 +346,20 @@ xfs_ail_delete(   */  STATIC void  xfs_ail_worker( -	struct work_struct *work) +	struct work_struct	*work)  { -	struct xfs_ail	*ailp = container_of(to_delayed_work(work), +	struct xfs_ail		*ailp = container_of(to_delayed_work(work),  					struct xfs_ail, xa_work); -	long		tout; -	xfs_lsn_t	target =  ailp->xa_target; -	xfs_lsn_t	lsn; -	xfs_log_item_t	*lip; -	int		flush_log, count, stuck; -	xfs_mount_t	*mp = ailp->xa_mount; +	xfs_mount_t		*mp = ailp->xa_mount;  	struct xfs_ail_cursor	*cur = &ailp->xa_cursors; -	int		push_xfsbufd = 0; +	xfs_log_item_t		*lip; +	xfs_lsn_t		lsn; +	xfs_lsn_t		target = ailp->xa_target; +	long			tout = 10; +	int			flush_log = 0; +	int			stuck = 0; +	int			count = 0; +	int			push_xfsbufd = 0;  	spin_lock(&ailp->xa_lock);  	xfs_trans_ail_cursor_init(ailp, cur); @@ -368,8 +370,7 @@ xfs_ail_worker(  		 */  		xfs_trans_ail_cursor_done(ailp, cur);  		spin_unlock(&ailp->xa_lock); -		ailp->xa_last_pushed_lsn = 0; -		return; +		goto out_done;  	}  	XFS_STATS_INC(xs_push_ail); @@ -386,7 +387,6 @@ xfs_ail_worker(  	 * lots of contention on the AIL lists.  	 */  	lsn = lip->li_lsn; -	flush_log = stuck = count = 0;  	while ((XFS_LSN_CMP(lip->li_lsn, target) < 0)) {  		int	lock_result;  		/* @@ -480,7 +480,7 @@ xfs_ail_worker(  	}  	/* assume we have more work to do in a short while */ -	tout = 10; +out_done:  	if (!count) {  		/* We're past our target or empty, so idle */  		ailp->xa_last_pushed_lsn = 0; | 
