Defined in 1 files as a function:
Referenced in 7 files:
- fs/btrfs/block-group.c
- fs/btrfs/block-rsv.c, line 618
- fs/btrfs/delalloc-space.c
- fs/btrfs/delayed-inode.c, line 586
- fs/btrfs/delayed-ref.c
- fs/btrfs/delayed-ref.h, line 338
- fs/btrfs/inode.c
Smatch caller information:
fs/btrfs/delayed-inode.c btrfs_delayed_inode_reserve_metadata() -> btrfs_calc_metadata_size()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | fs_info | 4096-ptr_max |
| PARAM_VALUE | 1 | num_items | 1 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 0 | fs_info | unit_byte |
| LOCK2 | &node->mutex | ||
| HALF_LOCKED2 | &inode->i_rwsem | ||
| HALF_LOCKED2 | &trans->transaction->cache_write_mutex | ||
| TYPE_LOCK | (struct btrfs_delayed_node)->mutex |
fs/btrfs/inode.c btrfs_evict_inode() -> btrfs_calc_metadata_size()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | fs_info | 4096-ptr_max |
| PARAM_VALUE | 1 | num_items | 1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 0 | fs_info | unit_byte |
fs/btrfs/block-rsv.c btrfs_check_trunc_cache_free_space() -> btrfs_calc_metadata_size()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | fs_info | 4096-ptr_max |
| PARAM_VALUE | 1 | num_items | 1 |
| DATA_SOURCE | 0 | fs_info | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 0 | fs_info | unit_byte |
| HALF_LOCKED2 | &fs_info->cleaner_mutex |
fs/btrfs/block-group.c btrfs_reserve_chunk_metadata() -> btrfs_calc_metadata_size()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | num_items | 1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 0 | fs_info | unit_byte |
| HALF_LOCKED2 | &fs_info->cleaner_mutex | ||
| HALF_LOCKED2 | &sb->s_umount | ||
| HALF_LOCKED2 | global &uuid_mutex |
fs/btrfs/block-group.c check_system_chunk() -> btrfs_calc_metadata_size()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 1 | num_items | r get_profile_num_devs |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 0 | fs_info | unit_byte |
| LOCK2 | &fs_info->chunk_mutex | ||
| HALF_LOCKED2 | &fs_info->ro_block_group_mutex | ||
| TYPE_LOCK | (struct btrfs_fs_info)->chunk_mutex |
fs/btrfs/delalloc-space.c btrfs_calculate_inode_block_rsv_size() -> btrfs_calc_metadata_size()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | fs_info | 4096-ptr_max |
| PARAM_VALUE | 1 | num_items | 1 |
| DATA_SOURCE | 0 | fs_info | $0 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 0 | fs_info | unit_byte |
| LOCK2 | &inode->lock | ||
| TYPE_LOCK | (struct btrfs_inode)->lock |
fs/btrfs/delalloc-space.c calc_inode_reservations() -> btrfs_calc_metadata_size()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | fs_info | 0,4096-ptr_max |
| PARAM_VALUE | 1 | num_items | 1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 0 | fs_info | unit_byte |
| HALF_LOCKED2 | &inode->vfs_inode.i_rwsem |
fs/btrfs/extent-tree.c btrfs_calc_delayed_ref_csum_bytes() -> btrfs_calc_metadata_size()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | fs_info | 4096-ptr_max |
| DATA_SOURCE | 0 | fs_info | $0 |
| DATA_SOURCE | 1 | num_items | $1 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 0 | fs_info | unit_byte |
| HALF_LOCKED2 | &head->mutex |
fs/btrfs/delayed-ref.c btrfs_calc_delayed_ref_csum_bytes() -> btrfs_calc_metadata_size()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | fs_info | 4096-ptr_max |
| DATA_SOURCE | 0 | fs_info | $0 |
| DATA_SOURCE | 1 | num_items | $1 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NO_OVERFLOW_SIMPLE | 0 | fs_info->chunk_root->dirty_log_pages.inode->disk_i_size | |
| NO_OVERFLOW_SIMPLE | 0 | fs_info->chunk_root->dirty_log_pages.inode->vfs_inode.i_size | |
| NO_OVERFLOW_SIMPLE | 0 | fs_info->stripe_root->dirty_log_pages.inode->disk_i_size | |
| NO_OVERFLOW_SIMPLE | 0 | fs_info->stripe_root->dirty_log_pages.inode->vfs_inode.i_size | |
| NO_OVERFLOW_SIMPLE | 0 | fs_info->tree_root->dirty_log_pages.inode->disk_i_size | |
| NO_OVERFLOW_SIMPLE | 0 | fs_info->tree_root->dirty_log_pages.inode->vfs_inode.i_size | |
| UNITS | 0 | fs_info | unit_byte |
| HALF_LOCKED2 | 0 | &fs_info->chunk_mutex | |
| HALF_LOCKED2 | 0 | &fs_info->commit_root_sem | |
| HALF_LOCKED2 | 0 | &fs_info->fs_devices->device_list_mutex | |
| HALF_LOCKED2 | 0 | &fs_info->fs_roots_radix_lock | |
| HALF_LOCKED2 | 0 | &fs_info->qgroup_ioctl_lock | |
| HALF_LOCKED2 | 0 | &fs_info->qgroup_lock | |
| HALF_LOCKED2 | 0 | &fs_info->unused_bg_unpin_mutex |
fs/btrfs/delayed-ref.c btrfs_dec_delayed_refs_rsv_bg_updates() -> btrfs_calc_metadata_size()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | num_items | 1 |
| DATA_SOURCE | 0 | fs_info | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 0 | fs_info | unit_byte |
| HALF_LOCKED2 | &trans->transaction->cache_write_mutex |
fs/btrfs/delayed-ref.c btrfs_inc_delayed_refs_rsv_bg_updates() -> btrfs_calc_metadata_size()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | num_items | 1 |
| DATA_SOURCE | 0 | fs_info | $0 |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 0 | fs_info | unit_byte |
| LOCK2 | &delayed_rsv->lock | ||
| HALF_LOCKED2 | &fs_info->remap_mutex | ||
| HALF_LOCKED2 | 0 | &fs_info->remap_mutex | |
| TYPE_LOCK | (struct btrfs_block_rsv)->lock |