diff options
Diffstat (limited to 'fs/btrfs/ordered-data.h')
| -rw-r--r-- | fs/btrfs/ordered-data.h | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/fs/btrfs/ordered-data.h b/fs/btrfs/ordered-data.h index c355ad4dc1a6..e03c560d2997 100644 --- a/fs/btrfs/ordered-data.h +++ b/fs/btrfs/ordered-data.h | |||
| @@ -74,6 +74,12 @@ struct btrfs_ordered_sum { | |||
| 74 | 74 | ||
| 75 | #define BTRFS_ORDERED_DIRECT 5 /* set when we're doing DIO with this extent */ | 75 | #define BTRFS_ORDERED_DIRECT 5 /* set when we're doing DIO with this extent */ |
| 76 | 76 | ||
| 77 | #define BTRFS_ORDERED_IOERR 6 /* We had an io error when writing this out */ | ||
| 78 | |||
| 79 | #define BTRFS_ORDERED_UPDATED_ISIZE 7 /* indicates wether this ordered extent | ||
| 80 | * has done its due diligence in updating | ||
| 81 | * the isize. */ | ||
| 82 | |||
| 77 | struct btrfs_ordered_extent { | 83 | struct btrfs_ordered_extent { |
| 78 | /* logical offset in the file */ | 84 | /* logical offset in the file */ |
| 79 | u64 file_offset; | 85 | u64 file_offset; |
| @@ -113,6 +119,8 @@ struct btrfs_ordered_extent { | |||
| 113 | 119 | ||
| 114 | /* a per root list of all the pending ordered extents */ | 120 | /* a per root list of all the pending ordered extents */ |
| 115 | struct list_head root_extent_list; | 121 | struct list_head root_extent_list; |
| 122 | |||
| 123 | struct btrfs_work work; | ||
| 116 | }; | 124 | }; |
| 117 | 125 | ||
| 118 | 126 | ||
| @@ -143,10 +151,11 @@ void btrfs_remove_ordered_extent(struct inode *inode, | |||
| 143 | struct btrfs_ordered_extent *entry); | 151 | struct btrfs_ordered_extent *entry); |
| 144 | int btrfs_dec_test_ordered_pending(struct inode *inode, | 152 | int btrfs_dec_test_ordered_pending(struct inode *inode, |
| 145 | struct btrfs_ordered_extent **cached, | 153 | struct btrfs_ordered_extent **cached, |
| 146 | u64 file_offset, u64 io_size); | 154 | u64 file_offset, u64 io_size, int uptodate); |
| 147 | int btrfs_dec_test_first_ordered_pending(struct inode *inode, | 155 | int btrfs_dec_test_first_ordered_pending(struct inode *inode, |
| 148 | struct btrfs_ordered_extent **cached, | 156 | struct btrfs_ordered_extent **cached, |
| 149 | u64 *file_offset, u64 io_size); | 157 | u64 *file_offset, u64 io_size, |
| 158 | int uptodate); | ||
| 150 | int btrfs_add_ordered_extent(struct inode *inode, u64 file_offset, | 159 | int btrfs_add_ordered_extent(struct inode *inode, u64 file_offset, |
| 151 | u64 start, u64 len, u64 disk_len, int type); | 160 | u64 start, u64 len, u64 disk_len, int type); |
| 152 | int btrfs_add_ordered_extent_dio(struct inode *inode, u64 file_offset, | 161 | int btrfs_add_ordered_extent_dio(struct inode *inode, u64 file_offset, |
