Commit 5a33911f authored by Tejun Heo's avatar Tejun Heo Committed by Theodore Ts'o

ext4: replace ext4_io_submit->io_op with ->io_wbc

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: default avatarTejun Heo <tj@kernel.org>
Signed-off-by: default avatarTheodore Ts'o <tytso@mit.edu>
parent 27977b69
...@@ -187,7 +187,7 @@ typedef struct ext4_io_end { ...@@ -187,7 +187,7 @@ typedef struct ext4_io_end {
} ext4_io_end_t; } ext4_io_end_t;
struct ext4_io_submit { struct ext4_io_submit {
int io_op; struct writeback_control *io_wbc;
struct bio *io_bio; struct bio *io_bio;
ext4_io_end_t *io_end; ext4_io_end_t *io_end;
sector_t io_next_block; sector_t io_next_block;
......
...@@ -357,8 +357,10 @@ void ext4_io_submit(struct ext4_io_submit *io) ...@@ -357,8 +357,10 @@ void ext4_io_submit(struct ext4_io_submit *io)
struct bio *bio = io->io_bio; struct bio *bio = io->io_bio;
if (bio) { if (bio) {
int io_op = io->io_wbc->sync_mode == WB_SYNC_ALL ?
WRITE_SYNC : WRITE;
bio_get(io->io_bio); 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); bio_put(io->io_bio);
} }
io->io_bio = NULL; io->io_bio = NULL;
...@@ -367,7 +369,7 @@ void ext4_io_submit(struct ext4_io_submit *io) ...@@ -367,7 +369,7 @@ void ext4_io_submit(struct ext4_io_submit *io)
void ext4_io_submit_init(struct ext4_io_submit *io, void ext4_io_submit_init(struct ext4_io_submit *io,
struct writeback_control *wbc) 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_bio = NULL;
io->io_end = NULL; io->io_end = NULL;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment