diff options
author | Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp> | 2009-11-29 02:51:16 -0500 |
---|---|---|
committer | Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp> | 2009-11-30 07:06:35 -0500 |
commit | e29df395bc6d2d0c89b3d8a5939a24b1b43c2fb6 (patch) | |
tree | 6d6f570d8158d7a18570492d9f5f5edf843ed28c /fs/nilfs2/segbuf.h | |
parent | 9c965bac169f786cc6cca8ff81d3b636e923c960 (diff) |
nilfs2: add iterator for segment buffers
This adds a few iterator functions for segment buffers to make it easy
to handle multiple series of logs.
Signed-off-by: Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp>
Diffstat (limited to 'fs/nilfs2/segbuf.h')
-rw-r--r-- | fs/nilfs2/segbuf.h | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/fs/nilfs2/segbuf.h b/fs/nilfs2/segbuf.h index 241a00dc4988..7fbaf5eee016 100644 --- a/fs/nilfs2/segbuf.h +++ b/fs/nilfs2/segbuf.h | |||
@@ -164,16 +164,18 @@ nilfs_segbuf_add_file_buffer(struct nilfs_segment_buffer *segbuf, | |||
164 | segbuf->sb_sum.nfileblk++; | 164 | segbuf->sb_sum.nfileblk++; |
165 | } | 165 | } |
166 | 166 | ||
167 | void nilfs_release_buffers(struct list_head *); | ||
168 | |||
169 | static inline void nilfs_segbuf_clear(struct nilfs_segment_buffer *segbuf) | ||
170 | { | ||
171 | nilfs_release_buffers(&segbuf->sb_segsum_buffers); | ||
172 | nilfs_release_buffers(&segbuf->sb_payload_buffers); | ||
173 | } | ||
174 | |||
175 | int nilfs_segbuf_write(struct nilfs_segment_buffer *segbuf, | 167 | int nilfs_segbuf_write(struct nilfs_segment_buffer *segbuf, |
176 | struct the_nilfs *nilfs); | 168 | struct the_nilfs *nilfs); |
177 | int nilfs_segbuf_wait(struct nilfs_segment_buffer *segbuf); | 169 | int nilfs_segbuf_wait(struct nilfs_segment_buffer *segbuf); |
178 | 170 | ||
171 | void nilfs_clear_logs(struct list_head *logs); | ||
172 | void nilfs_truncate_logs(struct list_head *logs, | ||
173 | struct nilfs_segment_buffer *last); | ||
174 | int nilfs_wait_on_logs(struct list_head *logs); | ||
175 | |||
176 | static inline void nilfs_destroy_logs(struct list_head *logs) | ||
177 | { | ||
178 | nilfs_truncate_logs(logs, NULL); | ||
179 | } | ||
180 | |||
179 | #endif /* _NILFS_SEGBUF_H */ | 181 | #endif /* _NILFS_SEGBUF_H */ |