Lines Matching refs:leaf
1280 struct extent_buffer *leaf = NULL; in btrfs_free_dev_extent() local
1297 leaf = path->nodes[0]; in btrfs_free_dev_extent()
1298 btrfs_item_key_to_cpu(leaf, &found_key, path->slots[0]); in btrfs_free_dev_extent()
1299 extent = btrfs_item_ptr(leaf, path->slots[0], in btrfs_free_dev_extent()
1302 btrfs_dev_extent_length(leaf, extent) < start); in btrfs_free_dev_extent()
1307 leaf = path->nodes[0]; in btrfs_free_dev_extent()
1308 extent = btrfs_item_ptr(leaf, path->slots[0], in btrfs_free_dev_extent()
1315 *dev_extent_len = btrfs_dev_extent_length(leaf, extent); in btrfs_free_dev_extent()
1338 struct extent_buffer *leaf; in btrfs_alloc_dev_extent() local
1355 leaf = path->nodes[0]; in btrfs_alloc_dev_extent()
1356 extent = btrfs_item_ptr(leaf, path->slots[0], in btrfs_alloc_dev_extent()
1358 btrfs_set_dev_extent_chunk_tree(leaf, extent, chunk_tree); in btrfs_alloc_dev_extent()
1359 btrfs_set_dev_extent_chunk_objectid(leaf, extent, chunk_objectid); in btrfs_alloc_dev_extent()
1360 btrfs_set_dev_extent_chunk_offset(leaf, extent, chunk_offset); in btrfs_alloc_dev_extent()
1362 write_extent_buffer(leaf, root->fs_info->chunk_tree_uuid, in btrfs_alloc_dev_extent()
1365 btrfs_set_dev_extent_length(leaf, extent, num_bytes); in btrfs_alloc_dev_extent()
1366 btrfs_mark_buffer_dirty(leaf); in btrfs_alloc_dev_extent()
1440 struct extent_buffer *leaf; in btrfs_add_device() local
1459 leaf = path->nodes[0]; in btrfs_add_device()
1460 dev_item = btrfs_item_ptr(leaf, path->slots[0], struct btrfs_dev_item); in btrfs_add_device()
1462 btrfs_set_device_id(leaf, dev_item, device->devid); in btrfs_add_device()
1463 btrfs_set_device_generation(leaf, dev_item, 0); in btrfs_add_device()
1464 btrfs_set_device_type(leaf, dev_item, device->type); in btrfs_add_device()
1465 btrfs_set_device_io_align(leaf, dev_item, device->io_align); in btrfs_add_device()
1466 btrfs_set_device_io_width(leaf, dev_item, device->io_width); in btrfs_add_device()
1467 btrfs_set_device_sector_size(leaf, dev_item, device->sector_size); in btrfs_add_device()
1468 btrfs_set_device_total_bytes(leaf, dev_item, in btrfs_add_device()
1470 btrfs_set_device_bytes_used(leaf, dev_item, in btrfs_add_device()
1472 btrfs_set_device_group(leaf, dev_item, 0); in btrfs_add_device()
1473 btrfs_set_device_seek_speed(leaf, dev_item, 0); in btrfs_add_device()
1474 btrfs_set_device_bandwidth(leaf, dev_item, 0); in btrfs_add_device()
1475 btrfs_set_device_start_offset(leaf, dev_item, 0); in btrfs_add_device()
1478 write_extent_buffer(leaf, device->uuid, ptr, BTRFS_UUID_SIZE); in btrfs_add_device()
1480 write_extent_buffer(leaf, root->fs_info->fsid, ptr, BTRFS_UUID_SIZE); in btrfs_add_device()
1481 btrfs_mark_buffer_dirty(leaf); in btrfs_add_device()
2028 struct extent_buffer *leaf; in btrfs_finish_sprout() local
2051 leaf = path->nodes[0]; in btrfs_finish_sprout()
2053 if (path->slots[0] >= btrfs_header_nritems(leaf)) { in btrfs_finish_sprout()
2059 leaf = path->nodes[0]; in btrfs_finish_sprout()
2060 btrfs_item_key_to_cpu(leaf, &key, path->slots[0]); in btrfs_finish_sprout()
2065 btrfs_item_key_to_cpu(leaf, &key, path->slots[0]); in btrfs_finish_sprout()
2070 dev_item = btrfs_item_ptr(leaf, path->slots[0], in btrfs_finish_sprout()
2072 devid = btrfs_device_id(leaf, dev_item); in btrfs_finish_sprout()
2073 read_extent_buffer(leaf, dev_uuid, btrfs_device_uuid(dev_item), in btrfs_finish_sprout()
2075 read_extent_buffer(leaf, fs_uuid, btrfs_device_fsid(dev_item), in btrfs_finish_sprout()
2082 btrfs_set_device_generation(leaf, dev_item, in btrfs_finish_sprout()
2084 btrfs_mark_buffer_dirty(leaf); in btrfs_finish_sprout()
2418 struct extent_buffer *leaf; in btrfs_update_device() local
2440 leaf = path->nodes[0]; in btrfs_update_device()
2441 dev_item = btrfs_item_ptr(leaf, path->slots[0], struct btrfs_dev_item); in btrfs_update_device()
2443 btrfs_set_device_id(leaf, dev_item, device->devid); in btrfs_update_device()
2444 btrfs_set_device_type(leaf, dev_item, device->type); in btrfs_update_device()
2445 btrfs_set_device_io_align(leaf, dev_item, device->io_align); in btrfs_update_device()
2446 btrfs_set_device_io_width(leaf, dev_item, device->io_width); in btrfs_update_device()
2447 btrfs_set_device_sector_size(leaf, dev_item, device->sector_size); in btrfs_update_device()
2448 btrfs_set_device_total_bytes(leaf, dev_item, in btrfs_update_device()
2450 btrfs_set_device_bytes_used(leaf, dev_item, in btrfs_update_device()
2452 btrfs_mark_buffer_dirty(leaf); in btrfs_update_device()
2711 struct extent_buffer *leaf; in btrfs_relocate_sys_chunks() local
2742 leaf = path->nodes[0]; in btrfs_relocate_sys_chunks()
2743 btrfs_item_key_to_cpu(leaf, &found_key, path->slots[0]); in btrfs_relocate_sys_chunks()
2745 chunk = btrfs_item_ptr(leaf, path->slots[0], in btrfs_relocate_sys_chunks()
2747 chunk_type = btrfs_chunk_type(leaf, chunk); in btrfs_relocate_sys_chunks()
2784 struct extent_buffer *leaf; in insert_balance_item() local
2807 leaf = path->nodes[0]; in insert_balance_item()
2808 item = btrfs_item_ptr(leaf, path->slots[0], struct btrfs_balance_item); in insert_balance_item()
2810 memset_extent_buffer(leaf, 0, (unsigned long)item, sizeof(*item)); in insert_balance_item()
2813 btrfs_set_balance_data(leaf, item, &disk_bargs); in insert_balance_item()
2815 btrfs_set_balance_meta(leaf, item, &disk_bargs); in insert_balance_item()
2817 btrfs_set_balance_sys(leaf, item, &disk_bargs); in insert_balance_item()
2819 btrfs_set_balance_flags(leaf, item, bctl->flags); in insert_balance_item()
2821 btrfs_mark_buffer_dirty(leaf); in insert_balance_item()
2978 static int chunk_devid_filter(struct extent_buffer *leaf, in chunk_devid_filter() argument
2983 int num_stripes = btrfs_chunk_num_stripes(leaf, chunk); in chunk_devid_filter()
2988 if (btrfs_stripe_devid(leaf, stripe) == bargs->devid) in chunk_devid_filter()
2996 static int chunk_drange_filter(struct extent_buffer *leaf, in chunk_drange_filter() argument
3002 int num_stripes = btrfs_chunk_num_stripes(leaf, chunk); in chunk_drange_filter()
3011 if (btrfs_chunk_type(leaf, chunk) & (BTRFS_BLOCK_GROUP_DUP | in chunk_drange_filter()
3014 } else if (btrfs_chunk_type(leaf, chunk) & BTRFS_BLOCK_GROUP_RAID5) { in chunk_drange_filter()
3016 } else if (btrfs_chunk_type(leaf, chunk) & BTRFS_BLOCK_GROUP_RAID6) { in chunk_drange_filter()
3024 if (btrfs_stripe_devid(leaf, stripe) != bargs->devid) in chunk_drange_filter()
3027 stripe_offset = btrfs_stripe_offset(leaf, stripe); in chunk_drange_filter()
3028 stripe_length = btrfs_chunk_length(leaf, chunk); in chunk_drange_filter()
3040 static int chunk_vrange_filter(struct extent_buffer *leaf, in chunk_vrange_filter() argument
3046 chunk_offset + btrfs_chunk_length(leaf, chunk) > bargs->vstart) in chunk_vrange_filter()
3069 struct extent_buffer *leaf, in should_balance_chunk() argument
3074 u64 chunk_type = btrfs_chunk_type(leaf, chunk); in should_balance_chunk()
3103 chunk_devid_filter(leaf, chunk, bargs)) { in should_balance_chunk()
3109 chunk_drange_filter(leaf, chunk, chunk_offset, bargs)) { in should_balance_chunk()
3115 chunk_vrange_filter(leaf, chunk, chunk_offset, bargs)) { in should_balance_chunk()
3152 struct extent_buffer *leaf; in __btrfs_balance() local
3233 leaf = path->nodes[0]; in __btrfs_balance()
3235 btrfs_item_key_to_cpu(leaf, &found_key, slot); in __btrfs_balance()
3240 chunk = btrfs_item_ptr(leaf, slot, struct btrfs_chunk); in __btrfs_balance()
3248 ret = should_balance_chunk(chunk_root, leaf, chunk, in __btrfs_balance()
3573 struct extent_buffer *leaf; in btrfs_recover_balance() local
3599 leaf = path->nodes[0]; in btrfs_recover_balance()
3600 item = btrfs_item_ptr(leaf, path->slots[0], struct btrfs_balance_item); in btrfs_recover_balance()
3603 bctl->flags = btrfs_balance_flags(leaf, item); in btrfs_recover_balance()
3606 btrfs_balance_data(leaf, item, &disk_bargs); in btrfs_recover_balance()
3608 btrfs_balance_meta(leaf, item, &disk_bargs); in btrfs_recover_balance()
3610 btrfs_balance_sys(leaf, item, &disk_bargs); in btrfs_recover_balance()
6007 struct extent_buffer *leaf, in read_one_chunk() argument
6022 length = btrfs_chunk_length(leaf, chunk); in read_one_chunk()
6039 num_stripes = btrfs_chunk_num_stripes(leaf, chunk); in read_one_chunk()
6055 map->io_width = btrfs_chunk_io_width(leaf, chunk); in read_one_chunk()
6056 map->io_align = btrfs_chunk_io_align(leaf, chunk); in read_one_chunk()
6057 map->sector_size = btrfs_chunk_sector_size(leaf, chunk); in read_one_chunk()
6058 map->stripe_len = btrfs_chunk_stripe_len(leaf, chunk); in read_one_chunk()
6059 map->type = btrfs_chunk_type(leaf, chunk); in read_one_chunk()
6060 map->sub_stripes = btrfs_chunk_sub_stripes(leaf, chunk); in read_one_chunk()
6063 btrfs_stripe_offset_nr(leaf, chunk, i); in read_one_chunk()
6064 devid = btrfs_stripe_devid_nr(leaf, chunk, i); in read_one_chunk()
6065 read_extent_buffer(leaf, uuid, (unsigned long) in read_one_chunk()
6095 static void fill_device_from_item(struct extent_buffer *leaf, in fill_device_from_item() argument
6101 device->devid = btrfs_device_id(leaf, dev_item); in fill_device_from_item()
6102 device->disk_total_bytes = btrfs_device_total_bytes(leaf, dev_item); in fill_device_from_item()
6105 device->bytes_used = btrfs_device_bytes_used(leaf, dev_item); in fill_device_from_item()
6107 device->type = btrfs_device_type(leaf, dev_item); in fill_device_from_item()
6108 device->io_align = btrfs_device_io_align(leaf, dev_item); in fill_device_from_item()
6109 device->io_width = btrfs_device_io_width(leaf, dev_item); in fill_device_from_item()
6110 device->sector_size = btrfs_device_sector_size(leaf, dev_item); in fill_device_from_item()
6115 read_extent_buffer(leaf, device->uuid, ptr, BTRFS_UUID_SIZE); in fill_device_from_item()
6174 struct extent_buffer *leaf, in read_one_dev() argument
6184 devid = btrfs_device_id(leaf, dev_item); in read_one_dev()
6185 read_extent_buffer(leaf, dev_uuid, btrfs_device_uuid(dev_item), in read_one_dev()
6187 read_extent_buffer(leaf, fs_uuid, btrfs_device_fsid(dev_item), in read_one_dev()
6238 btrfs_device_generation(leaf, dev_item)) in read_one_dev()
6242 fill_device_from_item(leaf, dev_item, device); in read_one_dev()
6362 struct extent_buffer *leaf; in btrfs_read_chunk_tree() local
6390 leaf = path->nodes[0]; in btrfs_read_chunk_tree()
6392 if (slot >= btrfs_header_nritems(leaf)) { in btrfs_read_chunk_tree()
6400 btrfs_item_key_to_cpu(leaf, &found_key, slot); in btrfs_read_chunk_tree()
6403 dev_item = btrfs_item_ptr(leaf, slot, in btrfs_read_chunk_tree()
6405 ret = read_one_dev(root, leaf, dev_item); in btrfs_read_chunk_tree()
6410 chunk = btrfs_item_ptr(leaf, slot, struct btrfs_chunk); in btrfs_read_chunk_tree()
6411 ret = read_one_chunk(root, &found_key, leaf, chunk); in btrfs_read_chunk_tree()