函数逻辑报告 |
Source Code:kernel\locking\lockdep.c |
Create Date:2022-07-27 10:50:07 |
| Last Modify:2020-03-17 14:16:01 | Copyright©Brick |
| 首页 | 函数Tree |
| 注解内核,赢得工具 | 下载SCCT | English |
函数名称:Initialize a lock instance's lock-class mapping info:
函数原型:void lockdep_init_map(struct lockdep_map *lock, const char *name, struct lock_class_key *key, int subclass)
返回类型:void
参数:
| 类型 | 参数 | 名称 |
|---|---|---|
| struct lockdep_map * | lock | |
| const char * | name | |
| struct lock_class_key * | key | |
| int | subclass |
| 3714 | 以i小于NR_LOCKDEP_CACHING_CLASSES循环class_cache[i] = NULL |
| 3724 | 如果DEBUG_LOCKS_WARN_ON(!name)则 |
| 3725 | name等于"NULL" |
| 3726 | 返回 |
| 3734 | 如果DEBUG_LOCKS_WARN_ON(!key)则返回 |
| 3743 | DEBUG_LOCKS_WARN_ON(1) |
| 3744 | 返回 |
| 3751 | 如果subclass则 |
| 3754 | 如果DEBUG_LOCKS_WARN_ON(lockdep_recursion)则返回 |
| 3757 | raw_local_irq_save(flags) |
| 3758 | lockdep_recursion等于1 |
| 3760 | lockdep_recursion等于0 |
| 3761 | raw_local_irq_restore(flags) |
| 名称 | 描述 |
|---|---|
| bucket_table_alloc | |
| __alloc_bucket_spinlocks | Allocate an array of spinlocks to be accessed by a hash. Two arguments* indicate the number of elements to allocate in the array. max_size* gives the maximum number of elements to allocate. cpu_mult gives* the number of locks per CPU to allocate |
| __init_rwsem | Initialize an rwsem: |
| debug_mutex_init | |
| __lock_set_class | |
| debug_rt_mutex_init | |
| __raw_spin_lock_init | |
| __rwlock_init | |
| __init_srcu_struct | |
| __init_srcu_struct | |
| do_init_timer |
| 源代码转换工具 开放的插件接口 | X |
|---|---|
| 支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |