函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:graph_unlock

函数原型:static inline int graph_unlock(void)

返回类型:int

参数:

110  如果We want to turn all lock-debugging facilities on/off at once,* via a global flag. The reason is that once a single bug has been* detected and reported, there might be cascade of followup bugs* that would just muddy the log. So we report the first one and且非clude/linux/spinlock_up( & lockdep_lock: protects the lockdep graph, the hashes and the* class/list/hash allocators.* This is one of the rare exceptions where it's justified* to use a raw spinlock - we really dont want the spinlock* code to recurse back into the lockdep code...)则
115  返回:DEBUG_LOCKS_WARN_ON(1)
118  lockdep_recursion自减
119  arch_spin_unlock( & lockdep_lock: protects the lockdep graph, the hashes and the* class/list/hash allocators.* This is one of the rare exceptions where it's justified* to use a raw spinlock - we really dont want the spinlock* code to recurse back into the lockdep code...)
120  返回:0
调用者
名称描述
lockdep_register_keyRegister a dynamically allocated key.
register_lock_classRegister a lock's class in the hash-table, if the class is not present* yet. Otherwise we look it up. We cache the result in the lock object* itself, so actual lookup of the hash should be once per lock object.
lockdep_reset_lock_regRemove all information lockdep has about a lock if debug_locks == 1. Free* released data structures from RCU context.
lockdep_unregister_keyUnregister a dynamically allocated key.