Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

fs/btrfs/free-space-cache.c btrfs_alloc_from_bitmap() -> bitmap_clear_bits()

Type Parameter Key Value
PARAM_VALUE 0 ctl 4096-ptr_max
PARAM_VALUE 0 ctl->block_group 4096-ptr_max
PARAM_VALUE 0 ctl->block_group->fs_info 4096-ptr_max
PARAM_VALUE 1 info 4096-ptr_max
PARAM_VALUE 1 info->bitmap 1-u64max
PARAM_VALUE 4 update_stat 0
CAPPED_DATA 1 info->offset 1
CAPPED_DATA 3 bytes 1
CAPPED_DATA 3 bytes 1
DATA_SOURCE 1 info $2
DATA_SOURCE 2 offset $4
DATA_SOURCE 3 bytes $3
NOSPEC 3 bytes
NOSPEC 3 bytes
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 3 bytes 0-s32max[c]
NO_OVERFLOW_SIMPLE 1 info->offset
UNITS 2 offset unit_byte
UNITS 3 bytes unit_byte
LOCK2 &cluster->lock
LOCK2 &cluster->refill_lock
LOCK2 &space_info->groups_sem
HALF_LOCKED2 &cluster->block_group->data_rwsem
HALF_LOCKED2 &fs_info->remap_mutex
HALF_LOCKED2 &root->objectid_mutex
TYPE_LOCK (struct btrfs_free_cluster)->lock
TYPE_LOCK (struct btrfs_free_cluster)->refill_lock
TYPE_LOCK (struct btrfs_space_info)->groups_sem

fs/btrfs/free-space-cache.c btrfs_find_space_for_alloc() -> bitmap_clear_bits()

Type Parameter Key Value
PARAM_VALUE 0 ctl 4096-ptr_max
PARAM_VALUE 0 ctl->free_space_offset.rb_node 1-u64max
PARAM_VALUE 0 ctl->tree_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 info 4096-ptr_max
PARAM_VALUE 1 info->bitmap 1-u64max
PARAM_VALUE 4 update_stat 1
CAPPED_DATA 1 info->offset 1
DATA_SOURCE 1 info r find_free_space
DATA_SOURCE 2 offset $1 [m]
DATA_SOURCE 3 bytes $2
NOSPEC 3 bytes
NOSPEC 3 bytes
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 3 bytes 0-s32max[c]
NO_OVERFLOW_SIMPLE 2 offset
UNITS 2 offset unit_byte
UNITS 3 bytes unit_byte
LOCK2 0 &ctl->tree_lock
HALF_LOCKED2 &space_info->groups_sem
TYPE_LOCK (struct btrfs_free_space_ctl)->tree_lock

fs/btrfs/free-space-cache.c copy_free_space_cache() -> bitmap_clear_bits()

Type Parameter Key Value
PARAM_VALUE 0 ctl 2308521935435767808
PARAM_VALUE 0 ctl->block_group 4096-ptr_max
PARAM_VALUE 0 ctl->block_group->fs_info 4096-ptr_max
PARAM_VALUE 0 ctl->cache_writeout_mutex.magic 4096-ptr_max
PARAM_VALUE 0 ctl->free_space_offset.rb_node 4096-ptr_max
PARAM_VALUE 0 ctl->trimming_ranges.next 4096-ptr_max
PARAM_VALUE 0 ctl->trimming_ranges.prev 4096-ptr_max
PARAM_VALUE 1 info 4096-ptr_max
PARAM_VALUE 1 info->bitmap 1-u64max
PARAM_VALUE 4 update_stat 1
CAPPED_DATA 0 ctl->block_group 1
CAPPED_DATA 1 info->offset 1
DATA_SOURCE 0 ctl $0
PREEMPT_ADD
NOCHECK_CALL
UNITS 2 offset unit_byte
UNITS 3 bytes unit_byte
LOCK2 &caching_ctl->mutex
LOCK2 &fs_info->commit_root_sem
LOCK2 &tmp_ctl.tree_lock
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 0 &ctl->tree_lock
TYPE_LOCK (struct btrfs_caching_control)->mutex
TYPE_LOCK (struct btrfs_free_space_ctl)->tree_lock
TYPE_LOCK (struct btrfs_fs_info)->commit_root_sem

fs/btrfs/free-space-cache.c remove_from_bitmap() -> bitmap_clear_bits()

Type Parameter Key Value
PARAM_VALUE 0 ctl 4096-ptr_max
PARAM_VALUE 0 ctl->block_group 4096-ptr_max
PARAM_VALUE 0 ctl->block_group->fs_info 4096-ptr_max
PARAM_VALUE 0 ctl->tree_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 info 4096-ptr_max
PARAM_VALUE 1 info->bitmap 1-u64max
PARAM_VALUE 4 update_stat 1
CAPPED_DATA 0 ctl->block_group 1
CAPPED_DATA 1 info->offset 1
CAPPED_DATA 2 offset 1
CAPPED_DATA 2 offset 1
CAPPED_DATA 3 bytes 1
CAPPED_DATA 3 bytes 1
DATA_SOURCE 0 ctl $0
DATA_SOURCE 1 info $1 [m]
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 2 offset unit_byte
UNITS 3 bytes unit_byte
LOCK2 0 &ctl->tree_lock
TYPE_LOCK (struct btrfs_free_space_ctl)->tree_lock

fs/btrfs/free-space-cache.c steal_from_bitmap_to_end() -> bitmap_clear_bits()

Type Parameter Key Value
PARAM_VALUE 0 ctl 4096-ptr_max
PARAM_VALUE 0 ctl->block_group 4096-ptr_max
PARAM_VALUE 0 ctl->block_group->fs_info 4096-ptr_max
PARAM_VALUE 0 ctl->total_bitmaps 1-s32max
PARAM_VALUE 1 info 4096-ptr_max
CAPPED_DATA 1 info->offset 1
DATA_SOURCE 0 ctl $0
DATA_SOURCE 1 info r tree_search_offset
DATA_SOURCE 4 update_stat $2
FUZZY_MAX 0 ctl->total_bitmaps 1
PARAM_COMPARE 1 info->offset <= $2
PARAM_COMPARE 2 offset >= $1->offset
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 2 offset unit_byte
HALF_LOCKED2 &cluster->lock
HALF_LOCKED2 &ctl->tree_lock
HALF_LOCKED2 0 &ctl->tree_lock
TYPE_LOCK (struct btrfs_free_space_ctl)->tree_lock

fs/btrfs/free-space-cache.c steal_from_bitmap_to_front() -> bitmap_clear_bits()

Type Parameter Key Value
PARAM_VALUE 0 ctl 4096-ptr_max
PARAM_VALUE 0 ctl->block_group 4096-ptr_max
PARAM_VALUE 0 ctl->block_group->fs_info 4096-ptr_max
PARAM_VALUE 0 ctl->total_bitmaps 1-s32max
PARAM_VALUE 1 info 4096-ptr_max
CAPPED_DATA 1 info->offset 1
DATA_SOURCE 0 ctl $0
DATA_SOURCE 1 info r tree_search_offset
DATA_SOURCE 4 update_stat $2
FUZZY_MAX 0 ctl->total_bitmaps 1
PARAM_COMPARE 1 info->offset <= $2
PARAM_COMPARE 2 offset >= $1->offset
NOSPEC 2 offset
NOSPEC 2 offset
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 2 offset 1-s32max[c]
NO_OVERFLOW_SIMPLE 2 offset
UNITS 2 offset unit_byte
HALF_LOCKED2 &cluster->lock
HALF_LOCKED2 &ctl->tree_lock
HALF_LOCKED2 0 &ctl->tree_lock
TYPE_LOCK (struct btrfs_free_space_ctl)->tree_lock

fs/btrfs/free-space-cache.c trim_bitmaps() -> bitmap_clear_bits()

Type Parameter Key Value
PARAM_VALUE 0 ctl 4096-ptr_max
PARAM_VALUE 0 ctl->block_group 4096-ptr_max
PARAM_VALUE 0 ctl->block_group->fs_info 4096-ptr_max
PARAM_VALUE 0 ctl->cache_writeout_mutex.dep_map->name 0-255
PARAM_VALUE 0 ctl->cache_writeout_mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 ctl->cache_writeout_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 ctl->cache_writeout_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 ctl->cache_writeout_mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 ctl->cache_writeout_mutex.wait_lock.owner (-1)
PARAM_VALUE 0 ctl->cache_writeout_mutex.wait_lock.owner_cpu u32max
PARAM_VALUE 0 ctl->tree_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 info 4096-ptr_max
PARAM_VALUE 1 info->offset 0-18446744073709551614
PARAM_VALUE 2 offset 0-18446744073709551614
PARAM_VALUE 3 bytes 1-u64max
PARAM_VALUE 4 update_stat 1
CAPPED_DATA 0 ctl->block_group 1
CAPPED_DATA 0 &ctl->cache_writeout_mutex 1
CAPPED_DATA 1 info->offset 1
CAPPED_DATA 2 offset 1
CAPPED_DATA 2 offset 1
CAPPED_DATA 3 bytes 1
CAPPED_DATA 3 bytes 1
DATA_SOURCE 1 info r tree_search_offset
DATA_SOURCE 2 offset $2 [m]
NOSPEC 2 offset
NOSPEC 3 bytes
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
UNITS 2 offset unit_byte
UNITS 3 bytes unit_byte
LOCK2 0 &ctl->cache_writeout_mutex
LOCK2 0 &ctl->tree_lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct btrfs_free_space_ctl)->cache_writeout_mutex
TYPE_LOCK (struct btrfs_free_space_ctl)->tree_lock