函数逻辑报告 |
Source Code:fs\dcache.c |
Create Date:2022-07-29 10:37:30 |
| Last Modify:2020-03-18 10:27:32 | Copyright©Brick |
| 首页 | 函数Tree |
| 注解内核,赢得工具 | 下载SCCT | English |
函数名称:收缩高速缓存区
函数原型:void shrink_dcache_parent(struct dentry *parent)
返回类型:void
参数:
| 类型 | 参数 | 名称 |
|---|---|---|
| struct dentry * | parent |
| 1542 | 循环 |
| 1543 | struct select_data data = {start = parent} |
| 1545 | 初始化链表头 |
| 1548 | 如果非链表为空则 |
| 1549 | shrink_dentry_list( & dispose) |
| 1550 | 继续下一循环 |
| 1553 | cond_resched() |
| 1556 | victim = NULL |
| 1558 | 如果victim则 |
| 1560 | 加自旋锁 |
| 1561 | 如果非Lock a dentry from shrink list则 |
| 1562 | 自旋锁解锁 |
| 1564 | 否则 |
| 1566 | parent等于 parent directory |
| 1567 | 如果parent不等于victim则__dput_to_list(parent, & dispose) |
| 1569 | __dentry_kill(victim) |
| 1572 | 如果非链表为空则shrink_dentry_list( & dispose) |
| 名称 | 描述 |
|---|---|
| vfs_rename | vfs_rename - rename a filesystem object*@old_dir: parent of source*@old_dentry: source*@new_dir: parent of destination*@new_dentry: destination*@delegated_inode: returns an inode needing a delegation break*@flags: rename flags |
| do_one_tree | |
| d_invalidate | 废除目录项 |
| simple_fill_super | he inodes created here are not hashed. If you use iunique to generate* unique inode values later for this filesystem, then you must take care* to pass it an appropriate max_reserved value to avoid collisions. |
| shrink_dcache_inode | Try to evict the inode's dentries from the dentry cache. If the inode is a* directory, then it can have at most one dentry; however, that dentry may be* pinned by child dentries, so first try to evict the children too. |
| 源代码转换工具 开放的插件接口 | X |
|---|---|
| 支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |