Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

mm/zsmalloc.c __free_zspage() -> class_stat_sub()

Type Parameter Key Value
PARAM_VALUE 0 class 4096-ptr_max
PARAM_VALUE 1 type 12
PARAM_VALUE 2 cnt 0-s32max,18446744071562067968-u64max
DATA_SOURCE 0 class $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 0 &class->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct size_class)->lock

mm/zsmalloc.c async_free_zspage() -> class_stat_sub()

Type Parameter Key Value
PARAM_VALUE 0 class 4096-ptr_max
PARAM_VALUE 1 type 0
PARAM_VALUE 2 cnt 1
DATA_SOURCE 0 class r zspage_class
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 0 &class->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct size_class)->lock

mm/zsmalloc.c remove_zspage() -> class_stat_sub()

Type Parameter Key Value
PARAM_VALUE 0 class 4096-ptr_max
PARAM_VALUE 1 type 0-15
PARAM_VALUE 2 cnt 1
DATA_SOURCE 0 class $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 0 &class->lock
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct size_class)->lock

mm/zsmalloc.c zs_free() -> class_stat_sub()

Type Parameter Key Value
PARAM_VALUE 0 class 4096-ptr_max
PARAM_VALUE 1 type 13
PARAM_VALUE 2 cnt 1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 0 &class->lock
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct size_class)->lock

mm/zsmalloc.c zs_free() -> class_stat_sub()

Type Parameter Key Value
PARAM_VALUE 0 class 4096-ptr_max
PARAM_VALUE 1 type 12
PARAM_VALUE 2 cnt 0-s32max,18446744071562067968-u64max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 0 &class->lock
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct size_class)->lock