OSDN Git Service

f2fs: use blkdev_issue_flush in __submit_flush_wait
authorChristoph Hellwig <hch@lst.de>
Tue, 26 Jan 2021 14:52:37 +0000 (15:52 +0100)
committerJens Axboe <axboe@kernel.dk>
Wed, 27 Jan 2021 16:51:48 +0000 (09:51 -0700)
Use the blkdev_issue_flush helper instead of duplicating it.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com>
Reviewed-by: Chaitanya Kulkarni <chaitanya.kulkarni@wdc.com>
Acked-by: Damien Le Moal <damien.lemoal@wdc.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
fs/f2fs/data.c
fs/f2fs/f2fs.h
fs/f2fs/segment.c

index 8cbf031..0cf0c60 100644 (file)
@@ -56,7 +56,8 @@ static inline struct bio *__f2fs_bio_alloc(gfp_t gfp_mask,
        return bio_alloc_bioset(gfp_mask, nr_iovecs, &f2fs_bioset);
 }
 
-struct bio *f2fs_bio_alloc(struct f2fs_sb_info *sbi, int npages, bool noio)
+static struct bio *f2fs_bio_alloc(struct f2fs_sb_info *sbi, int npages,
+               bool noio)
 {
        if (noio) {
                /* No failure on bio allocation */
index bb11759..902bd32 100644 (file)
@@ -3424,7 +3424,6 @@ void f2fs_destroy_checkpoint_caches(void);
  */
 int __init f2fs_init_bioset(void);
 void f2fs_destroy_bioset(void);
-struct bio *f2fs_bio_alloc(struct f2fs_sb_info *sbi, int npages, bool noio);
 int f2fs_init_bio_entry_cache(void);
 void f2fs_destroy_bio_entry_cache(void);
 void f2fs_submit_bio(struct f2fs_sb_info *sbi,
index deca74c..c495f17 100644 (file)
@@ -566,17 +566,7 @@ do_sync:
 static int __submit_flush_wait(struct f2fs_sb_info *sbi,
                                struct block_device *bdev)
 {
-       struct bio *bio;
-       int ret;
-
-       bio = f2fs_bio_alloc(sbi, 0, false);
-       if (!bio)
-               return -ENOMEM;
-
-       bio->bi_opf = REQ_OP_WRITE | REQ_SYNC | REQ_PREFLUSH;
-       bio_set_dev(bio, bdev);
-       ret = submit_bio_wait(bio);
-       bio_put(bio);
+       int ret = blkdev_issue_flush(bdev);
 
        trace_f2fs_issue_flush(bdev, test_opt(sbi, NOBARRIER),
                                test_opt(sbi, FLUSH_MERGE), ret);