Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

mm/vmalloc.c __merge_or_add_vmap_area() -> __unlink_va()

Type Parameter Key Value
PARAM_VALUE 0 va 4096-ptr_max
PARAM_VALUE 1 root 3115040583673933824,6033051948811755520
PARAM_VALUE 1 root->rb_node 1-u64max
CAPPED_DATA 0 va->va_start 1
DATA_SOURCE 0 va $0 [m]
DATA_SOURCE 1 root $1
DATA_SOURCE 2 augment $3
STR_LEN 0 va->vm->requested_size (-1)
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 va->vm->requested_size 0,3-u64max[c]
USER_DATA 0 va->vm->requested_size 0-u64max
NO_OVERFLOW_SIMPLE 0 va->va_start
HALF_LOCKED2 global &free_vmap_area_lock

mm/vmalloc.c unlink_va() -> __unlink_va()

Type Parameter Key Value
PARAM_VALUE 0 va 4096-ptr_max
PARAM_VALUE 1 root 4096-ptr_max
PARAM_VALUE 2 augment 0
DATA_SOURCE 0 va $0
DATA_SOURCE 1 root $1
STR_LEN 0 va->vm->requested_size (-1),3,5-6,8,10-23,25,27,31-32
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 va->vm->requested_size 0,3-u64max[c]
USER_DATA 0 va->vm->requested_size 0-u64max
NO_OVERFLOW_SIMPLE 0 va->va_start
LOCK2 &vn->busy.lock
HALF_LOCKED2 global &vmap_purge_lock
TYPE_LOCK (struct rb_list)->lock

mm/vmalloc.c unlink_va_augment() -> __unlink_va()

Type Parameter Key Value
PARAM_VALUE 0 va 4096-ptr_max
PARAM_VALUE 1 root 6033051948811755520
PARAM_VALUE 2 augment 1
CAPPED_DATA 0 va->va_end 1
CAPPED_DATA 0 va->va_start 1
DATA_SOURCE 0 va $0
DATA_SOURCE 1 root $1
STR_LEN 0 va (-1)
STR_LEN 0 va (-1)
STR_LEN 1 root (-1)
STR_LEN 1 root (-1)
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 va->va_start
LOCK2 global &free_vmap_area_lock
HALF_LOCKED2 global &pcpu_alloc_mutex