]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commitdiff
move more stuff down into bio_copy_user_iov()
authorAl Viro <viro@zeniv.linux.org.uk>
Sun, 24 Sep 2017 16:09:21 +0000 (12:09 -0400)
committerAl Viro <viro@zeniv.linux.org.uk>
Wed, 11 Oct 2017 21:23:40 +0000 (17:23 -0400)
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
block/bio.c
block/blk-map.c

index cd1282db03cb329f50f2845201b905750dc1ebc7..02457c2d4379a27395e76e1c0c607d9b5b3e2697 100644 (file)
@@ -1289,6 +1289,9 @@ struct bio *bio_copy_user_iov(struct request_queue *q,
        if (ret)
                goto cleanup;
 
+       if (map_data)
+               map_data->offset += bio->bi_iter.bi_size;
+
        /*
         * success
         */
@@ -1301,6 +1304,8 @@ struct bio *bio_copy_user_iov(struct request_queue *q,
        iov_iter_advance(iter, bio->bi_iter.bi_size);
 
        bio->bi_private = bmd;
+       if (map_data && map_data->null_mapped)
+               bio_set_flag(bio, BIO_NULL_MAPPED);
        return bio;
 cleanup:
        if (!map_data)
index 891eea11f68e4f7dcbdced868f429b45a645c3ce..c872d62b62fb3d97670431f0d9312058aa1d48b7 100644 (file)
@@ -66,12 +66,6 @@ static int __blk_rq_map_user_iov(struct request *rq,
        bio->bi_opf &= ~REQ_OP_MASK;
        bio->bi_opf |= req_op(rq);
 
-       if (map_data && map_data->null_mapped)
-               bio_set_flag(bio, BIO_NULL_MAPPED);
-
-       if (map_data)
-               map_data->offset += bio->bi_iter.bi_size;
-
        orig_bio = bio;
 
        /*