Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

lib/maple_tree.c mas_dup_build() -> mas_descend()

Type Parameter Key Value
PARAM_VALUE 0 mas 4096-ptr_max
PARAM_VALUE 0 mas->depth 0
PARAM_VALUE 0 mas->end 0
PARAM_VALUE 0 mas->index 0
PARAM_VALUE 0 mas->last 0
PARAM_VALUE 0 mas->mas_flags 0
PARAM_VALUE 0 mas->node_request 0-1
PARAM_VALUE 0 mas->sheaf 0,4096-ptr_max
PARAM_VALUE 0 mas->sheaf->capacity s32min-4294967295
PARAM_VALUE 0 mas->sheaf->node s32min-s32max
PARAM_VALUE 0 mas->sheaf->pfmemalloc 0-1
PARAM_VALUE 0 mas->sheaf->size s32min-4294967295
PARAM_VALUE 0 mas->status 0
PARAM_VALUE 0 mas->tree 4096-ptr_max
PARAM_VALUE 0 mas->tree->ma_root 4097-u64max
CAPPED_DATA 0 mas->tree->ma_root 1
DATA_SOURCE 0 mas $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &(&mas)->tree->ma_lock
HALF_LOCKED2 &(&new_mas)->tree->ma_lock

lib/maple_tree.c mas_dup_build() -> mas_descend()

Type Parameter Key Value
PARAM_VALUE 0 mas 4096-ptr_max
PARAM_VALUE 0 mas->alloc 0
PARAM_VALUE 0 mas->depth 0
PARAM_VALUE 0 mas->end 0
PARAM_VALUE 0 mas->index 0
PARAM_VALUE 0 mas->last 0
PARAM_VALUE 0 mas->ld_seq 0
PARAM_VALUE 0 mas->sheaf 0
PARAM_VALUE 0 mas->status 1
PARAM_VALUE 0 mas->tree 4096-ptr_max
PARAM_VALUE 0 mas->tree->ma_root 0
DATA_SOURCE 0 mas $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &(&mas)->tree->ma_lock
HALF_LOCKED2 &(&new_mas)->tree->ma_lock

lib/maple_tree.c mas_dup_free() -> mas_descend()

Type Parameter Key Value
PARAM_VALUE 0 mas 4096-ptr_max
PARAM_VALUE 0 mas->alloc 0
PARAM_VALUE 0 mas->depth 0
PARAM_VALUE 0 mas->end 0
PARAM_VALUE 0 mas->index 0
PARAM_VALUE 0 mas->last 0
PARAM_VALUE 0 mas->ld_seq 0
PARAM_VALUE 0 mas->sheaf 0
PARAM_VALUE 0 mas->status 1
PARAM_VALUE 0 mas->tree 4096-ptr_max
DATA_SOURCE 0 mas $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &(&new_mas)->tree->ma_lock

lib/maple_tree.c mas_find_child() -> mas_descend()

Type Parameter Key Value
PARAM_VALUE 0 mas 4096-ptr_max
CAPPED_DATA 0 mas->offset 1
DATA_SOURCE 0 mas $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &mt->ma_lock

lib/maple_tree.c mas_next_sibling() -> mas_descend()

Type Parameter Key Value
PARAM_VALUE 0 mas 4096-ptr_max
PARAM_VALUE 0 mas->offset 1-64
CAPPED_DATA 0 mas->offset 1
DATA_SOURCE 0 mas $0
NOCHECK_CALL

lib/maple_tree.c mas_prev_sibling() -> mas_descend()

Type Parameter Key Value
PARAM_VALUE 0 mas 4096-ptr_max
PARAM_VALUE 0 mas->offset 0-62
CAPPED_DATA 0 mas->offset 1
DATA_SOURCE 0 mas $0
NOCHECK_CALL

lib/maple_tree.c mt_validate() -> mas_descend()

Type Parameter Key Value
PARAM_VALUE 0 mas 8277924692161298432
PARAM_VALUE 0 mas->alloc 0
PARAM_VALUE 0 mas->depth 0
PARAM_VALUE 0 mas->end 0
PARAM_VALUE 0 mas->index 0
PARAM_VALUE 0 mas->last 0
PARAM_VALUE 0 mas->offset 0
PARAM_VALUE 0 mas->sheaf 0
PARAM_VALUE 0 mas->status 0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 rcu_read

lib/maple_tree.c mt_validate_nulls() -> mas_descend()

Type Parameter Key Value
PARAM_VALUE 0 mas 8121866581683474432
PARAM_VALUE 0 mas->alloc 0
PARAM_VALUE 0 mas->depth 0
PARAM_VALUE 0 mas->end 0
PARAM_VALUE 0 mas->index 0
PARAM_VALUE 0 mas->last 0
PARAM_VALUE 0 mas->offset 0
PARAM_VALUE 0 mas->sheaf 0
PARAM_VALUE 0 mas->status 0
PARAM_VALUE 0 mas->tree 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 &tsk->signal->exec_update_lock

lib/maple_tree.c push_data_sib() -> mas_descend()

Type Parameter Key Value
PARAM_VALUE 0 mas 670817981034758144,1708897799883399168
DATA_SOURCE 0 mas $2
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 mas->index
NO_OVERFLOW_SIMPLE 0 mas->node_request
HALF_LOCKED2 &mt->ma_lock

lib/maple_tree.c push_data_sib() -> mas_descend()

Type Parameter Key Value
PARAM_VALUE 0 mas 670817981034758144,1708897799883399168
PARAM_VALUE 0 mas->end 1-255
DATA_SOURCE 0 mas $2
PARAM_COMPARE 0 mas->end >= $0->offset
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 mas->index
NO_OVERFLOW_SIMPLE 0 mas->node_request
HALF_LOCKED2 &mt->ma_lock

lib/maple_tree.c rebalance_sib() -> mas_descend()

Type Parameter Key Value
PARAM_VALUE 0 mas 670817981034758144
CAPPED_DATA 0 mas->end 1
DATA_SOURCE 0 mas $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 mas->index
NO_OVERFLOW_SIMPLE 0 mas->node_request
HALF_LOCKED2 &mt->ma_lock

lib/maple_tree.c spanning_sib() -> mas_descend()

Type Parameter Key Value
PARAM_VALUE 0 mas 2515218924618719232
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &mt->ma_lock

lib/maple_tree.c spanning_sib() -> mas_descend()

Type Parameter Key Value
PARAM_VALUE 0 mas 2515218924618719232
PARAM_VALUE 0 mas->offset 0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &mt->ma_lock

lib/maple_tree.c spanning_sib() -> mas_descend()

Type Parameter Key Value
PARAM_VALUE 0 mas 5377377862017204224
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 mas->index
HALF_LOCKED2 &mt->ma_lock