diff options
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 14ed16fd862..4794ec891fe 100644 --- a/fs/btrfs/extent_io.h +++ b/fs/btrfs/extent_io.h | |||
| @@ -60,8 +60,13 @@ struct extent_io_ops { | |||
| 60 | struct extent_state *state, int uptodate); | 60 | struct extent_state *state, int uptodate); |
| 61 | int (*set_bit_hook)(struct inode *inode, u64 start, u64 end, | 61 | int (*set_bit_hook)(struct inode *inode, u64 start, u64 end, |
| 62 | unsigned long old, unsigned long bits); | 62 | unsigned long old, unsigned long bits); |
| 63 | int (*clear_bit_hook)(struct inode *inode, u64 start, u64 end, | 63 | int (*clear_bit_hook)(struct inode *inode, struct extent_state *state, |
| 64 | unsigned long old, unsigned long bits); | 64 | unsigned long bits); |
| 65 | int (*merge_extent_hook)(struct inode *inode, | ||
| 66 | struct extent_state *new, | ||
| 67 | struct extent_state *other); | ||
| 68 | int (*split_extent_hook)(struct inode *inode, | ||
| 69 | struct extent_state *orig, u64 split); | ||
| 65 | int (*write_cache_pages_lock_hook)(struct page *page); | 70 | int (*write_cache_pages_lock_hook)(struct page *page); |
| 66 | }; | 71 | }; |
| 67 | 72 | ||
| @@ -79,10 +84,14 @@ struct extent_state { | |||
| 79 | u64 start; | 84 | u64 start; |
| 80 | u64 end; /* inclusive */ | 85 | u64 end; /* inclusive */ |
| 81 | struct rb_node rb_node; | 86 | struct rb_node rb_node; |
| 87 | |||
| 88 | /* ADD NEW ELEMENTS AFTER THIS */ | ||
| 82 | struct extent_io_tree *tree; | 89 | struct extent_io_tree *tree; |
| 83 | wait_queue_head_t wq; | 90 | wait_queue_head_t wq; |
| 84 | atomic_t refs; | 91 | atomic_t refs; |
| 85 | unsigned long state; | 92 | unsigned long state; |
| 93 | u64 split_start; | ||
| 94 | u64 split_end; | ||
| 86 | 95 | ||
| 87 | /* for use by the FS */ | 96 | /* for use by the FS */ |
| 88 | u64 private; | 97 | u64 private; |
