Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

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

Type Parameter Key Value
CAPPED_DATA 0 bitmap_start 1
CAPPED_DATA 0 bitmap_start 1
DATA_SOURCE 2 offset $2
NOSPEC 2 offset
NOSPEC 2 offset
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 2 offset 1-s32max[c]
NO_OVERFLOW_SIMPLE 0 bitmap_start
NO_OVERFLOW_SIMPLE 2 offset
UNITS 0 bitmap_start unit_byte
UNITS 1 unit unit_byte
UNITS 2 offset unit_byte
HALF_LOCKED2 &caching_ctl->mutex
HALF_LOCKED2 &cluster->lock
HALF_LOCKED2 &cluster->refill_lock
HALF_LOCKED2 &ctl->cache_writeout_mutex
HALF_LOCKED2 &ctl->tree_lock
HALF_LOCKED2 &fs_info->commit_root_sem
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &space_info->groups_sem
HALF_LOCKED2 &tmp_ctl.tree_lock

fs/btrfs/free-space-cache.c btrfs_bitmap_cluster() -> offset_to_bit()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 2 offset
UNITS 0 bitmap_start unit_byte
UNITS 1 unit unit_byte
UNITS 2 offset unit_byte
LOCK2 &cluster->lock
LOCK2 &cluster->refill_lock
LOCK2 &ctl->tree_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_free_space_ctl)->tree_lock
TYPE_LOCK (struct btrfs_space_info)->groups_sem

fs/btrfs/free-space-cache.c btrfs_bitmap_set_bits() -> offset_to_bit()

Type Parameter Key Value
DATA_SOURCE 2 offset $2
NOSPEC 2 offset
NOSPEC 2 offset
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 2 offset 1-8589934588[c]
NO_OVERFLOW_SIMPLE 2 offset
UNITS 0 bitmap_start unit_byte
UNITS 1 unit unit_byte
UNITS 2 offset unit_byte
LOCK2 &ctl->tree_lock
HALF_LOCKED2 &cluster->lock
TYPE_LOCK (struct btrfs_free_space_ctl)->tree_lock

fs/btrfs/free-space-cache.c search_bitmap() -> offset_to_bit()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 bitmap_start
NO_OVERFLOW_SIMPLE 2 offset
UNITS 0 bitmap_start unit_byte
UNITS 1 unit unit_byte
UNITS 2 offset unit_byte
HALF_LOCKED2 &caching_ctl->mutex
HALF_LOCKED2 &cluster->lock
HALF_LOCKED2 &cluster->refill_lock
HALF_LOCKED2 &ctl->cache_writeout_mutex
HALF_LOCKED2 &ctl->tree_lock
HALF_LOCKED2 &fs_info->commit_root_sem
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &space_info->groups_sem
HALF_LOCKED2 &tmp_ctl.tree_lock

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

Type Parameter Key Value
CAPPED_DATA 0 bitmap_start 1
CAPPED_DATA 0 bitmap_start 1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 0 bitmap_start unit_byte
UNITS 1 unit unit_byte
UNITS 2 offset unit_byte
HALF_LOCKED2 &cluster->lock
HALF_LOCKED2 &ctl->tree_lock
HALF_LOCKED2 &ctl->tree_lock
TYPE_LOCK (struct btrfs_free_space_ctl)->tree_lock

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

Type Parameter Key Value
CAPPED_DATA 0 bitmap_start 1
CAPPED_DATA 0 bitmap_start 1
NOSPEC 2 offset
NOSPEC 2 offset
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 2 offset 1-s32max[c]
NO_OVERFLOW_SIMPLE 2 offset
UNITS 0 bitmap_start unit_byte
UNITS 1 unit unit_byte
UNITS 2 offset unit_byte
HALF_LOCKED2 &cluster->lock
HALF_LOCKED2 &ctl->tree_lock
HALF_LOCKED2 &ctl->tree_lock
TYPE_LOCK (struct btrfs_free_space_ctl)->tree_lock