Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

kernel/workqueue.c pool_allowed_cpus() -> is_percpu_pool()

Type Parameter Key Value
PARAM_VALUE 0 pool 4096-ptr_max
BUF_SIZE 0 pool (-1),1080,2160
BUF_SIZE 0 pool (-1),1080,2160
BUF_SIZE 0 pool->manager (-1),128
CAPPED_DATA 0 pool 1
DATA_SOURCE 0 pool $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &wq_pool_attach_mutex
HALF_LOCKED2 global &wq_pool_mutex

kernel/workqueue.c put_unbound_pool() -> is_percpu_pool()

Type Parameter Key Value
PARAM_VALUE 0 pool 4096-ptr_max
BUF_SIZE 0 pool (-1),1080
BUF_SIZE 0 pool (-1),1080
DATA_SOURCE 0 pool $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &wq_pool_mutex

kernel/workqueue.c pwq_dec_nr_active() -> is_percpu_pool()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 *irq_flags
HALF_LOCKED2 irq
HALF_LOCKED2 rcu_read
TYPE_LOCK (struct worker_pool)->lock

kernel/workqueue.c pwq_release_workfn() -> is_percpu_pool()

Type Parameter Key Value

kernel/workqueue.c pwq_tryinc_nr_active() -> is_percpu_pool()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 irq
HALF_LOCKED2 irq_flags
HALF_LOCKED2 rcu_read
TYPE_LOCK (struct worker_pool)->lock

kernel/workqueue.c wq_watchdog_timer_fn() -> is_percpu_pool()

Type Parameter Key Value
PARAM_VALUE 0 pool 4096-ptr_max
CAPPED_DATA 0 &pool->worklist 1
DATA_SOURCE 0 pool r idr_get_next
PARAM_COMPARE 0 &pool->worklist != $0->worklist.next
RX_PATH
TASK_NOT_RUNNING