Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

kernel/workqueue.c __cancel_work() -> set_work_pool_and_clear_pending()

Type Parameter Key Value
PARAM_VALUE 1 pool_id 0-s32max
PARAM_VALUE 2 flags 0,32,64-137438953440
DATA_SOURCE 0 work $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 irq_flags

kernel/workqueue.c __queue_work() -> set_work_pool_and_clear_pending()

Type Parameter Key Value
PARAM_VALUE 0 work 4096-ptr_max
PARAM_VALUE 1 pool_id 0-s32max
PARAM_VALUE 2 flags 0,32,64-137438953440
DATA_SOURCE 0 work $2
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 irq
HALF_LOCKED2 irq_flags

kernel/workqueue.c clear_pending_if_disabled() -> set_work_pool_and_clear_pending()

Type Parameter Key Value
PARAM_VALUE 0 work->data 64-u64max
PARAM_VALUE 1 pool_id 0-s32max
PARAM_VALUE 2 flags 0,32,64-137438953440
BUF_SIZE 0 work (-1),80
BUF_SIZE 0 work (-1),80
DATA_SOURCE 0 work $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 irq_flags

kernel/workqueue.c enable_work() -> set_work_pool_and_clear_pending()

Type Parameter Key Value
PARAM_VALUE 1 pool_id 0-s32max
PARAM_VALUE 2 flags 0,32,64-137438953376
DATA_SOURCE 0 work $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 work->data.counter s64min-s64max
LOCK2 irq_flags
HALF_LOCKED2 &dir->i_rwsem
HALF_LOCKED2 global &pci_rescan_remove_lock
HALF_LOCKED2 global &rtnl_mutex

kernel/workqueue.c process_one_work() -> set_work_pool_and_clear_pending()

Type Parameter Key Value
PARAM_VALUE 0 work 4096-ptr_max
PARAM_VALUE 2 flags 0,32
CAPPED_DATA 0 work 1
DATA_SOURCE 0 work $1
PREEMPT_ADD
NOCHECK_CALL
LOCK2 &pool->lock
LOCK2 irq
TYPE_LOCK (struct worker_pool)->lock