Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

fs/btrfs/ctree.c __push_leaf_left() -> memmove_leaf_data()

Type Parameter Key Value
PARAM_VALUE 0 leaf 4096-ptr_max
PARAM_VALUE 1 dst_offset 0-u32max
PARAM_VALUE 2 src_offset 0-u32max
PARAM_VALUE 3 len 0-s32max,18446744071562067968-u64max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 3 len
UNITS 1 dst_offset unit_byte
UNITS 3 len unit_byte
LOCK2 &left->lock
HALF_LOCKED2 &cow->lock
TYPE_LOCK (struct extent_buffer)->lock

fs/btrfs/ctree.c __push_leaf_right() -> memmove_leaf_data()

Type Parameter Key Value
PARAM_VALUE 0 leaf 4096-ptr_max
PARAM_VALUE 0 leaf->fs_info 4096-ptr_max
PARAM_VALUE 0 leaf->fs_info->btree_inode->i_mapping->host->i_sb->s_export_op->fh_to_dentry 0,8684,447817974243774464,687732489194512384,742201802719268864,868497899885588480,1471448175530500096,2021658383390310400,2445877819203563520,2512819722689847296,2649270699546726400,2761259683714371584,2893332316235677696-s64max
PARAM_VALUE 0 leaf->lock.first_waiter->handoff_set 0-1
PARAM_VALUE 0 leaf->lock.first_waiter->list.next 2624917664208203776
PARAM_VALUE 0 leaf->lock.first_waiter->type 0-1
PARAM_VALUE 0 leaf->lock.osq.tail.counter 0-s32max
PARAM_VALUE 1 dst_offset 0-u32max
PARAM_VALUE 3 len 0-u32max
DATA_SOURCE 0 leaf $4
DATA_SOURCE 2 src_offset r leaf_data_end
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 leaf->len
NO_OVERFLOW_SIMPLE 0 leaf->start
UNITS 1 dst_offset unit_byte
UNITS 2 src_offset unit_byte
UNITS 3 len unit_byte
LOCK2 0 &leaf->lock
HALF_LOCKED2 &cow->lock
TYPE_LOCK (struct extent_buffer)->lock

fs/btrfs/ctree.c btrfs_del_items() -> memmove_leaf_data()

Type Parameter Key Value
PARAM_VALUE 0 leaf 4096-ptr_max
PARAM_VALUE 1 dst_offset 0-u32max
PARAM_VALUE 2 src_offset 0-s32max,18446744071562067968-u64max
PARAM_VALUE 3 len 0-u32max
DATA_SOURCE 2 src_offset r leaf_data_end
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &fs_info->cleaner_mutex
HALF_LOCKED2 &fs_info->qgroup_ioctl_lock
HALF_LOCKED2 &fs_info->subvol_sem
HALF_LOCKED2 &node->mutex

fs/btrfs/ctree.c btrfs_extend_item() -> memmove_leaf_data()

Type Parameter Key Value
PARAM_VALUE 0 leaf 4096-ptr_max
PARAM_VALUE 0 leaf->fs_info 4096-ptr_max
PARAM_VALUE 1 dst_offset 0-u32max
PARAM_VALUE 3 len 0-u32max
DATA_SOURCE 2 src_offset r leaf_data_end
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 1 dst_offset unit_byte
UNITS 2 src_offset unit_byte
UNITS 3 len unit_byte

fs/btrfs/ctree.c btrfs_truncate_item() -> memmove_leaf_data()

Type Parameter Key Value
PARAM_VALUE 0 leaf 4096-ptr_max
PARAM_VALUE 1 dst_offset 0-u32max
PARAM_VALUE 3 len 0-u32max
DATA_SOURCE 2 src_offset r leaf_data_end
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 1 dst_offset unit_byte
UNITS 2 src_offset unit_byte
UNITS 3 len unit_byte

fs/btrfs/ctree.c btrfs_truncate_item() -> memmove_leaf_data()

Type Parameter Key Value
PARAM_VALUE 0 leaf 4096-ptr_max
PARAM_VALUE 1 dst_offset 0-u32max
PARAM_VALUE 3 len 0-u32max
DATA_SOURCE 2 src_offset r leaf_data_end
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 1 dst_offset unit_byte
UNITS 2 src_offset unit_byte
UNITS 3 len unit_byte

fs/btrfs/ctree.c setup_items_for_insert() -> memmove_leaf_data()

Type Parameter Key Value
PARAM_VALUE 0 leaf 4096-ptr_max
PARAM_VALUE 0 leaf->fs_info 4096-ptr_max
PARAM_VALUE 1 dst_offset 0-u32max
PARAM_VALUE 3 len 0-u32max
CAPPED_DATA 2 src_offset 1
DATA_SOURCE 2 src_offset r leaf_data_end
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 1 dst_offset unit_byte
UNITS 2 src_offset unit_byte
UNITS 3 len unit_byte