BUG_ON(ret); /* -ENOMEM */
 
                        if (!skip_sum) {
-                               ret = btrfs_csum_one_bio(inode, bio, start, 1);
+                               ret = btrfs_csum_one_bio(BTRFS_I(inode), bio,
+                                                        start, 1);
                                BUG_ON(ret); /* -ENOMEM */
                        }
 
        BUG_ON(ret); /* -ENOMEM */
 
        if (!skip_sum) {
-               ret = btrfs_csum_one_bio(inode, bio, start, 1);
+               ret = btrfs_csum_one_bio(BTRFS_I(inode), bio, start, 1);
                BUG_ON(ret); /* -ENOMEM */
        }
 
 
 int btrfs_csum_file_blocks(struct btrfs_trans_handle *trans,
                           struct btrfs_root *root,
                           struct btrfs_ordered_sum *sums);
-blk_status_t btrfs_csum_one_bio(struct inode *inode, struct bio *bio,
-                      u64 file_start, int contig);
+blk_status_t btrfs_csum_one_bio(struct btrfs_inode *inode, struct bio *bio,
+                               u64 file_start, int contig);
 int btrfs_lookup_csums_range(struct btrfs_root *root, u64 start, u64 end,
                             struct list_head *list, int search_commit);
 void btrfs_extent_item_to_extent_map(struct btrfs_inode *inode,
 
  *              means this bio can contains potentially discontigous bio vecs
  *              so the logical offset of each should be calculated separately.
  */
-blk_status_t btrfs_csum_one_bio(struct inode *vfsinode, struct bio *bio,
+blk_status_t btrfs_csum_one_bio(struct btrfs_inode *inode, struct bio *bio,
                       u64 file_start, int contig)
 {
-       struct btrfs_inode *inode = BTRFS_I(vfsinode);
        struct btrfs_fs_info *fs_info = inode->root->fs_info;
        SHASH_DESC_ON_STACK(shash, fs_info->csum_shash);
        struct btrfs_ordered_sum *sums;
 
        struct inode *inode = private_data;
        blk_status_t ret = 0;
 
-       ret = btrfs_csum_one_bio(inode, bio, 0, 0);
+       ret = btrfs_csum_one_bio(BTRFS_I(inode), bio, 0, 0);
        BUG_ON(ret); /* -ENOMEM */
        return 0;
 }
                                          0, inode, btrfs_submit_bio_start);
                goto out;
        } else if (!skip_sum) {
-               ret = btrfs_csum_one_bio(inode, bio, 0, 0);
+               ret = btrfs_csum_one_bio(BTRFS_I(inode), bio, 0, 0);
                if (ret)
                        goto out;
        }
 {
        struct inode *inode = private_data;
        blk_status_t ret;
-       ret = btrfs_csum_one_bio(inode, bio, offset, 1);
+       ret = btrfs_csum_one_bio(BTRFS_I(inode), bio, offset, 1);
        BUG_ON(ret); /* -ENOMEM */
        return 0;
 }
                 * If we aren't doing async submit, calculate the csum of the
                 * bio now.
                 */
-               ret = btrfs_csum_one_bio(inode, bio, file_offset, 1);
+               ret = btrfs_csum_one_bio(BTRFS_I(inode), bio, file_offset, 1);
                if (ret)
                        goto err;
        } else {