Defined in 1 files as a function:
Referenced in 1 files:
Smatch caller information:
kernel/workqueue.c bh_worker() -> need_more_worker()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | pool | 4096-ptr_max |
| PREEMPT_ADD | <- disables preempt | ||
| LOCK2 | irq | ||
| LOCK2 | 0 | &pool->lock | |
| TYPE_LOCK | (struct worker_pool)->lock |
kernel/workqueue.c drain_dead_softirq_workfn() -> need_more_worker()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | pool | 4096-ptr_max |
| BIT_INFO | 0 | pool->flags | 0x0,0xfffffff7 |
| PREEMPT_ADD | <- disables preempt | ||
| LOCK2 | irq | ||
| LOCK2 | 0 | &pool->lock | |
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct worker_pool)->lock |
kernel/workqueue.c kick_pool_pick() -> need_more_worker()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | pool | 4096-ptr_max |
| BUF_SIZE | 0 | pool | (-1),2160 |
| BUF_SIZE | 0 | pool | (-1),2160 |
| CAPPED_DATA | 0 | pool | 1 |
| DATA_SOURCE | 0 | pool | $0 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | irq | ||
| HALF_LOCKED2 | rcu_read | ||
| HALF_LOCKED2 | 0 | &pool->lock | |
| TYPE_LOCK | (struct worker_pool)->lock |
kernel/workqueue.c need_to_create_worker() -> need_more_worker()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | pool | 4096-ptr_max |
| BUF_SIZE | 0 | pool->manager | (-1),128 |
| DATA_SOURCE | 0 | pool | $0 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &pool->lock | ||
| HALF_LOCKED2 | global &wq_mayday_lock | ||
| HALF_LOCKED2 | irq | ||
| HALF_LOCKED2 | 0 | &pool->lock |
kernel/workqueue.c worker_thread() -> need_more_worker()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | pool | 4096-ptr_max |
| PREEMPT_ADD | <- disables preempt | ||
| LOCK2 | irq | ||
| LOCK2 | 0 | &pool->lock | |
| TYPE_LOCK | (struct worker_pool)->lock |
kernel/workqueue.c workqueue_softirq_action() -> need_more_worker()
| Type | Parameter | Key | Value |
|---|
kernel/workqueue.c workqueue_softirq_dead() -> need_more_worker()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | global &cpuhp_state_mutex | ||
| HALF_LOCKED2 | irq |