Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

fs/btrfs/ref-verify.c add_extent_data_ref() -> insert_ref_entry()

Type Parameter Key Value
PARAM_VALUE 0 root 4096-ptr_max
PARAM_VALUE 1 ref 4096-ptr_max
PARAM_VALUE 1 ref->num_refs 0-u32max
PARAM_VALUE 1 ref->parent 0
BUF_SIZE 1 ref 64
DATA_SOURCE 1 ref r _kzalloc_noprof
PREEMPT_ADD <- disables preempt
LOCK2 &fs_info->ref_verify_lock
HALF_LOCKED2 &eb->lock
TYPE_LOCK (struct btrfs_fs_info)->ref_verify_lock

fs/btrfs/ref-verify.c add_shared_data_ref() -> insert_ref_entry()

Type Parameter Key Value
PARAM_VALUE 0 root 4096-ptr_max
PARAM_VALUE 1 ref 4096-ptr_max
PARAM_VALUE 1 ref->num_refs 0-u32max
BUF_SIZE 1 ref 64
DATA_SOURCE 1 ref r _kzalloc_noprof
PREEMPT_ADD <- disables preempt
LOCK2 &fs_info->ref_verify_lock
HALF_LOCKED2 &eb->lock
TYPE_LOCK (struct btrfs_fs_info)->ref_verify_lock

fs/btrfs/ref-verify.c add_tree_block() -> insert_ref_entry()

Type Parameter Key Value
PARAM_VALUE 0 root 4096-ptr_max
PARAM_VALUE 1 ref 4096-ptr_max
PARAM_VALUE 1 ref->num_refs 1
PARAM_VALUE 1 ref->offset 0
PARAM_VALUE 1 ref->owner 0-s32max,18446744071562067968-u64max
BUF_SIZE 1 ref 64
DATA_SOURCE 1 ref r _kmalloc_noprof
BIT_INFO 1 ref->owner 0x0,0xffffffff
PREEMPT_ADD <- disables preempt
LOCK2 &fs_info->ref_verify_lock
HALF_LOCKED2 &eb->lock
TYPE_LOCK (struct btrfs_fs_info)->ref_verify_lock

fs/btrfs/ref-verify.c btrfs_ref_tree_mod() -> insert_ref_entry()

Type Parameter Key Value
PARAM_VALUE 0 root 4096-ptr_max
PARAM_VALUE 1 ref 4096-ptr_max
PARAM_VALUE 1 ref->num_refs 1,u64max
BUF_SIZE 1 ref 64
DATA_SOURCE 1 ref r _kzalloc_noprof
FUZZY_MAX 1 ref->num_refs u64max
BIT_INFO 1 ref->num_refs 0x1,0xffffffffffffffff
HARD_MAX 1 ref->num_refs u64max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 1 ref->offset
NO_OVERFLOW_SIMPLE 1 ref->parent
LOCK2 &fs_info->ref_verify_lock
TYPE_LOCK (struct btrfs_fs_info)->ref_verify_lock