diff options
Diffstat (limited to 'fs/nilfs2/segment.h')
-rw-r--r-- | fs/nilfs2/segment.h | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/fs/nilfs2/segment.h b/fs/nilfs2/segment.h index 17c487bd8152..cd8056e7cbed 100644 --- a/fs/nilfs2/segment.h +++ b/fs/nilfs2/segment.h | |||
@@ -29,6 +29,8 @@ | |||
29 | #include <linux/nilfs2_fs.h> | 29 | #include <linux/nilfs2_fs.h> |
30 | #include "sb.h" | 30 | #include "sb.h" |
31 | 31 | ||
32 | struct nilfs_root; | ||
33 | |||
32 | /** | 34 | /** |
33 | * struct nilfs_recovery_info - Recovery information | 35 | * struct nilfs_recovery_info - Recovery information |
34 | * @ri_need_recovery: Recovery status | 36 | * @ri_need_recovery: Recovery status |
@@ -87,6 +89,7 @@ struct nilfs_segsum_pointer { | |||
87 | * struct nilfs_sc_info - Segment constructor information | 89 | * struct nilfs_sc_info - Segment constructor information |
88 | * @sc_super: Back pointer to super_block struct | 90 | * @sc_super: Back pointer to super_block struct |
89 | * @sc_sbi: Back pointer to nilfs_sb_info struct | 91 | * @sc_sbi: Back pointer to nilfs_sb_info struct |
92 | * @sc_root: root object of the current filesystem tree | ||
90 | * @sc_nblk_inc: Block count of current generation | 93 | * @sc_nblk_inc: Block count of current generation |
91 | * @sc_dirty_files: List of files to be written | 94 | * @sc_dirty_files: List of files to be written |
92 | * @sc_gc_inodes: List of GC inodes having blocks to be written | 95 | * @sc_gc_inodes: List of GC inodes having blocks to be written |
@@ -107,6 +110,7 @@ struct nilfs_segsum_pointer { | |||
107 | * @sc_datablk_cnt: Data block count of a file | 110 | * @sc_datablk_cnt: Data block count of a file |
108 | * @sc_nblk_this_inc: Number of blocks included in the current logical segment | 111 | * @sc_nblk_this_inc: Number of blocks included in the current logical segment |
109 | * @sc_seg_ctime: Creation time | 112 | * @sc_seg_ctime: Creation time |
113 | * @sc_cno: checkpoint number of current log | ||
110 | * @sc_flags: Internal flags | 114 | * @sc_flags: Internal flags |
111 | * @sc_state_lock: spinlock for sc_state and so on | 115 | * @sc_state_lock: spinlock for sc_state and so on |
112 | * @sc_state: Segctord state flags | 116 | * @sc_state: Segctord state flags |
@@ -128,6 +132,7 @@ struct nilfs_segsum_pointer { | |||
128 | struct nilfs_sc_info { | 132 | struct nilfs_sc_info { |
129 | struct super_block *sc_super; | 133 | struct super_block *sc_super; |
130 | struct nilfs_sb_info *sc_sbi; | 134 | struct nilfs_sb_info *sc_sbi; |
135 | struct nilfs_root *sc_root; | ||
131 | 136 | ||
132 | unsigned long sc_nblk_inc; | 137 | unsigned long sc_nblk_inc; |
133 | 138 | ||
@@ -156,7 +161,7 @@ struct nilfs_sc_info { | |||
156 | unsigned long sc_datablk_cnt; | 161 | unsigned long sc_datablk_cnt; |
157 | unsigned long sc_nblk_this_inc; | 162 | unsigned long sc_nblk_this_inc; |
158 | time_t sc_seg_ctime; | 163 | time_t sc_seg_ctime; |
159 | 164 | __u64 sc_cno; | |
160 | unsigned long sc_flags; | 165 | unsigned long sc_flags; |
161 | 166 | ||
162 | spinlock_t sc_state_lock; | 167 | spinlock_t sc_state_lock; |
@@ -230,7 +235,8 @@ extern void nilfs_flush_segment(struct super_block *, ino_t); | |||
230 | extern int nilfs_clean_segments(struct super_block *, struct nilfs_argv *, | 235 | extern int nilfs_clean_segments(struct super_block *, struct nilfs_argv *, |
231 | void **); | 236 | void **); |
232 | 237 | ||
233 | extern int nilfs_attach_segment_constructor(struct nilfs_sb_info *); | 238 | int nilfs_attach_segment_constructor(struct nilfs_sb_info *sbi, |
239 | struct nilfs_root *root); | ||
234 | extern void nilfs_detach_segment_constructor(struct nilfs_sb_info *); | 240 | extern void nilfs_detach_segment_constructor(struct nilfs_sb_info *); |
235 | 241 | ||
236 | /* recovery.c */ | 242 | /* recovery.c */ |