]> git.kernelconcepts.de Git - karo-tx-linux.git/commitdiff
ext4: replace ext4_io_submit->io_op with ->io_wbc
authorTejun Heo <tj@kernel.org>
Wed, 22 Jul 2015 03:50:24 +0000 (23:50 -0400)
committerTheodore Ts'o <tytso@mit.edu>
Wed, 22 Jul 2015 03:50:24 +0000 (23:50 -0400)
ext4_io_submit_init() takes the pointer to writeback_control to test
its sync_mode and determine between WRITE and WRITE_SYNC and records
the result in ->io_op.  This patch makes it record the pointer
directly and moves the test to ext4_io_submit().

This doesn't cause any noticeable differences now but having
writeback_control available throughout IO submission path will be
depended upon by the planned cgroup writeback support.

Signed-off-by: Tejun Heo <tj@kernel.org>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
fs/ext4/ext4.h
fs/ext4/page-io.c

index f5e9f04220c1d47814701590c825ccfbbb2c68ff..32071f5c1c2623b4ef242855941e3cd483429a59 100644 (file)
@@ -187,7 +187,7 @@ typedef struct ext4_io_end {
 } ext4_io_end_t;
 
 struct ext4_io_submit {
-       int                     io_op;
+       struct writeback_control *io_wbc;
        struct bio              *io_bio;
        ext4_io_end_t           *io_end;
        sector_t                io_next_block;
index 5602450f03f6497f97a25b954779435e7cce8c1a..a917bfe3e70c420ce137afe1b5ff92e74f1e9f0d 100644 (file)
@@ -357,8 +357,10 @@ void ext4_io_submit(struct ext4_io_submit *io)
        struct bio *bio = io->io_bio;
 
        if (bio) {
+               int io_op = io->io_wbc->sync_mode == WB_SYNC_ALL ?
+                           WRITE_SYNC : WRITE;
                bio_get(io->io_bio);
-               submit_bio(io->io_op, io->io_bio);
+               submit_bio(io_op, io->io_bio);
                bio_put(io->io_bio);
        }
        io->io_bio = NULL;
@@ -367,7 +369,7 @@ void ext4_io_submit(struct ext4_io_submit *io)
 void ext4_io_submit_init(struct ext4_io_submit *io,
                         struct writeback_control *wbc)
 {
-       io->io_op = (wbc->sync_mode == WB_SYNC_ALL ?  WRITE_SYNC : WRITE);
+       io->io_wbc = wbc;
        io->io_bio = NULL;
        io->io_end = NULL;
 }