]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - fs/btrfs/file-item.c
ext4: disallow changing journal_csum option during remount
[karo-tx-linux.git] / fs / btrfs / file-item.c
index 54c84daec9b515f73f8f1178a1e4ea9485d20e3f..783a94355efd0be2acd75d1a84b3860ec7a28740 100644 (file)
@@ -55,7 +55,7 @@ int btrfs_insert_file_extent(struct btrfs_trans_handle *trans,
                return -ENOMEM;
        file_key.objectid = objectid;
        file_key.offset = pos;
-       btrfs_set_key_type(&file_key, BTRFS_EXTENT_DATA_KEY);
+       file_key.type = BTRFS_EXTENT_DATA_KEY;
 
        path->leave_spinning = 1;
        ret = btrfs_insert_empty_item(trans, root, path, &file_key,
@@ -100,7 +100,7 @@ btrfs_lookup_csum(struct btrfs_trans_handle *trans,
 
        file_key.objectid = BTRFS_EXTENT_CSUM_OBJECTID;
        file_key.offset = bytenr;
-       btrfs_set_key_type(&file_key, BTRFS_EXTENT_CSUM_KEY);
+       file_key.type = BTRFS_EXTENT_CSUM_KEY;
        ret = btrfs_search_slot(trans, root, &file_key, path, 0, cow);
        if (ret < 0)
                goto fail;
@@ -111,7 +111,7 @@ btrfs_lookup_csum(struct btrfs_trans_handle *trans,
                        goto fail;
                path->slots[0]--;
                btrfs_item_key_to_cpu(leaf, &found_key, path->slots[0]);
-               if (btrfs_key_type(&found_key) != BTRFS_EXTENT_CSUM_KEY)
+               if (found_key.type != BTRFS_EXTENT_CSUM_KEY)
                        goto fail;
 
                csum_offset = (bytenr - found_key.offset) >>
@@ -148,7 +148,7 @@ int btrfs_lookup_file_extent(struct btrfs_trans_handle *trans,
 
        file_key.objectid = objectid;
        file_key.offset = offset;
-       btrfs_set_key_type(&file_key, BTRFS_EXTENT_DATA_KEY);
+       file_key.type = BTRFS_EXTENT_DATA_KEY;
        ret = btrfs_search_slot(trans, root, &file_key, path, ins_len, cow);
        return ret;
 }
@@ -299,19 +299,9 @@ int btrfs_lookup_bio_sums(struct btrfs_root *root, struct inode *inode,
 }
 
 int btrfs_lookup_bio_sums_dio(struct btrfs_root *root, struct inode *inode,
-                             struct btrfs_dio_private *dip, struct bio *bio,
-                             u64 offset)
+                             struct bio *bio, u64 offset)
 {
-       int len = (bio->bi_iter.bi_sector << 9) - dip->disk_bytenr;
-       u16 csum_size = btrfs_super_csum_size(root->fs_info->super_copy);
-       int ret;
-
-       len >>= inode->i_sb->s_blocksize_bits;
-       len *= csum_size;
-
-       ret = __btrfs_lookup_bio_sums(root, inode, bio, offset,
-                                     (u32 *)(dip->csum + len), 1);
-       return ret;
+       return __btrfs_lookup_bio_sums(root, inode, bio, offset, NULL, 1);
 }
 
 int btrfs_lookup_csums_range(struct btrfs_root *root, u64 start, u64 end,
@@ -329,8 +319,8 @@ int btrfs_lookup_csums_range(struct btrfs_root *root, u64 start, u64 end,
        u64 csum_end;
        u16 csum_size = btrfs_super_csum_size(root->fs_info->super_copy);
 
-       ASSERT(start == ALIGN(start, root->sectorsize) &&
-              (end + 1) == ALIGN(end + 1, root->sectorsize));
+       ASSERT(IS_ALIGNED(start, root->sectorsize) &&
+              IS_ALIGNED(end + 1, root->sectorsize));
 
        path = btrfs_alloc_path();
        if (!path)
@@ -720,7 +710,7 @@ again:
        bytenr = sums->bytenr + total_bytes;
        file_key.objectid = BTRFS_EXTENT_CSUM_OBJECTID;
        file_key.offset = bytenr;
-       btrfs_set_key_type(&file_key, BTRFS_EXTENT_CSUM_KEY);
+       file_key.type = BTRFS_EXTENT_CSUM_KEY;
 
        item = btrfs_lookup_csum(trans, root, path, bytenr, 1);
        if (!IS_ERR(item)) {
@@ -790,7 +780,7 @@ again:
        csum_offset = (bytenr - found_key.offset) >>
                        root->fs_info->sb->s_blocksize_bits;
 
-       if (btrfs_key_type(&found_key) != BTRFS_EXTENT_CSUM_KEY ||
+       if (found_key.type != BTRFS_EXTENT_CSUM_KEY ||
            found_key.objectid != BTRFS_EXTENT_CSUM_OBJECTID ||
            csum_offset >= MAX_CSUM_ITEMS(root, csum_size)) {
                goto insert;