函数逻辑报告 | 
Source Code:kernel\locking\mutex.c | 
Create Date:2022-07-27 10:47:35 | 
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick | 
| 首页 | 函数Tree | 
| 注解内核,赢得工具 | 下载SCCT | English | 
函数名称:Trylock variant that retuns the owning task on failure.
函数原型:static inline struct task_struct *__mutex_trylock_or_owner(struct mutex *lock)
返回类型:struct task_struct
参数:
| 类型 | 参数 | 名称 | 
|---|---|---|
| struct mutex * | lock | 
| 111 | owner等于atomic_long_read( & owner) | 
| 112 | 循环 | 
| 113 | flags等于__owner_flags(owner) | 
| 114 | task等于owner按位与MUTEX_FLAGS的反 | 
| 116 | 如果task则 | 
| 117 | 如果此条件成立可能性大(为编译器优化)(task != curr)则退出 | 
| 120 | 如果此条件成立可能性大(为编译器优化)(!(flags & MUTEX_FLAG_PICKUP))则退出 | 
| 123 | flags与等于MUTEX_FLAG_PICKUP的反 | 
| 124 | 否则flags与等于MUTEX_FLAG_HANDOFF的反 | 
| 144 | 返回:__owner_task(owner) | 
| 名称 | 描述 | 
|---|---|
| __mutex_trylock | Actual trylock that will work on any unlocked state. | 
| 源代码转换工具 开放的插件接口  | X | 
|---|---|
| 支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码  |