aboutsummaryrefslogtreecommitdiffstats
path: root/fs/xfs/xfs_trans_priv.h
diff options
context:
space:
mode:
authorDavid Chinner <david@fromorbit.com>2008-10-30 02:39:00 -0400
committerLachlan McIlroy <lachlan@sgi.com>2008-10-30 02:39:00 -0400
commit5b00f14fbd60d42441f78c0e414a539cbfba5cb9 (patch)
tree6ecce1247c704666e2835883de73cb300c1b0693 /fs/xfs/xfs_trans_priv.h
parent27d8d5fe0ef9daeaafbdd32b14b32a2211930062 (diff)
[XFS] move the AIl traversal over to a consistent interface
With the new cursor interface, it makes sense to make all the traversing code use the cursor interface and make the old one go away. This means more of the AIL interfacing is done by passing struct xfs_ail pointers around the place instead of struct xfs_mount pointers. We can replace the use of xfs_trans_first_ail() in xfs_log_need_covered() as it is only checking if the AIL is empty. We can do that with a call to xfs_trans_ail_tail() instead, where a zero LSN returned indicates and empty AIL... SGI-PV: 988143 SGI-Modid: xfs-linux-melb:xfs-kern:32348a Signed-off-by: David Chinner <david@fromorbit.com> Signed-off-by: Lachlan McIlroy <lachlan@sgi.com> Signed-off-by: Christoph Hellwig <hch@infradead.org>
Diffstat (limited to 'fs/xfs/xfs_trans_priv.h')
-rw-r--r--fs/xfs/xfs_trans_priv.h13
1 files changed, 7 insertions, 6 deletions
diff --git a/fs/xfs/xfs_trans_priv.h b/fs/xfs/xfs_trans_priv.h
index f114d388570a..aa5853502529 100644
--- a/fs/xfs/xfs_trans_priv.h
+++ b/fs/xfs/xfs_trans_priv.h
@@ -90,14 +90,15 @@ void xfs_trans_update_ail(struct xfs_mount *mp,
90void xfs_trans_delete_ail(struct xfs_mount *mp, 90void xfs_trans_delete_ail(struct xfs_mount *mp,
91 struct xfs_log_item *lip) 91 struct xfs_log_item *lip)
92 __releases(mp->m_ail_lock); 92 __releases(mp->m_ail_lock);
93struct xfs_log_item *xfs_trans_first_ail(struct xfs_mount *mp,
94 struct xfs_ail_cursor *cur);
95struct xfs_log_item *xfs_trans_next_ail(struct xfs_mount *mp,
96 struct xfs_ail_cursor *cur);
97 93
98void xfs_trans_ail_cursor_init(struct xfs_ail *ailp, 94xfs_lsn_t xfs_trans_ail_tail(struct xfs_ail *ailp);
95
96struct xfs_log_item *xfs_trans_ail_cursor_first(struct xfs_ail *ailp,
97 struct xfs_ail_cursor *cur,
98 xfs_lsn_t lsn);
99struct xfs_log_item *xfs_trans_ail_cursor_next(struct xfs_ail *ailp,
99 struct xfs_ail_cursor *cur); 100 struct xfs_ail_cursor *cur);
100void xfs_trans_ail_cursor_done(struct xfs_ail *ailp, 101void xfs_trans_ail_cursor_done(struct xfs_ail *ailp,
101 struct xfs_ail_cursor *cur); 102 struct xfs_ail_cursor *cur);
102 103
103long xfsaild_push(struct xfs_ail *, xfs_lsn_t *); 104long xfsaild_push(struct xfs_ail *, xfs_lsn_t *);