函数逻辑报告 |
Source Code:kernel\futex.c |
Create Date:2022-07-27 11:55:06 |
Last Modify:2020-03-17 15:28:32 | Copyright©Brick |
首页 | 函数Tree |
注解内核,赢得工具 | 下载SCCT | English |
函数名称:Process a futex-list entry, check whether it's owned by the* dying task, and do notification if so:
函数原型:static int handle_futex_death(unsigned int __user *uaddr, struct task_struct *curr, bool pi, bool pending_op)
返回类型:int
参数:
类型 | 参数 | 名称 |
---|---|---|
unsigned int __user * | uaddr | |
struct task_struct * | curr | |
bool | pi | |
bool | pending_op |
3560 | retry : |
3561 | 如果Careful: we have to cast the result to the type of the pointer* for sign reasons(uval, uaddr)则返回:负1 |
3595 | 如果pending_op且非pi且非uval则 |
3600 | 如果uval按位与The rest of the robust-futex field is for the TID:的值不等于task_pid_vnr(curr)则返回:0 |
3648 | 如果非pi且uval按位与Are there any waiters for this robust futex:则Wake up waiters matching bitset queued on this futex (uaddr). |
3651 | 返回:0 |
名称 | 描述 |
---|---|
exit_robust_list | Walk curr->robust_list (very carefully, it's a userspace list!)* and mark any locks found there dead, and notify any waiters.* We silently return on any sign of list-walking problem. |
compat_exit_robust_list |
源代码转换工具 开放的插件接口 | X |
---|---|
支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |