diff options
Diffstat (limited to 'fs/ext4/ext4.h')
-rw-r--r-- | fs/ext4/ext4.h | 11 |
1 files changed, 0 insertions, 11 deletions
diff --git a/fs/ext4/ext4.h b/fs/ext4/ext4.h index 0ab26fbf3380..b247fbbed99c 100644 --- a/fs/ext4/ext4.h +++ b/fs/ext4/ext4.h | |||
@@ -180,7 +180,6 @@ struct ext4_map_blocks { | |||
180 | * Flags for ext4_io_end->flags | 180 | * Flags for ext4_io_end->flags |
181 | */ | 181 | */ |
182 | #define EXT4_IO_END_UNWRITTEN 0x0001 | 182 | #define EXT4_IO_END_UNWRITTEN 0x0001 |
183 | #define EXT4_IO_END_DIRECT 0x0002 | ||
184 | 183 | ||
185 | /* | 184 | /* |
186 | * For converting uninitialized extents on a work queue. 'handle' is used for | 185 | * For converting uninitialized extents on a work queue. 'handle' is used for |
@@ -196,8 +195,6 @@ typedef struct ext4_io_end { | |||
196 | unsigned int flag; /* unwritten or not */ | 195 | unsigned int flag; /* unwritten or not */ |
197 | loff_t offset; /* offset in the file */ | 196 | loff_t offset; /* offset in the file */ |
198 | ssize_t size; /* size of the extent */ | 197 | ssize_t size; /* size of the extent */ |
199 | struct kiocb *iocb; /* iocb struct for AIO */ | ||
200 | int result; /* error value for AIO */ | ||
201 | atomic_t count; /* reference counter */ | 198 | atomic_t count; /* reference counter */ |
202 | } ext4_io_end_t; | 199 | } ext4_io_end_t; |
203 | 200 | ||
@@ -900,11 +897,9 @@ struct ext4_inode_info { | |||
900 | * Completed IOs that need unwritten extents handling and don't have | 897 | * Completed IOs that need unwritten extents handling and don't have |
901 | * transaction reserved | 898 | * transaction reserved |
902 | */ | 899 | */ |
903 | struct list_head i_unrsv_conversion_list; | ||
904 | atomic_t i_ioend_count; /* Number of outstanding io_end structs */ | 900 | atomic_t i_ioend_count; /* Number of outstanding io_end structs */ |
905 | atomic_t i_unwritten; /* Nr. of inflight conversions pending */ | 901 | atomic_t i_unwritten; /* Nr. of inflight conversions pending */ |
906 | struct work_struct i_rsv_conversion_work; | 902 | struct work_struct i_rsv_conversion_work; |
907 | struct work_struct i_unrsv_conversion_work; | ||
908 | 903 | ||
909 | spinlock_t i_block_reservation_lock; | 904 | spinlock_t i_block_reservation_lock; |
910 | 905 | ||
@@ -1276,8 +1271,6 @@ struct ext4_sb_info { | |||
1276 | struct flex_groups *s_flex_groups; | 1271 | struct flex_groups *s_flex_groups; |
1277 | ext4_group_t s_flex_groups_allocated; | 1272 | ext4_group_t s_flex_groups_allocated; |
1278 | 1273 | ||
1279 | /* workqueue for unreserved extent convertions (dio) */ | ||
1280 | struct workqueue_struct *unrsv_conversion_wq; | ||
1281 | /* workqueue for reserved extent conversions (buffered io) */ | 1274 | /* workqueue for reserved extent conversions (buffered io) */ |
1282 | struct workqueue_struct *rsv_conversion_wq; | 1275 | struct workqueue_struct *rsv_conversion_wq; |
1283 | 1276 | ||
@@ -1340,9 +1333,6 @@ static inline void ext4_set_io_unwritten_flag(struct inode *inode, | |||
1340 | struct ext4_io_end *io_end) | 1333 | struct ext4_io_end *io_end) |
1341 | { | 1334 | { |
1342 | if (!(io_end->flag & EXT4_IO_END_UNWRITTEN)) { | 1335 | if (!(io_end->flag & EXT4_IO_END_UNWRITTEN)) { |
1343 | /* Writeback has to have coversion transaction reserved */ | ||
1344 | WARN_ON(EXT4_SB(inode->i_sb)->s_journal && !io_end->handle && | ||
1345 | !(io_end->flag & EXT4_IO_END_DIRECT)); | ||
1346 | io_end->flag |= EXT4_IO_END_UNWRITTEN; | 1336 | io_end->flag |= EXT4_IO_END_UNWRITTEN; |
1347 | atomic_inc(&EXT4_I(inode)->i_unwritten); | 1337 | atomic_inc(&EXT4_I(inode)->i_unwritten); |
1348 | } | 1338 | } |
@@ -2716,7 +2706,6 @@ extern void ext4_put_io_end_defer(ext4_io_end_t *io_end); | |||
2716 | extern void ext4_io_submit_init(struct ext4_io_submit *io, | 2706 | extern void ext4_io_submit_init(struct ext4_io_submit *io, |
2717 | struct writeback_control *wbc); | 2707 | struct writeback_control *wbc); |
2718 | extern void ext4_end_io_rsv_work(struct work_struct *work); | 2708 | extern void ext4_end_io_rsv_work(struct work_struct *work); |
2719 | extern void ext4_end_io_unrsv_work(struct work_struct *work); | ||
2720 | extern void ext4_io_submit(struct ext4_io_submit *io); | 2709 | extern void ext4_io_submit(struct ext4_io_submit *io); |
2721 | extern int ext4_bio_write_page(struct ext4_io_submit *io, | 2710 | extern int ext4_bio_write_page(struct ext4_io_submit *io, |
2722 | struct page *page, | 2711 | struct page *page, |