diff options
author | Chris Mason <chris.mason@oracle.com> | 2011-11-06 03:07:10 -0500 |
---|---|---|
committer | Chris Mason <chris.mason@oracle.com> | 2011-11-06 03:07:10 -0500 |
commit | 806468f8bf76a3cb2b626dd282946a6c9c0a50f0 (patch) | |
tree | 2de54229a5623756417a9bad7f426a2e8b06cad7 /fs/btrfs/extent_io.h | |
parent | 531f4b1ae5e0fc8c9b3f03838218e5ea178f80d3 (diff) | |
parent | 5da6fcbc4eb50c0f55d520750332f5a6ab13508c (diff) |
Merge git://git.jan-o-sch.net/btrfs-unstable into integration
Conflicts:
fs/btrfs/Makefile
fs/btrfs/extent_io.c
fs/btrfs/extent_io.h
fs/btrfs/scrub.c
Signed-off-by: Chris Mason <chris.mason@oracle.com>
Diffstat (limited to 'fs/btrfs/extent_io.h')
-rw-r--r-- | fs/btrfs/extent_io.h | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/fs/btrfs/extent_io.h b/fs/btrfs/extent_io.h index 697570eed9e8..feb9be0e23bc 100644 --- a/fs/btrfs/extent_io.h +++ b/fs/btrfs/extent_io.h | |||
@@ -18,6 +18,7 @@ | |||
18 | #define EXTENT_DO_ACCOUNTING (1 << 11) | 18 | #define EXTENT_DO_ACCOUNTING (1 << 11) |
19 | #define EXTENT_FIRST_DELALLOC (1 << 12) | 19 | #define EXTENT_FIRST_DELALLOC (1 << 12) |
20 | #define EXTENT_NEED_WAIT (1 << 13) | 20 | #define EXTENT_NEED_WAIT (1 << 13) |
21 | #define EXTENT_DAMAGED (1 << 14) | ||
21 | #define EXTENT_IOBITS (EXTENT_LOCKED | EXTENT_WRITEBACK) | 22 | #define EXTENT_IOBITS (EXTENT_LOCKED | EXTENT_WRITEBACK) |
22 | #define EXTENT_CTLBITS (EXTENT_DO_ACCOUNTING | EXTENT_FIRST_DELALLOC) | 23 | #define EXTENT_CTLBITS (EXTENT_DO_ACCOUNTING | EXTENT_FIRST_DELALLOC) |
23 | 24 | ||
@@ -69,7 +70,7 @@ struct extent_io_ops { | |||
69 | unsigned long bio_flags); | 70 | unsigned long bio_flags); |
70 | int (*readpage_io_hook)(struct page *page, u64 start, u64 end); | 71 | int (*readpage_io_hook)(struct page *page, u64 start, u64 end); |
71 | int (*readpage_io_failed_hook)(struct bio *bio, struct page *page, | 72 | int (*readpage_io_failed_hook)(struct bio *bio, struct page *page, |
72 | u64 start, u64 end, | 73 | u64 start, u64 end, u64 failed_mirror, |
73 | struct extent_state *state); | 74 | struct extent_state *state); |
74 | int (*writepage_io_failed_hook)(struct bio *bio, struct page *page, | 75 | int (*writepage_io_failed_hook)(struct bio *bio, struct page *page, |
75 | u64 start, u64 end, | 76 | u64 start, u64 end, |
@@ -188,7 +189,7 @@ int unlock_extent_cached(struct extent_io_tree *tree, u64 start, u64 end, | |||
188 | int try_lock_extent(struct extent_io_tree *tree, u64 start, u64 end, | 189 | int try_lock_extent(struct extent_io_tree *tree, u64 start, u64 end, |
189 | gfp_t mask); | 190 | gfp_t mask); |
190 | int extent_read_full_page(struct extent_io_tree *tree, struct page *page, | 191 | int extent_read_full_page(struct extent_io_tree *tree, struct page *page, |
191 | get_extent_t *get_extent); | 192 | get_extent_t *get_extent, int mirror_num); |
192 | int __init extent_io_init(void); | 193 | int __init extent_io_init(void); |
193 | void extent_io_exit(void); | 194 | void extent_io_exit(void); |
194 | 195 | ||
@@ -259,6 +260,8 @@ void free_extent_buffer(struct extent_buffer *eb); | |||
259 | int read_extent_buffer_pages(struct extent_io_tree *tree, | 260 | int read_extent_buffer_pages(struct extent_io_tree *tree, |
260 | struct extent_buffer *eb, u64 start, int wait, | 261 | struct extent_buffer *eb, u64 start, int wait, |
261 | get_extent_t *get_extent, int mirror_num); | 262 | get_extent_t *get_extent, int mirror_num); |
263 | unsigned long num_extent_pages(u64 start, u64 len); | ||
264 | struct page *extent_buffer_page(struct extent_buffer *eb, unsigned long i); | ||
262 | 265 | ||
263 | static inline void extent_buffer_get(struct extent_buffer *eb) | 266 | static inline void extent_buffer_get(struct extent_buffer *eb) |
264 | { | 267 | { |
@@ -308,4 +311,10 @@ int extent_clear_unlock_delalloc(struct inode *inode, | |||
308 | struct bio * | 311 | struct bio * |
309 | btrfs_bio_alloc(struct block_device *bdev, u64 first_sector, int nr_vecs, | 312 | btrfs_bio_alloc(struct block_device *bdev, u64 first_sector, int nr_vecs, |
310 | gfp_t gfp_flags); | 313 | gfp_t gfp_flags); |
314 | |||
315 | struct btrfs_mapping_tree; | ||
316 | |||
317 | int repair_io_failure(struct btrfs_mapping_tree *map_tree, u64 start, | ||
318 | u64 length, u64 logical, struct page *page, | ||
319 | int mirror_num); | ||
311 | #endif | 320 | #endif |