Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\smp.c Create Date:2022-07-28 10:55:51
Last Modify:2020-03-17 15:12:54 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:smp_call_function_single_async(): Run an asynchronous function on a* specific CPU.*@cpu: The CPU to run on.*@csd: Pre-allocated and setup data structure* Like smp_call_function_single(), but the call is asynchonous and

Proto:int smp_call_function_single_async(int cpu, call_single_data_t *csd)

Type:int

Parameter:

TypeParameterName
intcpu
call_single_data_t *csd
337  err = 0
339  Even if we don't have any preemption, we need preempt disable/enable* to be barriers, so that we don't have things like get_user/put_user* that can cause faults and scheduling migrate into our preempt-protected* region.()
342  If WARN_ON_ONCE(flags & CSD_FLAG_LOCK) Then sd_lock/csd_unlock used to serialize access to per-cpu csd resources* For non-synchronous ipi calls the csd can still be in use by the* previous function call. For multi-cpu calls its even more interesting
345  flags = CSD_FLAG_LOCK
346  smp_wmb()
348  err = Insert a previously allocated call_single_data_t element* for execution on the given CPU. data must already have* ->func, ->info, and ->flags set.
349  preempt_enable()
351  Return err