Lines Matching refs:root
41 struct btrfs_root *root, in btrfs_insert_file_extent() argument
61 ret = btrfs_insert_empty_item(trans, root, path, &file_key, in btrfs_insert_file_extent()
88 struct btrfs_root *root, in btrfs_lookup_csum() argument
98 u16 csum_size = btrfs_super_csum_size(root->fs_info->super_copy); in btrfs_lookup_csum()
104 ret = btrfs_search_slot(trans, root, &file_key, path, 0, cow); in btrfs_lookup_csum()
118 root->fs_info->sb->s_blocksize_bits; in btrfs_lookup_csum()
140 struct btrfs_root *root, in btrfs_lookup_file_extent() argument
152 ret = btrfs_search_slot(trans, root, &file_key, path, ins_len, cow); in btrfs_lookup_file_extent()
161 static int __btrfs_lookup_bio_sums(struct btrfs_root *root, in __btrfs_lookup_bio_sums() argument
179 u16 csum_size = btrfs_super_csum_size(root->fs_info->super_copy); in __btrfs_lookup_bio_sums()
238 item = btrfs_lookup_csum(NULL, root->fs_info->csum_root, in __btrfs_lookup_bio_sums()
243 if (BTRFS_I(inode)->root->root_key.objectid == in __btrfs_lookup_bio_sums()
249 btrfs_info(BTRFS_I(inode)->root->fs_info, in __btrfs_lookup_bio_sums()
265 root->sectorsize; in __btrfs_lookup_bio_sums()
274 diff = diff / root->sectorsize; in __btrfs_lookup_bio_sums()
295 int btrfs_lookup_bio_sums(struct btrfs_root *root, struct inode *inode, in btrfs_lookup_bio_sums() argument
298 return __btrfs_lookup_bio_sums(root, inode, bio, 0, dst, 0); in btrfs_lookup_bio_sums()
301 int btrfs_lookup_bio_sums_dio(struct btrfs_root *root, struct inode *inode, in btrfs_lookup_bio_sums_dio() argument
304 return __btrfs_lookup_bio_sums(root, inode, bio, offset, NULL, 1); in btrfs_lookup_bio_sums_dio()
307 int btrfs_lookup_csums_range(struct btrfs_root *root, u64 start, u64 end, in btrfs_lookup_csums_range() argument
320 u16 csum_size = btrfs_super_csum_size(root->fs_info->super_copy); in btrfs_lookup_csums_range()
322 ASSERT(IS_ALIGNED(start, root->sectorsize) && in btrfs_lookup_csums_range()
323 IS_ALIGNED(end + 1, root->sectorsize)); in btrfs_lookup_csums_range()
339 ret = btrfs_search_slot(NULL, root, &key, path, 0, 0); in btrfs_lookup_csums_range()
348 root->fs_info->sb->s_blocksize_bits; in btrfs_lookup_csums_range()
358 ret = btrfs_next_leaf(root, path); in btrfs_lookup_csums_range()
376 csum_end = key.offset + (size / csum_size) * root->sectorsize; in btrfs_lookup_csums_range()
387 MAX_ORDERED_SUM_BYTES(root)); in btrfs_lookup_csums_range()
388 sums = kzalloc(btrfs_ordered_sum_size(root, size), in btrfs_lookup_csums_range()
399 root->fs_info->sb->s_blocksize_bits; in btrfs_lookup_csums_range()
401 size >>= root->fs_info->sb->s_blocksize_bits; in btrfs_lookup_csums_range()
408 start += root->sectorsize * size; in btrfs_lookup_csums_range()
426 int btrfs_csum_one_bio(struct btrfs_root *root, struct inode *inode, in btrfs_csum_one_bio() argument
440 sums = kzalloc(btrfs_ordered_sum_size(root, bio->bi_iter.bi_size), in btrfs_csum_one_bio()
472 sums = kzalloc(btrfs_ordered_sum_size(root, bytes_left), in btrfs_csum_one_bio()
516 static noinline void truncate_one_csum(struct btrfs_root *root, in truncate_one_csum() argument
522 u16 csum_size = btrfs_super_csum_size(root->fs_info->super_copy); in truncate_one_csum()
525 u32 blocksize_bits = root->fs_info->sb->s_blocksize_bits; in truncate_one_csum()
529 csum_end <<= root->fs_info->sb->s_blocksize_bits; in truncate_one_csum()
541 btrfs_truncate_item(root, path, new_size, 1); in truncate_one_csum()
553 btrfs_truncate_item(root, path, new_size, 0); in truncate_one_csum()
556 btrfs_set_item_key_safe(root->fs_info, path, key); in truncate_one_csum()
567 struct btrfs_root *root, u64 bytenr, u64 len) in btrfs_del_csums() argument
575 u16 csum_size = btrfs_super_csum_size(root->fs_info->super_copy); in btrfs_del_csums()
576 int blocksize_bits = root->fs_info->sb->s_blocksize_bits; in btrfs_del_csums()
578 root = root->fs_info->csum_root; in btrfs_del_csums()
590 ret = btrfs_search_slot(trans, root, &key, path, -1, 1); in btrfs_del_csums()
620 ret = btrfs_del_item(trans, root, path); in btrfs_del_csums()
663 ret = btrfs_split_item(trans, root, path, &key, offset); in btrfs_del_csums()
665 btrfs_abort_transaction(trans, root, ret); in btrfs_del_csums()
671 truncate_one_csum(root, path, &key, bytenr, len); in btrfs_del_csums()
684 struct btrfs_root *root, in btrfs_csum_file_blocks() argument
702 u16 csum_size = btrfs_super_csum_size(root->fs_info->super_copy); in btrfs_csum_file_blocks()
715 item = btrfs_lookup_csum(trans, root, path, bytenr, 1); in btrfs_csum_file_blocks()
735 MAX_CSUM_ITEMS(root, csum_size)) { in btrfs_csum_file_blocks()
744 ret = btrfs_next_leaf(root, path); in btrfs_csum_file_blocks()
767 ret = btrfs_search_slot(trans, root, &file_key, path, in btrfs_csum_file_blocks()
781 root->fs_info->sb->s_blocksize_bits; in btrfs_csum_file_blocks()
785 csum_offset >= MAX_CSUM_ITEMS(root, csum_size)) { in btrfs_csum_file_blocks()
796 if (btrfs_leaf_free_space(root, leaf) < in btrfs_csum_file_blocks()
800 free_space = btrfs_leaf_free_space(root, leaf) - in btrfs_csum_file_blocks()
803 tmp >>= root->fs_info->sb->s_blocksize_bits; in btrfs_csum_file_blocks()
808 diff = min(diff, MAX_CSUM_ITEMS(root, csum_size) * csum_size); in btrfs_csum_file_blocks()
815 btrfs_extend_item(root, path, diff); in btrfs_csum_file_blocks()
827 tmp >>= root->fs_info->sb->s_blocksize_bits; in btrfs_csum_file_blocks()
829 root->fs_info->sb->s_blocksize_bits); in btrfs_csum_file_blocks()
832 tmp = min(tmp, (u64)MAX_CSUM_ITEMS(root, csum_size)); in btrfs_csum_file_blocks()
838 ret = btrfs_insert_empty_item(trans, root, path, &file_key, in btrfs_csum_file_blocks()
854 root->fs_info->sb->s_blocksize_bits; in btrfs_csum_file_blocks()
862 total_bytes += ins_size * root->sectorsize; in btrfs_csum_file_blocks()
885 struct btrfs_root *root = BTRFS_I(inode)->root; in btrfs_extent_item_to_extent_map() local
894 em->bdev = root->fs_info->fs_devices->latest_bdev; in btrfs_extent_item_to_extent_map()
905 extent_end = ALIGN(extent_start + size, root->sectorsize); in btrfs_extent_item_to_extent_map()
948 btrfs_err(root->fs_info, in btrfs_extent_item_to_extent_map()
951 root->root_key.objectid); in btrfs_extent_item_to_extent_map()