函数逻辑报告 |
Source Code:kernel\locking\lockdep.c |
Create Date:2022-07-27 10:50:25 |
| Last Modify:2020-03-17 14:16:01 | Copyright©Brick |
| 首页 | 函数Tree |
| 注解内核,赢得工具 | 下载SCCT | English |
函数名称:Remove the lock from the list of currently held locks - this gets* called on mutex_unlock()/spin_unlock*() (or on a failed* mutex_lock_interruptible()).
函数原型:static int __lock_release(struct lockdep_map *lock, unsigned long ip)
返回类型:int
参数:
| 类型 | 参数 | 名称 |
|---|---|---|
| struct lockdep_map * | lock | |
| unsigned long | ip |
| 4218 | merged等于1 |
| 4225 | depth等于lockdep_depth |
| 4230 | 如果depth小于等于0则 |
| 4231 | print_unlock_imbalance_bug(curr, lock, ip) |
| 4232 | 返回:0 |
| 4239 | hlock等于@depth must not be zero |
| 4240 | 如果非hlock则 |
| 4241 | print_unlock_imbalance_bug(curr, lock, ip) |
| 4242 | 返回:0 |
| 4245 | 如果instance恒等于lock则lock_release_holdtime(hlock) |
| 4250 | 如果references则 |
| 4268 | lockdep_depth等于i |
| 4269 | curr_chain_key等于prev_chain_key |
| 4278 | 如果reacquire_held_locks(curr, depth, i + 1, & merged)则返回:0 |
| 4286 | DEBUG_LOCKS_WARN_ON(lockdep_depth != depth - merged) |
| 4293 | 返回:0 |
| 名称 | 描述 |
|---|---|
| lock_release |
| 源代码转换工具 开放的插件接口 | X |
|---|---|
| 支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |