]> git.proxmox.com Git - mirror_ubuntu-zesty-kernel.git/blobdiff - fs/logfs/dev_bdev.c
block: bio: pass bvec table to bio_init()
[mirror_ubuntu-zesty-kernel.git] / fs / logfs / dev_bdev.c
index cc26f8f215f5058b1face75ef5460694bc47fa48..dc8cafeee038bc4227bfe2b685ad99981e6126ec 100644 (file)
 
 #define PAGE_OFS(ofs) ((ofs) & (PAGE_SIZE-1))
 
-static int sync_request(struct page *page, struct block_device *bdev, int rw)
+static int sync_request(struct page *page, struct block_device *bdev, int op)
 {
        struct bio bio;
        struct bio_vec bio_vec;
 
-       bio_init(&bio);
-       bio.bi_max_vecs = 1;
-       bio.bi_io_vec = &bio_vec;
+       bio_init(&bio, &bio_vec, 1);
        bio_vec.bv_page = page;
        bio_vec.bv_len = PAGE_SIZE;
        bio_vec.bv_offset = 0;
@@ -29,8 +27,9 @@ static int sync_request(struct page *page, struct block_device *bdev, int rw)
        bio.bi_bdev = bdev;
        bio.bi_iter.bi_sector = page->index * (PAGE_SIZE >> 9);
        bio.bi_iter.bi_size = PAGE_SIZE;
+       bio_set_op_attrs(&bio, op, 0);
 
-       return submit_bio_wait(rw, &bio);
+       return submit_bio_wait(&bio);
 }
 
 static int bdev_readpage(void *_sb, struct page *page)
@@ -95,8 +94,9 @@ static int __bdev_writeseg(struct super_block *sb, u64 ofs, pgoff_t index,
                        bio->bi_iter.bi_sector = ofs >> 9;
                        bio->bi_private = sb;
                        bio->bi_end_io = writeseg_end_io;
+                       bio_set_op_attrs(bio, REQ_OP_WRITE, 0);
                        atomic_inc(&super->s_pending_writes);
-                       submit_bio(WRITE, bio);
+                       submit_bio(bio);
 
                        ofs += i * PAGE_SIZE;
                        index += i;
@@ -122,8 +122,9 @@ static int __bdev_writeseg(struct super_block *sb, u64 ofs, pgoff_t index,
        bio->bi_iter.bi_sector = ofs >> 9;
        bio->bi_private = sb;
        bio->bi_end_io = writeseg_end_io;
+       bio_set_op_attrs(bio, REQ_OP_WRITE, 0);
        atomic_inc(&super->s_pending_writes);
-       submit_bio(WRITE, bio);
+       submit_bio(bio);
        return 0;
 }
 
@@ -185,8 +186,9 @@ static int do_erase(struct super_block *sb, u64 ofs, pgoff_t index,
                        bio->bi_iter.bi_sector = ofs >> 9;
                        bio->bi_private = sb;
                        bio->bi_end_io = erase_end_io;
+                       bio_set_op_attrs(bio, REQ_OP_WRITE, 0);
                        atomic_inc(&super->s_pending_writes);
-                       submit_bio(WRITE, bio);
+                       submit_bio(bio);
 
                        ofs += i * PAGE_SIZE;
                        index += i;
@@ -206,8 +208,9 @@ static int do_erase(struct super_block *sb, u64 ofs, pgoff_t index,
        bio->bi_iter.bi_sector = ofs >> 9;
        bio->bi_private = sb;
        bio->bi_end_io = erase_end_io;
+       bio_set_op_attrs(bio, REQ_OP_WRITE, 0);
        atomic_inc(&super->s_pending_writes);
-       submit_bio(WRITE, bio);
+       submit_bio(bio);
        return 0;
 }