[f2fs-dev] [PATCH v2 3/4] f2fs: Split f2fs_write_end_io()
Bart Van Assche via Linux-f2fs-devel <[email protected]>
| Newsgroups | net.sourceforge.lists.linux-f2fs-devel |
|---|---|
| Message-ID | <d54744deb09adbdd290b19c2236cfd235df77c55.1781119949.git.bvanassche@acm.org> |
Prepare for running most of the write completion work asynchronously. Reviewed-by: Chao Yu <[email protected]> Signed-off-by: Bart Van Assche <[email protected]> --- fs/f2fs/data.c | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/fs/f2fs/data.c b/fs/f2fs/data.c index 080d69fa8cd1..48c004976c4e 100644 --- a/fs/f2fs/data.c +++ b/fs/f2fs/data.c @@ -349,14 +349,11 @@ static void f2fs_read_end_io(struct bio *bio) f2fs_verify_and_finish_bio(bio, intask); } -static void f2fs_write_end_io(struct bio *bio) +static void f2fs_write_end_bio(struct bio *bio) { - struct f2fs_sb_info *sbi; + struct f2fs_sb_info *sbi = bio->bi_private; struct folio_iter fi; - iostat_update_and_unbind_ctx(bio); - sbi = bio->bi_private; - if (time_to_inject(sbi, FAULT_WRITE_IO)) bio->bi_status = BLK_STS_IOERR; @@ -412,6 +409,13 @@ static void f2fs_write_end_io(struct bio *bio) bio_put(bio); } +static void f2fs_write_end_io(struct bio *bio) +{ + iostat_update_and_unbind_ctx(bio); + + f2fs_write_end_bio(bio); +} + #ifdef CONFIG_BLK_DEV_ZONED static void f2fs_zone_write_end_io(struct bio *bio) { _______________________________________________ Linux-f2fs-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel