Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

mm/slub.c __slab_free() -> set_freepointer()

Type Parameter Key Value
BUF_SIZE 1 object (-1),1-s32max
BUF_SIZE 1 object (-1),1-s32max
BUF_SIZE 2 fp 1-s32max
BUF_SIZE 2 fp 1-s32max
DATA_SOURCE 0 s $0
DATA_SOURCE 1 object $3
STR_LEN 0 s (-1)
STR_LEN 0 s (-1)
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 s->object_size
NO_OVERFLOW_SIMPLE 0 s->sheaf_capacity
UNITS 1 object unit_byte
UNITS 2 fp unit_byte
HALF_LOCKED2 &n->list_lock
HALF_LOCKED2 flags

mm/slub.c alloc_single_from_new_slab() -> set_freepointer()

Type Parameter Key Value
PARAM_VALUE 0 s 4096-ptr_max
PARAM_VALUE 0 s->cpu_stats 4096-ptr_max
BUF_SIZE 2 fp 1-s32max
CAPPED_DATA 0 s 1
DATA_SOURCE 0 s $0
DATA_SOURCE 1 object r next_slab_obj
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 2 fp unit_byte

mm/slub.c build_detached_freelist() -> set_freepointer()

Type Parameter Key Value
PARAM_VALUE 2 fp 0
CAPPED_DATA 1 object 1
STR_LEN 0 s (-1),8-9,11-29,31-34,38
STR_LEN 0 s (-1),8-9,11-29,31-34,38
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 s->object_size

mm/slub.c build_detached_freelist() -> set_freepointer()

Type Parameter Key Value
PARAM_VALUE 0 s 4096-ptr_max
CAPPED_DATA 1 object 1
STR_LEN 0 s (-1),8-9,11-29,31-34,38
STR_LEN 0 s (-1),8-9,11-29,31-34,38
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 s->object_size

mm/slub.c build_slab_freelist() -> set_freepointer()

Type Parameter Key Value
PARAM_VALUE 0 s 4096-ptr_max
CAPPED_DATA 0 s 1
DATA_SOURCE 0 s $0
DATA_SOURCE 2 fp r next_slab_obj
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 s->object_size

mm/slub.c build_slab_freelist() -> set_freepointer()

Type Parameter Key Value
PARAM_VALUE 0 s 4096-ptr_max
PARAM_VALUE 2 fp 0
CAPPED_DATA 0 s 1
DATA_SOURCE 0 s $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 s->object_size

mm/slub.c check_object() -> set_freepointer()

Type Parameter Key Value
PARAM_VALUE 0 s 4096-ptr_max
PARAM_VALUE 0 s->offset 0-4294967294
PARAM_VALUE 2 fp 0
BUF_SIZE 1 object (-1),1-s32max
CAPPED_DATA 0 s 1
CAPPED_DATA 0 s->inuse 1
CAPPED_DATA 0 s->offset 1
DATA_SOURCE 0 s $0
DATA_SOURCE 1 object $2
STR_LEN 0 s (-1),1-8,10-12,14,16,20,31,39,45,88,255
STR_LEN 0 s (-1),1-8,10-12,14,16,20,31,39,45,88,255
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 s->object_size
NO_OVERFLOW_SIMPLE 0 s->sheaf_capacity
UNITS 1 object unit_byte
HALF_LOCKED2 &n->list_lock
HALF_LOCKED2 flags

mm/slub.c deferred_percpu_work_fn() -> set_freepointer()

Type Parameter Key Value
PARAM_VALUE 0 s 4096-ptr_max
PARAM_VALUE 2 fp 0
NOCHECK_CALL
UNITS 1 object unit_byte

mm/slub.c free_to_partial_list() -> set_freepointer()

Type Parameter Key Value
PARAM_VALUE 0 s 4096-ptr_max
BUF_SIZE 1 object (-1),1-s32max
BUF_SIZE 1 object (-1),1-s32max
BUF_SIZE 2 fp 1-s32max
BUF_SIZE 2 fp 1-s32max
CAPPED_DATA 0 s 1
CAPPED_DATA 1 object 1
DATA_SOURCE 0 s $0
DATA_SOURCE 1 object $3
STR_LEN 0 s (-1)
STR_LEN 0 s (-1)
BIT_INFO 0 s->flags 0x0,0xffffffff
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 s->object_size
NO_OVERFLOW_SIMPLE 0 s->sheaf_capacity
UNITS 1 object unit_byte
UNITS 2 fp unit_byte
LOCK2 &n->list_lock
LOCK2 flags
TYPE_LOCK (struct kmem_cache_node)->list_lock

mm/slub.c on_freelist() -> set_freepointer()

Type Parameter Key Value
PARAM_VALUE 0 s 4096-ptr_max
PARAM_VALUE 1 object 1-u64max
PARAM_VALUE 2 fp 0
BUF_SIZE 1 object 1-s32max
BUF_SIZE 1 object 1-s32max
CAPPED_DATA 0 s 1
DATA_SOURCE 0 s $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 s->object_size
NO_OVERFLOW_SIMPLE 0 s->sheaf_capacity
UNITS 1 object unit_byte
LOCK2 &n->list_lock
LOCK2 flags
TYPE_LOCK (struct kmem_cache_node)->list_lock

mm/slub.c slab_free_freelist_hook() -> set_freepointer()

Type Parameter Key Value
PARAM_VALUE 0 s 4096-ptr_max
DATA_SOURCE 0 s $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 s->object_size
NO_OVERFLOW_SIMPLE 0 s->sheaf_capacity
HALF_LOCKED2 rcu