diff options
Diffstat (limited to 'fs/nilfs2/segbuf.c')
-rw-r--r-- | fs/nilfs2/segbuf.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/fs/nilfs2/segbuf.c b/fs/nilfs2/segbuf.c index d856d62bf886..645c78656aa0 100644 --- a/fs/nilfs2/segbuf.c +++ b/fs/nilfs2/segbuf.c | |||
@@ -100,6 +100,22 @@ void nilfs_segbuf_map(struct nilfs_segment_buffer *segbuf, __u64 segnum, | |||
100 | segbuf->sb_fseg_end - segbuf->sb_pseg_start + 1; | 100 | segbuf->sb_fseg_end - segbuf->sb_pseg_start + 1; |
101 | } | 101 | } |
102 | 102 | ||
103 | /** | ||
104 | * nilfs_segbuf_map_cont - map a new log behind a given log | ||
105 | * @segbuf: new segment buffer | ||
106 | * @prev: segment buffer containing a log to be continued | ||
107 | */ | ||
108 | void nilfs_segbuf_map_cont(struct nilfs_segment_buffer *segbuf, | ||
109 | struct nilfs_segment_buffer *prev) | ||
110 | { | ||
111 | segbuf->sb_segnum = prev->sb_segnum; | ||
112 | segbuf->sb_fseg_start = prev->sb_fseg_start; | ||
113 | segbuf->sb_fseg_end = prev->sb_fseg_end; | ||
114 | segbuf->sb_pseg_start = prev->sb_pseg_start + prev->sb_sum.nblocks; | ||
115 | segbuf->sb_rest_blocks = | ||
116 | segbuf->sb_fseg_end - segbuf->sb_pseg_start + 1; | ||
117 | } | ||
118 | |||
103 | void nilfs_segbuf_set_next_segnum(struct nilfs_segment_buffer *segbuf, | 119 | void nilfs_segbuf_set_next_segnum(struct nilfs_segment_buffer *segbuf, |
104 | __u64 nextnum, struct the_nilfs *nilfs) | 120 | __u64 nextnum, struct the_nilfs *nilfs) |
105 | { | 121 | { |