Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 2 files as a function:

Referenced in 21 files:

Smatch caller information:

kernel/panic.c panic_smp_redirect_cpu() -> smp_call_function_single_async()

Type Parameter Key Value
PARAM_VALUE 0 cpu 1-8192
PARAM_VALUE 1 csd 7535460527830347776
PARAM_VALUE 1 csd->func 4129211015606571008
PARAM_VALUE 1 csd->info 4096-ptr_max
DATA_SOURCE 0 cpu $0
STR_LEN 0 cpu (-1),37
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 irq

arch/x86/kernel/cpuid.c cpuid_read_f() -> smp_call_function_single_async()

Type Parameter Key Value
PARAM_VALUE 0 cpu 0-1048575
PARAM_VALUE 1 csd 4096-ptr_max
DATA_SOURCE 0 cpu r iminor

arch/x86/lib/msr-smp.c rdmsrq_safe_on_cpu() -> smp_call_function_single_async()

Type Parameter Key Value
PARAM_VALUE 1 csd 4096-ptr_max
DATA_SOURCE 0 cpu $0
STR_LEN 0 cpu (-1),8-9,11-29,31-34,38
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 cpu 1-8192[c]
UNITS 0 cpu unit_array_size
HALF_LOCKED2 &of->mutex

block/blk-mq.c blk_mq_complete_send_ipi() -> smp_call_function_single_async()

Type Parameter Key Value
PARAM_VALUE 0 cpu 1-s32max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &anv->lock
HALF_LOCKED2 &vq->lock
HALF_LOCKED2 flags

kernel/debug/debug_core.c kgdb_roundup_cpus() -> smp_call_function_single_async()

Type Parameter Key Value
PARAM_VALUE 0 cpu 1-64
CAPPED_DATA 0 cpu 1
DATA_SOURCE 0 cpu r find_next_bit
CONSTRAINT 0 cpu <3035
LOCK2 global &dbg_master_lock
LOCK2 rcu_read
HALF_LOCKED2 flags
HALF_LOCKED2 global &dbg_slave_lock

kernel/time/hrtimer.c __hrtimer_start_range_ns() -> smp_call_function_single_async()

Type Parameter Key Value
PARAM_VALUE 1 csd 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &timer->base->cpu_base->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct hrtimer_cpu_base)->lock

kernel/sched/fair.c __unthrottle_cfs_rq_async() -> smp_call_function_single_async()

Type Parameter Key Value
PARAM_VALUE 1 csd 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 _T->lock
LOCK2 _T->rf.flags
LOCK2 rcu_read
HALF_LOCKED2 irq

kernel/sched/fair.c kick_ilb() -> smp_call_function_single_async()

Type Parameter Key Value
PARAM_VALUE 0 cpu 0-s32max
PARAM_VALUE 1 csd 4096-ptr_max
CAPPED_DATA 0 cpu 1
DATA_SOURCE 0 cpu r find_new_ilb
BIT_INFO 0 cpu 0x0,0x7f
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

kernel/time/clocksource.c __watchdog_check_cpu_skew() -> smp_call_function_single_async()

Type Parameter Key Value
PARAM_VALUE 0 cpu 1-64
PARAM_VALUE 1 csd 4096-ptr_max
CAPPED_DATA 0 cpu 1
DATA_SOURCE 0 cpu $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &watchdog_lock

drivers/clocksource/ingenic-timer.c ingenic_tcu_cevt_cb() -> smp_call_function_single_async()

Type Parameter Key Value
PARAM_VALUE 1 csd 4096-ptr_max
PARAM_VALUE 1 csd->func 4200594045540597760
PARAM_VALUE 1 csd->info 4096-ptr_max
BUF_SIZE 1 csd->info 256
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 flags

drivers/net/ethernet/intel/libeth/xsk.c libeth_xsk_wakeup() -> smp_call_function_single_async()

Type Parameter Key Value
PARAM_VALUE 0 cpu 1-8192
PARAM_VALUE 1 csd 4096-ptr_max
PARAM_VALUE 1 csd->info 4096-ptr_max
CAPPED_DATA 0 cpu 1
DATA_SOURCE 0 cpu $1 [m]
DATA_SOURCE 1 csd $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 rcu_read

net/core/dev.c kick_defer_list_purge() -> smp_call_function_single_async()

Type Parameter Key Value
PARAM_VALUE 0 cpu 1-u16max
PARAM_VALUE 1 csd 4096-ptr_max
CAPPED_DATA 0 cpu 1
DATA_SOURCE 0 cpu $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

net/core/dev.c net_rps_send_ipi() -> smp_call_function_single_async()

Type Parameter Key Value
PARAM_VALUE 0 cpu 0-s32max
PARAM_VALUE 1 csd 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/net/ethernet/cavium/liquidio/lio_core.c liquidio_napi_drv_callback() -> smp_call_function_single_async()

Type Parameter Key Value
PARAM_VALUE 0 cpu s32min-(-1),1-s32max
PARAM_VALUE 1 csd 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags

kernel/sched/core.c hrtick_start() -> smp_call_function_single_async()

Type Parameter Key Value
PARAM_VALUE 1 csd 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 irq