函数逻辑报告 |
Source Code:kernel\locking\osq_lock.c |
Create Date:2022-07-27 10:51:35 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| 首页 | 函数Tree |
| 注解内核,赢得工具 | 下载SCCT | English |
函数名称:osq_unlock
函数原型:void osq_unlock(struct optimistic_spin_queue *lock)
返回类型:void
参数:
| 类型 | 参数 | 名称 |
|---|---|---|
| struct optimistic_spin_queue * | lock |
| 209 | curr等于We use the value 0 to represent "no CPU", thus the encoded value* will be the CPU number incremented by 1. |
| 221 | node等于this_cpu_ptr( & An MCS like lock especially tailored for optimistic spinning for sleeping* lock implementations (mutex, rwsem, etc)) |
| 223 | 如果next则 |
| 224 | WRITE_ONCE(1 if lock acquired , 1) |
| 225 | 返回 |
| 228 | next等于Get a stable @node->next pointer, either for unlock() or unqueue() purposes.* Can return NULL in case we were the last queued and we updated @lock instead. |
| 229 | 如果next则WRITE_ONCE(1 if lock acquired , 1) |
| 源代码转换工具 开放的插件接口 | X |
|---|---|
| 支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |