函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\sched\membarrier.c Create Date:2022-07-27 10:45:58
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:membarrier_register_private_expedited

函数原型:static int membarrier_register_private_expedited(int flags)

返回类型:int

参数:

类型参数名称
intflags
280  p等于当前进程
281  mm等于内存信息
282  ready_state等于MEMBARRIER_STATE_PRIVATE_EXPEDITED_READY, set_state等于MEMBARRIER_STATE_PRIVATE_EXPEDITED
286  如果flags按位与MEMBARRIER_FLAG_SYNC_CORE
287  如果非IS_ENABLED(CONFIG_FOO) evaluates to 1 if CONFIG_FOO is set to 'y' or 'm',* 0 otherwise.(CONFIG_ARCH_HAS_MEMBARRIER_SYNC_CORE)则返回:负EINVAL
289  ready_state等于MEMBARRIER_STATE_PRIVATE_EXPEDITED_SYNC_CORE_READY
298  如果atomic_read( & membarrier_state)按位与ready_state的值恒等于ready_state则返回:0
300  如果flags按位与MEMBARRIER_FLAG_SYNC_COREset_state或等于MEMBARRIER_STATE_PRIVATE_EXPEDITED_SYNC_CORE
302  atomic_or(set_state, & membarrier_state)
303  ret等于sync_runqueues_membarrier_state(mm)
304  如果ret则返回:ret
306  atomic_or(ready_state, & membarrier_state)
308  返回:0
调用者
名称描述
SYSCALL_DEFINE2sys_membarrier - issue memory barriers on a set of threads*@cmd: Takes command values defined in enum membarrier_cmd