diff options
Diffstat (limited to 'fs/nilfs2/bmap.h')
-rw-r--r-- | fs/nilfs2/bmap.h | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/fs/nilfs2/bmap.h b/fs/nilfs2/bmap.h index a20569b1992..bde1c0aa2e1 100644 --- a/fs/nilfs2/bmap.h +++ b/fs/nilfs2/bmap.h | |||
@@ -135,6 +135,12 @@ struct nilfs_bmap { | |||
135 | /* state */ | 135 | /* state */ |
136 | #define NILFS_BMAP_DIRTY 0x00000001 | 136 | #define NILFS_BMAP_DIRTY 0x00000001 |
137 | 137 | ||
138 | struct nilfs_bmap_store { | ||
139 | __le64 data[NILFS_BMAP_SIZE / sizeof(__le64)]; | ||
140 | __u64 last_allocated_key; | ||
141 | __u64 last_allocated_ptr; | ||
142 | int state; | ||
143 | }; | ||
138 | 144 | ||
139 | int nilfs_bmap_test_and_clear_dirty(struct nilfs_bmap *); | 145 | int nilfs_bmap_test_and_clear_dirty(struct nilfs_bmap *); |
140 | int nilfs_bmap_read(struct nilfs_bmap *, struct nilfs_inode *); | 146 | int nilfs_bmap_read(struct nilfs_bmap *, struct nilfs_inode *); |
@@ -153,9 +159,9 @@ int nilfs_bmap_lookup_at_level(struct nilfs_bmap *, __u64, int, __u64 *); | |||
153 | int nilfs_bmap_mark(struct nilfs_bmap *, __u64, int); | 159 | int nilfs_bmap_mark(struct nilfs_bmap *, __u64, int); |
154 | 160 | ||
155 | void nilfs_bmap_init_gc(struct nilfs_bmap *); | 161 | void nilfs_bmap_init_gc(struct nilfs_bmap *); |
156 | void nilfs_bmap_init_gcdat(struct nilfs_bmap *, struct nilfs_bmap *); | ||
157 | void nilfs_bmap_commit_gcdat(struct nilfs_bmap *, struct nilfs_bmap *); | ||
158 | 162 | ||
163 | void nilfs_bmap_save(const struct nilfs_bmap *, struct nilfs_bmap_store *); | ||
164 | void nilfs_bmap_restore(struct nilfs_bmap *, const struct nilfs_bmap_store *); | ||
159 | 165 | ||
160 | static inline int nilfs_bmap_lookup(struct nilfs_bmap *bmap, __u64 key, | 166 | static inline int nilfs_bmap_lookup(struct nilfs_bmap *bmap, __u64 key, |
161 | __u64 *ptr) | 167 | __u64 *ptr) |