Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

kernel/stop_machine.c cpu_stop_queue_two_works() -> __cpu_stop_queue_work()

Type Parameter Key Value
PARAM_VALUE 0 stopper 4096-ptr_max
PARAM_VALUE 0 stopper->enabled 1
PARAM_VALUE 0 stopper->lock.dep_map->name 0-255
PARAM_VALUE 0 stopper->lock.owner_cpu 0
PARAM_VALUE 0 stopper->lock.raw_lock.val.counter 0-s32max
PARAM_VALUE 1 work 8418086867906768896
DATA_SOURCE 1 work $1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &stopper2->lock
LOCK2 irq
LOCK2 0 &stopper->lock
HALF_LOCKED2 &mm->mmap_lock
TYPE_LOCK (struct cpu_stopper)->lock

kernel/stop_machine.c cpu_stop_queue_two_works() -> __cpu_stop_queue_work()

Type Parameter Key Value
PARAM_VALUE 0 stopper 4096-ptr_max
PARAM_VALUE 0 stopper->enabled 1
PARAM_VALUE 0 stopper->lock.owner_cpu 0
PARAM_VALUE 0 stopper->lock.raw_lock.val.counter 0-s32max
PARAM_VALUE 1 work 7357841445332709376
DATA_SOURCE 1 work $3
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &stopper1->lock
LOCK2 irq
LOCK2 0 &stopper->lock
HALF_LOCKED2 &mm->mmap_lock
TYPE_LOCK (struct cpu_stopper)->lock

kernel/stop_machine.c cpu_stop_queue_work() -> __cpu_stop_queue_work()

Type Parameter Key Value
PARAM_VALUE 0 stopper 4096-ptr_max
PARAM_VALUE 0 stopper->enabled 1
PARAM_VALUE 0 stopper->lock.dep_map->name 0-255
PARAM_VALUE 0 stopper->lock.owner_cpu 0
PARAM_VALUE 0 stopper->lock.raw_lock.val.counter 0-s32max
PARAM_VALUE 1 work 4096-ptr_max
BUF_SIZE 1 work->arg (-1),40
DATA_SOURCE 1 work $1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 flags
LOCK2 0 &stopper->lock
HALF_LOCKED2 global &stop_cpus_mutex
TYPE_LOCK (struct cpu_stopper)->lock