函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\locking\lockdep.c Create Date:2022-07-27 10:50:18
Last Modify:2020-03-17 14:16:01 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:@depth must not be zero

函数原型:static struct *find_held_lock(struct task_struct *curr, struct lockdep_map *lock, unsigned int depth, int *idx)

返回类型:struct

参数:

类型参数名称
struct task_struct *curr
struct lockdep_map *lock
unsigned intdepth
int *idx
4054  i等于depth减1
4055  hlock等于held_locksi
4056  ret等于hlock
4057  如果match_held_lock(hlock, lock)则转到:out
4060  ret = NULL
4061 i大于等于0循环
4067  如果irq_context不等于irq_context
4068  ret = NULL
4069  退出
4071  如果match_held_lock(hlock, lock)则
4072  ret等于hlock
4073  退出
4077  out :
4078  idx等于i
4079  返回:ret
调用者
名称描述
__lock_set_class
__lock_downgrade
__lock_releaseRemove the lock from the list of currently held locks - this gets* called on mutex_unlock()/spin_unlock*() (or on a failed* mutex_lock_interruptible()).