Defined in 2 files as a struct:

Defined in 1 files as a function:

Referenced in 3 files:

Smatch caller information:

fs/btrfs/extent-io-tree.c btrfs_clear_extent_bit_changeset() -> split_state()

Type Parameter Key Value
PARAM_VALUE 0 tree 4096-ptr_max
PARAM_VALUE 0 tree->lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 orig 4096-ptr_max
PARAM_VALUE 1 orig->start 0-18446744073709551614
PARAM_VALUE 2 prealloc 4096-ptr_max
PARAM_VALUE 3 split 1-u64max
BUF_SIZE 0 tree (-1),96
BUF_SIZE 0 tree (-1),96
CAPPED_DATA 1 orig->start 1
CAPPED_DATA 3 split 1
CAPPED_DATA 3 split 1
DATA_SOURCE 0 tree $0
DATA_SOURCE 2 prealloc r alloc_extent_state_atomic
DATA_SOURCE 3 split $1 [m]
PARAM_COMPARE 3 split > $1->start
PARAM_COMPARE 3 split > $1->start
NOSPEC 3 split
NOSPEC 3 split
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
USER_DATA 3 split 1-u64max[c]
NO_OVERFLOW_SIMPLE 0 tree->fs_info->nodesize
NO_OVERFLOW_SIMPLE 0 tree->fs_info->sectorsize
NO_OVERFLOW_SIMPLE 0 tree->inode->vfs_inode.i_bytes
UNITS 3 split unit_byte
LOCK2 0 &tree->lock
HALF_LOCKED2 &fs_info->unused_bg_unpin_mutex
HALF_LOCKED2 &inode->vfs_inode.i_rwsem
TYPE_LOCK (struct extent_io_tree)->lock

fs/btrfs/extent-io-tree.c btrfs_convert_extent_bit() -> split_state()

Type Parameter Key Value
PARAM_VALUE 0 tree 4096-ptr_max
PARAM_VALUE 0 tree->lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 orig 4096-ptr_max
PARAM_VALUE 1 orig->start 0-18446744073709551614
PARAM_VALUE 2 prealloc 4096-ptr_max
PARAM_VALUE 3 split 1-u64max
BUF_SIZE 0 tree (-1),96
BUF_SIZE 0 tree (-1),96
CAPPED_DATA 1 orig->start 1
CAPPED_DATA 3 split 1
CAPPED_DATA 3 split 1
DATA_SOURCE 0 tree $0
DATA_SOURCE 2 prealloc r alloc_extent_state_atomic
DATA_SOURCE 3 split $1 [m]
PARAM_COMPARE 3 split > $1->start
PARAM_COMPARE 3 split > $1->start
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
UNITS 3 split unit_byte
LOCK2 0 &tree->lock
HALF_LOCKED2 &log_root_tree->log_mutex
HALF_LOCKED2 &root->log_mutex
TYPE_LOCK (struct extent_io_tree)->lock

fs/btrfs/extent-io-tree.c btrfs_convert_extent_bit() -> split_state()

Type Parameter Key Value
PARAM_VALUE 0 tree 4096-ptr_max
PARAM_VALUE 0 tree->lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 orig 4096-ptr_max
PARAM_VALUE 1 orig->end 1-u64max
PARAM_VALUE 1 orig->start 0-18446744073709551614
PARAM_VALUE 2 prealloc 4096-ptr_max
PARAM_VALUE 3 split 1-u64max
BUF_SIZE 0 tree (-1),96
BUF_SIZE 0 tree (-1),96
CAPPED_DATA 1 orig->start 1
CAPPED_DATA 3 split 1
DATA_SOURCE 0 tree $0
DATA_SOURCE 2 prealloc r alloc_extent_state_atomic
PARAM_COMPARE 1 orig->end > $1->start
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
UNITS 3 split unit_byte
LOCK2 0 &tree->lock
HALF_LOCKED2 &log_root_tree->log_mutex
HALF_LOCKED2 &root->log_mutex
TYPE_LOCK (struct extent_io_tree)->lock

fs/btrfs/extent-io-tree.c set_extent_bit() -> split_state()

Type Parameter Key Value
PARAM_VALUE 0 tree 4096-ptr_max
PARAM_VALUE 0 tree->lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 orig 4096-ptr_max
PARAM_VALUE 1 orig->start 0-18446744073709551614
PARAM_VALUE 2 prealloc 4096-ptr_max
PARAM_VALUE 3 split 1-u64max
BUF_SIZE 0 tree (-1),96
BUF_SIZE 0 tree (-1),96
CAPPED_DATA 1 orig->start 1
CAPPED_DATA 3 split 1
CAPPED_DATA 3 split 1
DATA_SOURCE 0 tree $0
DATA_SOURCE 2 prealloc r alloc_extent_state_atomic
DATA_SOURCE 3 split $1 [m]
PARAM_COMPARE 3 split > $1->start
PARAM_COMPARE 3 split > $1->start
NOSPEC 1 orig->start
NOSPEC 2 prealloc->end
NOSPEC 2 prealloc->start
NOSPEC 3 split
NOSPEC 3 split
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 orig->end 1-9223372036854775807,u64max[u]
USER_DATA 1 orig->start 0-18446744073709551614[c]
USER_DATA 2 prealloc->end 0-s32max[c]
USER_DATA 2 prealloc->start 0-s32max[c]
USER_DATA 3 split 1-u64max[c]
NO_OVERFLOW_SIMPLE 0 tree->fs_info->nodesize
NO_OVERFLOW_SIMPLE 0 tree->fs_info->sectorsize
UNITS 3 split unit_byte
LOCK2 0 &tree->lock
TYPE_LOCK (struct extent_io_tree)->lock

fs/btrfs/extent-io-tree.c set_extent_bit() -> split_state()

Type Parameter Key Value
PARAM_VALUE 0 tree 4096-ptr_max
PARAM_VALUE 0 tree->lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 orig 4096-ptr_max
PARAM_VALUE 1 orig->end 1-u64max
PARAM_VALUE 1 orig->start 0-18446744073709551614
PARAM_VALUE 2 prealloc 4096-ptr_max
PARAM_VALUE 3 split 1-u64max
BUF_SIZE 0 tree (-1),96
BUF_SIZE 0 tree (-1),96
CAPPED_DATA 1 orig->start 1
CAPPED_DATA 3 split 1
DATA_SOURCE 0 tree $0
DATA_SOURCE 2 prealloc r alloc_extent_state_atomic
PARAM_COMPARE 1 orig->end > $1->start
NOSPEC 1 orig->start
NOSPEC 2 prealloc->end
NOSPEC 2 prealloc->start
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 orig->start 0-18446744073709551614[c]
USER_DATA 2 prealloc->end 0-s32max[c]
USER_DATA 2 prealloc->start 0-s32max[c]
USER_DATA 3 split 1-2147483648[c]
NO_OVERFLOW_SIMPLE 0 tree->fs_info->nodesize
NO_OVERFLOW_SIMPLE 0 tree->fs_info->sectorsize
UNITS 3 split unit_byte
LOCK2 0 &tree->lock
TYPE_LOCK (struct extent_io_tree)->lock