函数逻辑报告 |
Source Code:kernel\locking\lockdep.c |
Create Date:2022-07-27 10:49:55 |
| Last Modify:2020-03-17 14:16:01 | Copyright©Brick |
| 首页 | 函数Tree |
| 注解内核,赢得工具 | 下载SCCT | English |
函数名称:look_up_lock_class
函数原型:static inline struct lock_class *look_up_lock_class(const struct lockdep_map *lock, unsigned int subclass)
返回类型:struct lock_class
参数:
| 类型 | 参数 | 名称 |
|---|---|---|
| const struct lockdep_map * | lock | |
| unsigned int | subclass |
| 797 | 如果此条件成立可能性小(为编译器优化)(subclass >= MAX_LOCKDEP_SUBCLASSES)则 |
| 799 | printk(r conditions "BUG: looking up invalid subclass: %u\n", subclass) |
| 801 | printk(r conditions "turning off the locking correctness validator.\n") |
| 803 | dump_stack() |
| 804 | 返回:NULL |
| 811 | 如果此条件成立可能性小(为编译器优化)(!key)则返回:NULL |
| 820 | BUILD_BUG_ON - break compile if a condition is true(sizeof(structlock_class_key) > sizeof(structlockdep_map)) |
| 825 | hash_head等于classhashentry(key) |
| 830 | 如果DEBUG_LOCKS_WARN_ON(!已禁止中断())则返回:NULL |
| 839 | WARN_ON_ONCE(name != name && key != & __lockdep_no_validate__) |
| 841 | 返回:class |
| 845 | 返回:NULL |
| 名称 | 描述 |
|---|---|
| register_lock_class | Register 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. |
| match_held_lock | |
| __lockdep_reset_lock | The caller must hold the graph lock. Does not sleep. |
| 源代码转换工具 开放的插件接口 | X |
|---|---|
| 支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |