Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 3 files:

Smatch caller information:

fs/btrfs/free-space-cache.c load_free_space_cache() -> btrfs_init_free_space_ctl()

Type Parameter Key Value
PARAM_VALUE 0 block_group 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->commit_root_sem.dep_map->name 0-255
PARAM_VALUE 0 block_group->fs_info->commit_root_sem.first_waiter->list.next 2212933610777083904
PARAM_VALUE 0 block_group->fs_info->commit_root_sem.first_waiter->list.prev 2212933610777083904
PARAM_VALUE 0 block_group->fs_info->commit_root_sem.first_waiter->type 0-1
PARAM_VALUE 0 block_group->fs_info->commit_root_sem.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 block_group->fs_info->commit_root_sem.wait_lock.owner (-1)
PARAM_VALUE 0 block_group->fs_info->commit_root_sem.wait_lock.owner_cpu u32max
PARAM_VALUE 0 block_group->fs_info->mount_opt 4096-u64max
PARAM_VALUE 1 ctl 2308521935435767808
PARAM_VALUE 1 ctl->block_group 0
DATA_SOURCE 0 block_group $0
NOCHECK_CALL
LOCK2 &caching_ctl->mutex
LOCK2 &fs_info->commit_root_sem
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct btrfs_caching_control)->mutex
TYPE_LOCK (struct btrfs_fs_info)->commit_root_sem

fs/btrfs/tests/btrfs-tests.c btrfs_alloc_dummy_block_group() -> btrfs_init_free_space_ctl()

Type Parameter Key Value
PARAM_VALUE 0 block_group 4096-ptr_max
PARAM_VALUE 0 block_group->bg_list.next 4096-ptr_max
PARAM_VALUE 0 block_group->bg_list.next->next 4096-ptr_max
PARAM_VALUE 0 block_group->bg_list.prev 4096-ptr_max
PARAM_VALUE 0 block_group->bg_list.prev->next 4096-ptr_max
PARAM_VALUE 0 block_group->bg_list.prev->prev 4096-ptr_max
PARAM_VALUE 0 block_group->cluster_list.next 4096-ptr_max
PARAM_VALUE 0 block_group->cluster_list.next->next 4096-ptr_max
PARAM_VALUE 0 block_group->cluster_list.prev 4096-ptr_max
PARAM_VALUE 0 block_group->cluster_list.prev->next 4096-ptr_max
PARAM_VALUE 0 block_group->cluster_list.prev->prev 4096-ptr_max
PARAM_VALUE 0 block_group->free_space_ctl 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->allocated_ebs.next 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->allocated_ebs.prev 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->allocated_roots.next 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->async_submit_wait.head.next 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->async_submit_wait.head.prev 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->balance_ctl 0
PARAM_VALUE 0 block_group->fs_info->balance_mutex.magic 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->balance_wait_q.head.next 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->balance_wait_q.head.prev 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->bg_reclaim_threshold 75
PARAM_VALUE 0 block_group->fs_info->block_group_cache_lock.magic 3736018669
PARAM_VALUE 0 block_group->fs_info->block_group_cache_lock.owner (-1)
PARAM_VALUE 0 block_group->fs_info->block_group_cache_lock.owner_cpu u32max
PARAM_VALUE 0 block_group->fs_info->buffer_tree.xa_flags 33
PARAM_VALUE 0 block_group->fs_info->buffer_tree.xa_head 0
PARAM_VALUE 0 block_group->fs_info->caching_block_groups.next 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->caching_block_groups.prev 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->chunk_block_rsv.full 0
PARAM_VALUE 0 block_group->fs_info->chunk_block_rsv.size 0
PARAM_VALUE 0 block_group->fs_info->chunk_block_rsv.type 3
PARAM_VALUE 0 block_group->fs_info->chunk_mutex.magic 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->cleaner_mutex.magic 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->cleanup_work_sem.magic 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->commit_interval 30
PARAM_VALUE 0 block_group->fs_info->commit_root_sem.magic 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->compress_type 1
PARAM_VALUE 0 block_group->fs_info->csum_size 4
PARAM_VALUE 0 block_group->fs_info->data_alloc_cluster.block_group_list.next 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->data_alloc_cluster.block_group_list.prev 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->dead_roots.next 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->dead_roots.prev 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->defrag_running.counter 0
PARAM_VALUE 0 block_group->fs_info->delalloc_root_mutex.magic 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->delalloc_roots.next 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->delalloc_roots.prev 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->delayed_block_rsv.full 0
PARAM_VALUE 0 block_group->fs_info->delayed_block_rsv.size 0
PARAM_VALUE 0 block_group->fs_info->delayed_block_rsv.type 5
PARAM_VALUE 0 block_group->fs_info->delayed_iputs.next 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->delayed_iputs.prev 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->delayed_iputs_wait.head.next 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->delayed_iputs_wait.head.prev 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->delayed_refs_rsv.full 0
PARAM_VALUE 0 block_group->fs_info->delayed_refs_rsv.size 0
PARAM_VALUE 0 block_group->fs_info->delayed_refs_rsv.type 6
PARAM_VALUE 0 block_group->fs_info->dev_replace.lock_finishing_cancel_unmount.magic 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->dev_replace.replace_wait.head.next 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->dev_replace.replace_wait.head.prev 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->dirty_cowonly_roots.next 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->dirty_cowonly_roots.prev 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->discard_ctl.delay_ms 1000
PARAM_VALUE 0 block_group->fs_info->discard_ctl.iops_limit 1000
PARAM_VALUE 0 block_group->fs_info->discard_ctl.kbps_limit 0
PARAM_VALUE 0 block_group->fs_info->discard_ctl.max_discard_size 67108864
PARAM_VALUE 0 block_group->fs_info->empty_block_rsv.full 0
PARAM_VALUE 0 block_group->fs_info->empty_block_rsv.size 0
PARAM_VALUE 0 block_group->fs_info->empty_block_rsv.type 8
PARAM_VALUE 0 block_group->fs_info->excluded_extents.fs_info 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->excluded_extents.inode 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->excluded_extents.owner 1
PARAM_VALUE 0 block_group->fs_info->fs_devices 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->fs_roots_radix.xa_flags 2080
PARAM_VALUE 0 block_group->fs_info->fs_roots_radix.xa_head 0
PARAM_VALUE 0 block_group->fs_info->fully_remapped_bgs.next 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->fully_remapped_bgs.prev 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->global_block_rsv.full 0
PARAM_VALUE 0 block_group->fs_info->global_block_rsv.size 0
PARAM_VALUE 0 block_group->fs_info->global_block_rsv.type 0
PARAM_VALUE 0 block_group->fs_info->global_root_lock.magic 3736018669
PARAM_VALUE 0 block_group->fs_info->global_root_lock.owner (-1)
PARAM_VALUE 0 block_group->fs_info->global_root_lock.owner_cpu u32max
PARAM_VALUE 0 block_group->fs_info->mapping_tree_lock.magic 3736018669
PARAM_VALUE 0 block_group->fs_info->mapping_tree_lock.owner (-1)
PARAM_VALUE 0 block_group->fs_info->mapping_tree_lock.owner_cpu u32max
PARAM_VALUE 0 block_group->fs_info->max_extent_size 134217728
PARAM_VALUE 0 block_group->fs_info->max_inline 2048
PARAM_VALUE 0 block_group->fs_info->meta_alloc_cluster.block_group_list.next 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->meta_alloc_cluster.block_group_list.prev 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->metadata_ratio 0
PARAM_VALUE 0 block_group->fs_info->nodesize 0-65536
PARAM_VALUE 0 block_group->fs_info->ordered_operations_mutex.magic 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->ordered_roots.next 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->ordered_roots.prev 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->qgroup_drop_subtree_thres 3
PARAM_VALUE 0 block_group->fs_info->qgroup_ioctl_lock.magic 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->qgroup_rescan_lock.magic 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->qgroup_rescan_running 0
PARAM_VALUE 0 block_group->fs_info->qgroup_seq 1
PARAM_VALUE 0 block_group->fs_info->reclaim_bgs.next 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->reclaim_bgs.prev 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->reclaim_bgs_lock.magic 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->reloc_mutex.magic 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->remap_block_rsv.full 0
PARAM_VALUE 0 block_group->fs_info->remap_block_rsv.size 0
PARAM_VALUE 0 block_group->fs_info->remap_block_rsv.type 4
PARAM_VALUE 0 block_group->fs_info->remap_mutex.magic 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->ro_block_group_mutex.magic 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->scrub_lock.first_waiter 0
PARAM_VALUE 0 block_group->fs_info->scrub_lock.magic 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->scrub_pause_req.counter 0
PARAM_VALUE 0 block_group->fs_info->scrub_pause_wait.head.next 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->scrub_pause_wait.head.prev 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->scrubs_paused.counter 0
PARAM_VALUE 0 block_group->fs_info->scrubs_running.counter 0
PARAM_VALUE 0 block_group->fs_info->sectorsize_bits 0-31,u32max
PARAM_VALUE 0 block_group->fs_info->space_info.next 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->space_info.prev 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->subvol_sem.first_waiter 0
PARAM_VALUE 0 block_group->fs_info->subvol_sem.magic 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->super_copy 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->thread_pool_size 0-8
PARAM_VALUE 0 block_group->fs_info->trans_block_rsv.full 0
PARAM_VALUE 0 block_group->fs_info->trans_block_rsv.size 0
PARAM_VALUE 0 block_group->fs_info->trans_block_rsv.type 2
PARAM_VALUE 0 block_group->fs_info->trans_list.next 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->trans_list.prev 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->transaction_blocked_wait.head.next 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->transaction_blocked_wait.head.prev 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->transaction_kthread_mutex.magic 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->transaction_throttle.head.next 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->transaction_throttle.head.prev 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->transaction_wait.head.next 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->transaction_wait.head.prev 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->tree_log_mutex.magic 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->tree_mod_log_lock.magic 3736018669
PARAM_VALUE 0 block_group->fs_info->tree_mod_log_lock.owner (-1)
PARAM_VALUE 0 block_group->fs_info->tree_mod_log_lock.owner_cpu u32max
PARAM_VALUE 0 block_group->fs_info->tree_mod_seq.counter 0
PARAM_VALUE 0 block_group->fs_info->tree_mod_seq_list.next 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->tree_mod_seq_list.prev 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->treelog_rsv.failfast 0
PARAM_VALUE 0 block_group->fs_info->treelog_rsv.full 0
PARAM_VALUE 0 block_group->fs_info->treelog_rsv.reserved 0
PARAM_VALUE 0 block_group->fs_info->treelog_rsv.size 0
PARAM_VALUE 0 block_group->fs_info->treelog_rsv.space_info 0
PARAM_VALUE 0 block_group->fs_info->treelog_rsv.type 7
PARAM_VALUE 0 block_group->fs_info->unused_bg_unpin_mutex.magic 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->unused_bgs.next 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->unused_bgs.prev 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->use_bitmap 5830349486870900736
PARAM_VALUE 0 block_group->fs_info->zone_active_bgs.next 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->zone_active_bgs.prev 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->zoned_data_reloc_io_lock.magic 4096-ptr_max
PARAM_VALUE 0 block_group->fs_info->zoned_meta_io_lock.magic 4096-ptr_max
PARAM_VALUE 0 block_group->full_stripe_len 0-u32max
PARAM_VALUE 0 block_group->list.next 4096-ptr_max
PARAM_VALUE 0 block_group->list.next->next 4096-ptr_max
PARAM_VALUE 0 block_group->list.prev 4096-ptr_max
PARAM_VALUE 0 block_group->list.prev->next 4096-ptr_max
PARAM_VALUE 0 block_group->list.prev->prev 4096-ptr_max
PARAM_VALUE 0 block_group->start 0
PARAM_VALUE 1 ctl 4096-ptr_max
BUF_SIZE 0 block_group 984
BUF_SIZE 0 block_group->free_space_ctl 320
BUF_SIZE 0 block_group->fs_info 11312
BUF_SIZE 1 ctl 320
CAPPED_DATA 0 block_group->fs_info->csums_per_leaf 1
CAPPED_DATA 0 block_group->fs_info->nodesize 1
DATA_SOURCE 0 block_group r _kzalloc_noprof
DATA_SOURCE 1 ctl r _kzalloc_noprof
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 block_group->fs_info->nodesize
NO_OVERFLOW_SIMPLE 0 block_group->fs_info->sectorsize
NO_OVERFLOW_SIMPLE 0 block_group->full_stripe_len

fs/btrfs/block-group.c btrfs_create_block_group() -> btrfs_init_free_space_ctl()

Type Parameter Key Value
PARAM_VALUE 0 block_group 4096-ptr_max
PARAM_VALUE 0 block_group->active_bg_list.next 4096-ptr_max
PARAM_VALUE 0 block_group->active_bg_list.next->next 4096-ptr_max
PARAM_VALUE 0 block_group->active_bg_list.prev 4096-ptr_max
PARAM_VALUE 0 block_group->active_bg_list.prev->next 4096-ptr_max
PARAM_VALUE 0 block_group->active_bg_list.prev->prev 4096-ptr_max
PARAM_VALUE 0 block_group->bg_list.next 4096-ptr_max
PARAM_VALUE 0 block_group->bg_list.next->next 4096-ptr_max
PARAM_VALUE 0 block_group->bg_list.prev 4096-ptr_max
PARAM_VALUE 0 block_group->bg_list.prev->next 4096-ptr_max
PARAM_VALUE 0 block_group->bg_list.prev->prev 4096-ptr_max
PARAM_VALUE 0 block_group->cluster_list.next 4096-ptr_max
PARAM_VALUE 0 block_group->cluster_list.next->next 4096-ptr_max
PARAM_VALUE 0 block_group->cluster_list.prev 4096-ptr_max
PARAM_VALUE 0 block_group->cluster_list.prev->next 4096-ptr_max
PARAM_VALUE 0 block_group->cluster_list.prev->prev 4096-ptr_max
PARAM_VALUE 0 block_group->data_rwsem.count.counter 0
PARAM_VALUE 0 block_group->data_rwsem.dep_map->name 0-255
PARAM_VALUE 0 block_group->data_rwsem.first_waiter 0
PARAM_VALUE 0 block_group->data_rwsem.magic 4096-ptr_max
PARAM_VALUE 0 block_group->data_rwsem.osq.tail.counter 0
PARAM_VALUE 0 block_group->data_rwsem.owner.counter 0
PARAM_VALUE 0 block_group->dirty_list.next 4096-ptr_max
PARAM_VALUE 0 block_group->dirty_list.next->next 4096-ptr_max
PARAM_VALUE 0 block_group->dirty_list.prev 4096-ptr_max
PARAM_VALUE 0 block_group->dirty_list.prev->next 4096-ptr_max
PARAM_VALUE 0 block_group->dirty_list.prev->prev 4096-ptr_max
PARAM_VALUE 0 block_group->discard_index 0
PARAM_VALUE 0 block_group->discard_list.next 4096-ptr_max
PARAM_VALUE 0 block_group->discard_list.next->next 4096-ptr_max
PARAM_VALUE 0 block_group->discard_list.prev 4096-ptr_max
PARAM_VALUE 0 block_group->discard_list.prev->next 4096-ptr_max
PARAM_VALUE 0 block_group->discard_list.prev->prev 4096-ptr_max
PARAM_VALUE 0 block_group->free_space_ctl 1-u64max
PARAM_VALUE 0 block_group->fs_info 4096-ptr_max
PARAM_VALUE 0 block_group->full_stripe_len 0-18446744073709486080
PARAM_VALUE 0 block_group->io_list.next 4096-ptr_max
PARAM_VALUE 0 block_group->io_list.next->next 4096-ptr_max
PARAM_VALUE 0 block_group->io_list.prev 4096-ptr_max
PARAM_VALUE 0 block_group->io_list.prev->next 4096-ptr_max
PARAM_VALUE 0 block_group->io_list.prev->prev 4096-ptr_max
PARAM_VALUE 0 block_group->list.next 4096-ptr_max
PARAM_VALUE 0 block_group->list.next->next 4096-ptr_max
PARAM_VALUE 0 block_group->list.prev 4096-ptr_max
PARAM_VALUE 0 block_group->list.prev->next 4096-ptr_max
PARAM_VALUE 0 block_group->list.prev->prev 4096-ptr_max
PARAM_VALUE 0 block_group->refs.refs.counter 1
PARAM_VALUE 0 block_group->ro_list.next 4096-ptr_max
PARAM_VALUE 0 block_group->ro_list.next->next 4096-ptr_max
PARAM_VALUE 0 block_group->ro_list.prev 4096-ptr_max
PARAM_VALUE 0 block_group->ro_list.prev->next 4096-ptr_max
PARAM_VALUE 0 block_group->ro_list.prev->prev 4096-ptr_max
PARAM_VALUE 1 ctl 1-u64max
DATA_SOURCE 0 block_group r kmem_cache_alloc_noprof
DATA_SOURCE 1 ctl r kmem_cache_alloc_noprof
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &fs_info->chunk_mutex