]> Pileus Git - ~andy/linux/blobdiff - fs/ext4/page-io.c
ext4: restructure writeback path
[~andy/linux] / fs / ext4 / page-io.c
index 5929cd0baa2077ebce9a3b0c51d528de9b89ac33..3e5854625126329435dea344d64d1c357fc3f267 100644 (file)
@@ -18,6 +18,7 @@
 #include <linux/pagevec.h>
 #include <linux/mpage.h>
 #include <linux/namei.h>
+#include <linux/aio.h>
 #include <linux/uio.h>
 #include <linux/bio.h>
 #include <linux/workqueue.h>
@@ -359,9 +360,6 @@ static int io_submit_init_bio(struct ext4_io_submit *io,
        bio->bi_bdev = bh->b_bdev;
        bio->bi_end_io = ext4_end_bio;
        bio->bi_private = ext4_get_io_end(io->io_end);
-       if (!io->io_end->size)
-               io->io_end->offset = (bh->b_page->index << PAGE_CACHE_SHIFT)
-                                    + bh_offset(bh);
        io->io_bio = bio;
        io->io_next_block = bh->b_blocknr;
        return 0;
@@ -389,7 +387,6 @@ submit_and_retry:
        io_end = io->io_end;
        if (test_clear_buffer_uninit(bh))
                ext4_set_io_unwritten_flag(inode, io_end);
-       io_end->size += bh->b_size;
        io->io_next_block++;
        return 0;
 }