diff options
Diffstat (limited to 'fs/xfs/xfs_trans_priv.h')
| -rw-r--r-- | fs/xfs/xfs_trans_priv.h | 14 | 
1 files changed, 9 insertions, 5 deletions
diff --git a/fs/xfs/xfs_trans_priv.h b/fs/xfs/xfs_trans_priv.h index 6b164e9e9a1..212946b9723 100644 --- a/fs/xfs/xfs_trans_priv.h +++ b/fs/xfs/xfs_trans_priv.h @@ -53,7 +53,7 @@ void	xfs_trans_committed_bulk(struct xfs_ail *ailp, struct xfs_log_vec *lv,   * of the list to trigger traversal restarts.   */  struct xfs_ail_cursor { -	struct xfs_ail_cursor	*next; +	struct list_head	list;  	struct xfs_log_item	*item;  }; @@ -66,7 +66,7 @@ struct xfs_ail {  	struct xfs_mount	*xa_mount;  	struct list_head	xa_ail;  	xfs_lsn_t		xa_target; -	struct xfs_ail_cursor	xa_cursors; +	struct list_head	xa_cursors;  	spinlock_t		xa_lock;  	struct delayed_work	xa_work;  	xfs_lsn_t		xa_last_pushed_lsn; @@ -82,6 +82,7 @@ struct xfs_ail {  extern struct workqueue_struct	*xfs_ail_wq;	/* AIL workqueue */  void	xfs_trans_ail_update_bulk(struct xfs_ail *ailp, +				struct xfs_ail_cursor *cur,  				struct xfs_log_item **log_items, int nr_items,  				xfs_lsn_t lsn) __releases(ailp->xa_lock);  static inline void @@ -90,7 +91,7 @@ xfs_trans_ail_update(  	struct xfs_log_item	*lip,  	xfs_lsn_t		lsn) __releases(ailp->xa_lock)  { -	xfs_trans_ail_update_bulk(ailp, &lip, 1, lsn); +	xfs_trans_ail_update_bulk(ailp, NULL, &lip, 1, lsn);  }  void	xfs_trans_ail_delete_bulk(struct xfs_ail *ailp, @@ -111,10 +112,13 @@ xfs_lsn_t		xfs_ail_min_lsn(struct xfs_ail *ailp);  void			xfs_trans_unlocked_item(struct xfs_ail *,  					xfs_log_item_t *); -struct xfs_log_item	*xfs_trans_ail_cursor_first(struct xfs_ail *ailp, +struct xfs_log_item *	xfs_trans_ail_cursor_first(struct xfs_ail *ailp,  					struct xfs_ail_cursor *cur,  					xfs_lsn_t lsn); -struct xfs_log_item	*xfs_trans_ail_cursor_next(struct xfs_ail *ailp, +struct xfs_log_item *	xfs_trans_ail_cursor_last(struct xfs_ail *ailp, +					struct xfs_ail_cursor *cur, +					xfs_lsn_t lsn); +struct xfs_log_item *	xfs_trans_ail_cursor_next(struct xfs_ail *ailp,  					struct xfs_ail_cursor *cur);  void			xfs_trans_ail_cursor_done(struct xfs_ail *ailp,  					struct xfs_ail_cursor *cur);  |