}
 
 static blk_status_t btree_submit_bio_hook(struct inode *inode, struct bio *bio,
-                                         int mirror_num, unsigned long bio_flags,
-                                         u64 bio_offset)
+                                         int mirror_num,
+                                         unsigned long bio_flags)
 {
        struct btrfs_fs_info *fs_info = btrfs_sb(inode->i_sb);
        int async = check_async_write(BTRFS_I(inode));
 
                                       unsigned long bio_flags)
 {
        blk_status_t ret = 0;
-       struct bio_vec *bvec = bio_last_bvec_all(bio);
-       struct bio_vec bv;
        struct extent_io_tree *tree = bio->bi_private;
-       u64 start;
-
-       mp_bvec_last_segment(bvec, &bv);
-       start = page_offset(bv.bv_page) + bv.bv_offset;
 
        bio->bi_private = NULL;
 
        if (tree->ops)
                ret = tree->ops->submit_bio_hook(tree->private_data, bio,
-                                          mirror_num, bio_flags, start);
+                                                mirror_num, bio_flags);
        else
                btrfsic_submit_bio(bio);
 
                read_mode, failrec->this_mirror, failrec->in_validation);
 
        status = tree->ops->submit_bio_hook(tree->private_data, bio, failrec->this_mirror,
-                                        failrec->bio_flags, 0);
+                                        failrec->bio_flags);
        if (status) {
                free_io_failure(failure_tree, tree, failrec);
                bio_put(bio);
 
         * pointer will be called unconditionally.
         */
        blk_status_t (*submit_bio_hook)(struct inode *inode, struct bio *bio,
-                                       int mirror_num, unsigned long bio_flags,
-                                       u64 bio_offset);
+                                       int mirror_num, unsigned long bio_flags);
        int (*readpage_end_io_hook)(struct btrfs_io_bio *io_bio, u64 phy_offset,
                                    struct page *page, u64 start, u64 end,
                                    int mirror);
 
  *    c-3) otherwise:                  async submit
  */
 static blk_status_t btrfs_submit_bio_hook(struct inode *inode, struct bio *bio,
-                                int mirror_num, unsigned long bio_flags,
-                                u64 bio_offset)
+                                         int mirror_num,
+                                         unsigned long bio_flags)
+
 {
        struct btrfs_fs_info *fs_info = btrfs_sb(inode->i_sb);
        struct btrfs_root *root = BTRFS_I(inode)->root;