Documented in 1 files:

Defined in 2 files as a function:

Referenced in 2 files:

Smatch caller information:

kernel/workqueue.c get_unbound_pool() -> create_worker()

Type Parameter Key Value
PARAM_VALUE 0 pool 4096-ptr_max
PARAM_VALUE 0 pool->attrs 4096-ptr_max
PARAM_VALUE 0 pool->attrs->__pod_cpumask 1-u64max
PARAM_VALUE 0 pool->attrs->affn_scope 7
PARAM_VALUE 0 pool->attrs->cpumask 1-u64max
PARAM_VALUE 0 pool->attrs->ordered 0
PARAM_VALUE 0 pool->busy_hash 4096-ptr_max
PARAM_VALUE 0 pool->cpu (-1)
PARAM_VALUE 0 pool->flags 0,4-u32max
PARAM_VALUE 0 pool->hash_node.next 0
PARAM_VALUE 0 pool->hash_node.pprev 0
PARAM_VALUE 0 pool->id 0-s32max
PARAM_VALUE 0 pool->idle_list.next 4096-ptr_max
PARAM_VALUE 0 pool->idle_list.next->next 4096-ptr_max
PARAM_VALUE 0 pool->idle_list.prev 4096-ptr_max
PARAM_VALUE 0 pool->idle_list.prev->next 4096-ptr_max
PARAM_VALUE 0 pool->idle_list.prev->prev 4096-ptr_max
PARAM_VALUE 0 pool->idle_timer.entry.pprev 0
PARAM_VALUE 0 pool->idle_timer.flags 0-4194302
PARAM_VALUE 0 pool->idle_timer.lockdep_map->name 0-255
PARAM_VALUE 0 pool->lock.magic 3735899821
PARAM_VALUE 0 pool->lock.owner (-1)
PARAM_VALUE 0 pool->lock.owner_cpu u32max
PARAM_VALUE 0 pool->mayday_timer.entry.pprev 0
PARAM_VALUE 0 pool->mayday_timer.flags 0-4194302
PARAM_VALUE 0 pool->mayday_timer.lockdep_map->name 0-255
PARAM_VALUE 0 pool->refcnt 1
PARAM_VALUE 0 pool->worker_ida.xa.xa_flags 33554437
PARAM_VALUE 0 pool->worker_ida.xa.xa_head 0
PARAM_VALUE 0 pool->workers.next 4096-ptr_max
PARAM_VALUE 0 pool->workers.next->next 4096-ptr_max
PARAM_VALUE 0 pool->workers.prev 4096-ptr_max
PARAM_VALUE 0 pool->workers.prev->next 4096-ptr_max
PARAM_VALUE 0 pool->workers.prev->prev 4096-ptr_max
PARAM_VALUE 0 pool->worklist.next 4096-ptr_max
PARAM_VALUE 0 pool->worklist.next->next 4096-ptr_max
PARAM_VALUE 0 pool->worklist.prev 4096-ptr_max
PARAM_VALUE 0 pool->worklist.prev->next 4096-ptr_max
PARAM_VALUE 0 pool->worklist.prev->prev 4096-ptr_max
BUF_SIZE 0 pool 1080
DATA_SOURCE 0 pool r _kmalloc_node_noprof
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &wq_pool_mutex

kernel/workqueue.c maybe_create_worker() -> create_worker()

Type Parameter Key Value
PARAM_VALUE 0 pool 4096-ptr_max
PARAM_VALUE 0 pool->flags 0,2-u32max
PARAM_VALUE 0 pool->lock.dep_map->name 0-255
PARAM_VALUE 0 pool->lock.owner (-1)
PARAM_VALUE 0 pool->lock.owner_cpu u32max
PARAM_VALUE 0 pool->manager 4096-ptr_max
PARAM_VALUE 0 pool->manager->pool 4096-ptr_max
PARAM_VALUE 0 pool->mayday_timer.entry->pprev 4096-ptr_max
PARAM_VALUE 0 pool->mayday_timer.entry.pprev 0,4096-ptr_max
PARAM_VALUE 0 pool->nr_idle 0
PARAM_VALUE 0 pool->nr_running 0
BUF_SIZE 0 pool->manager 128
CAPPED_DATA 0 &pool->mayday_timer 1
DATA_SOURCE 0 pool $0
BIT_INFO 0 pool->flags 0x2,0xffffffffffffffff
LOCK2 &pool->lock

kernel/workqueue.c workqueue_init() -> create_worker()

Type Parameter Key Value
PARAM_VALUE 0 pool 0-18446744073709547519
BUF_SIZE 0 pool (-1),2160
BUF_SIZE 0 pool (-1),2160
CAPPED_DATA 0 pool 1

kernel/workqueue.c workqueue_init() -> create_worker()

Type Parameter Key Value
PARAM_VALUE 0 pool 4096-18446744073709547519
BUF_SIZE 0 pool (-1),2160
BUF_SIZE 0 pool (-1),2160
CAPPED_DATA 0 pool 1
BIT_INFO 0 pool->flags 0x0,0xfffffffb

kernel/workqueue.c workqueue_init() -> create_worker()

Type Parameter Key Value
PARAM_VALUE 0 pool 4096-ptr_max
PARAM_VALUE 0 pool->lock.dep_map->name 0-255
PARAM_VALUE 0 pool->workers.prev->next 4096-ptr_max
PARAM_VALUE 0 pool->workers.prev->next->next 4096-ptr_max

kernel/workqueue.c workqueue_prepare_cpu() -> create_worker()

Type Parameter Key Value
PARAM_VALUE 0 pool 4096-18446744073709547519
PARAM_VALUE 0 pool->nr_workers 0
BUF_SIZE 0 pool (-1),2160
BUF_SIZE 0 pool (-1),2160
CAPPED_DATA 0 pool 1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &cpuhp_state_mutex
HALF_LOCKED2 irq