Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

mm/slub.c __kfree_rcu_sheaf() -> cache_has_sheaves()

Type Parameter Key Value
PARAM_VALUE 0 s 4096-ptr_max
DATA_SOURCE 0 s $0
PREEMPT_ADD <- disables preempt

mm/slub.c __kmem_cache_shutdown() -> cache_has_sheaves()

Type Parameter Key Value
PARAM_VALUE 0 s 4096-ptr_max
DATA_SOURCE 0 s $0
LOCK2 global &slab_mutex

mm/slub.c __pcs_replace_empty_main() -> cache_has_sheaves()

Type Parameter Key Value
PARAM_VALUE 0 s 4096-ptr_max
DATA_SOURCE 0 s $0
RX_PATH
TASK_NOT_RUNNING

mm/slub.c __pcs_replace_full_main() -> cache_has_sheaves()

Type Parameter Key Value
PARAM_VALUE 0 s 4096-ptr_max
CAPPED_DATA 0 s->sheaf_capacity 1
DATA_SOURCE 0 s $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 s->sheaf_capacity

mm/slub.c alloc_from_pcs_bulk() -> cache_has_sheaves()

Type Parameter Key Value
PARAM_VALUE 0 s 4096-ptr_max
CAPPED_DATA 0 s 1
DATA_SOURCE 0 s $0
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &queue->lock
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

mm/slub.c bootstrap_cache_sheaves() -> cache_has_sheaves()

Type Parameter Key Value
PARAM_VALUE 0 s 1-u64max
DATA_SOURCE 0 s $0
LOCK2 irq

mm/slub.c bootstrap_kmalloc_sheaves() -> cache_has_sheaves()

Type Parameter Key Value
PARAM_VALUE 0 s 1-u64max
LOCK2 irq

mm/slub.c flush_all_rcu_sheaves() -> cache_has_sheaves()

Type Parameter Key Value
PARAM_VALUE 0 s 4096-ptr_max
CAPPED_DATA 0 &s->list 1
LOCK2 global &slab_mutex

mm/slub.c flush_cpu_sheaves() -> cache_has_sheaves()

Type Parameter Key Value
HALF_LOCKED2 &pool->lock

mm/slub.c has_pcs_used() -> cache_has_sheaves()

Type Parameter Key Value
DATA_SOURCE 0 s $1
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &flush_lock
HALF_LOCKED2 global &slab_mutex

mm/slub.c init_kmem_cache_nodes() -> cache_has_sheaves()

Type Parameter Key Value
PARAM_VALUE 0 s 4096-ptr_max
PARAM_VALUE 0 s->sheaf_capacity 0-536870907,4294967292-u32max
BUF_SIZE 0 s->cpu_sheaves 88
BUF_SIZE 0 s->name (-1),11,16
CAPPED_DATA 0 s->useroffset 1
DATA_SOURCE 0 s $0
STR_LEN 0 s (-1),10,15
STR_LEN 0 s (-1),10,15
HALF_LOCKED2 global &slab_mutex
HALF_LOCKED2 irq

mm/slub.c kmem_cache_free_bulk() -> cache_has_sheaves()

Type Parameter Key Value
PARAM_VALUE 0 s 1-u64max
DATA_SOURCE 0 s $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 s->object_size

mm/slub.c pcs_destroy() -> cache_has_sheaves()

Type Parameter Key Value
PARAM_VALUE 0 s 4096-ptr_max
BUF_SIZE 0 s->cpu_sheaves (-1),88
BUF_SIZE 0 s->name (-1),11,16
DATA_SOURCE 0 s $0
STR_LEN 0 s (-1),10,15
STR_LEN 0 s (-1),10,15

mm/slub.c slab_mem_going_online_callback() -> cache_has_sheaves()

Type Parameter Key Value
PARAM_VALUE 0 s 4096-ptr_max
CAPPED_DATA 0 &s->list 1
LOCK2 global &slab_mutex

mm/slub.c slub_cpu_dead() -> cache_has_sheaves()

Type Parameter Key Value
PARAM_VALUE 0 s 4096-ptr_max
CAPPED_DATA 0 &s->list 1
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &slab_mutex
HALF_LOCKED2 global &cpuhp_state_mutex
HALF_LOCKED2 irq

mm/slub.c slub_cpu_setup() -> cache_has_sheaves()

Type Parameter Key Value
PARAM_VALUE 0 s 4096-ptr_max
CAPPED_DATA 0 &s->list 1
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &slab_mutex
HALF_LOCKED2 global &cpuhp_state_mutex
HALF_LOCKED2 irq

mm/slab_common.c kvfree_rcu_barrier_on_cache() -> cache_has_sheaves()

Type Parameter Key Value
PARAM_VALUE 0 s 1-u64max
DATA_SOURCE 0 s $0