diff options
Diffstat (limited to 'fs/ext4/ext4_extents.h')
| -rw-r--r-- | fs/ext4/ext4_extents.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/fs/ext4/ext4_extents.h b/fs/ext4/ext4_extents.h index d33dc56d6986..bec7ce59fc0d 100644 --- a/fs/ext4/ext4_extents.h +++ b/fs/ext4/ext4_extents.h | |||
| @@ -124,6 +124,19 @@ struct ext4_ext_path { | |||
| 124 | #define EXT4_EXT_CACHE_GAP 1 | 124 | #define EXT4_EXT_CACHE_GAP 1 |
| 125 | #define EXT4_EXT_CACHE_EXTENT 2 | 125 | #define EXT4_EXT_CACHE_EXTENT 2 |
| 126 | 126 | ||
| 127 | /* | ||
| 128 | * to be called by ext4_ext_walk_space() | ||
| 129 | * negative retcode - error | ||
| 130 | * positive retcode - signal for ext4_ext_walk_space(), see below | ||
| 131 | * callback must return valid extent (passed or newly created) | ||
| 132 | */ | ||
| 133 | typedef int (*ext_prepare_callback)(struct inode *, struct ext4_ext_path *, | ||
| 134 | struct ext4_ext_cache *, | ||
| 135 | struct ext4_extent *, void *); | ||
| 136 | |||
| 137 | #define EXT_CONTINUE 0 | ||
| 138 | #define EXT_BREAK 1 | ||
| 139 | #define EXT_REPEAT 2 | ||
| 127 | 140 | ||
| 128 | #define EXT_MAX_BLOCK 0xffffffff | 141 | #define EXT_MAX_BLOCK 0xffffffff |
| 129 | 142 | ||
| @@ -224,6 +237,8 @@ extern int ext4_ext_try_to_merge(struct inode *inode, | |||
| 224 | struct ext4_extent *); | 237 | struct ext4_extent *); |
| 225 | extern unsigned int ext4_ext_check_overlap(struct inode *, struct ext4_extent *, struct ext4_ext_path *); | 238 | extern unsigned int ext4_ext_check_overlap(struct inode *, struct ext4_extent *, struct ext4_ext_path *); |
| 226 | extern int ext4_ext_insert_extent(handle_t *, struct inode *, struct ext4_ext_path *, struct ext4_extent *); | 239 | extern int ext4_ext_insert_extent(handle_t *, struct inode *, struct ext4_ext_path *, struct ext4_extent *); |
| 240 | extern int ext4_ext_walk_space(struct inode *, ext4_lblk_t, ext4_lblk_t, | ||
| 241 | ext_prepare_callback, void *); | ||
| 227 | extern struct ext4_ext_path *ext4_ext_find_extent(struct inode *, ext4_lblk_t, | 242 | extern struct ext4_ext_path *ext4_ext_find_extent(struct inode *, ext4_lblk_t, |
| 228 | struct ext4_ext_path *); | 243 | struct ext4_ext_path *); |
| 229 | extern int ext4_ext_search_left(struct inode *, struct ext4_ext_path *, | 244 | extern int ext4_ext_search_left(struct inode *, struct ext4_ext_path *, |
