函数逻辑报告 |
Source Code:fs\d_path.c |
Create Date:2022-07-29 10:42:51 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| 首页 | 函数Tree |
| 注解内核,赢得工具 | 下载SCCT | English |
函数名称:prepend_path - Prepend path string to a buffer*@path: the dentry/vfsmount to report*@root: root vfsmnt/dentry*@buffer: pointer to the end of the buffer*@buflen: pointer to buffer length* The function will first try to write out the pathname without taking
函数原型:static int prepend_path(const struct path *path, const struct path *root, char **buffer, int *buflen)
返回类型:int
参数:
| 类型 | 参数 | 名称 |
|---|---|---|
| const struct path * | path | |
| const struct path * | root | |
| char ** | buffer | |
| int * | buflen |
| 82 | error等于0 |
| 83 | m_seq等于0 |
| 88 | restart_mnt : |
| 90 | seq等于0 |
| 92 | restart : |
| 95 | error等于0 |
| 98 | mnt等于real_mount(vfsmnt) |
| 104 | parent等于READ_ONCE(mnt_parent) |
| 106 | 如果dentry不等于 root of the mounted tree 则 |
| 119 | 如果is_mounted(vfsmnt)且非is_anon_ns( containing namespace )则error等于1 |
| 121 | 否则error等于2 |
| 123 | 退出 |
| 125 | parent等于 parent directory |
| 135 | 如果need_seqretry( & rename_lock, seq)则 |
| 139 | done_seqretry( & rename_lock, seq) |
| 144 | m_seq等于1 |
| 145 | 转到:restart_mnt |
| 150 | 如果blen先自减小于0则error等于负ENAMETOOLONG |
| 152 | 否则*bptr先自减等于'/' |
| 157 | 返回:error |
| 名称 | 描述 |
|---|---|
| __d_path | __d_path - return the path of a dentry*@path: the dentry/vfsmount to report*@root: root vfsmnt/dentry*@buf: buffer to return value in*@buflen: buffer length* Convert a dentry into an ASCII path name |
| d_absolute_path | |
| path_with_deleted | same as __d_path but appends "(deleted)" for unlinked files. |
| SYSCALL_DEFINE2 | NOTE! The user-level library version returns a* character pointer |
| 源代码转换工具 开放的插件接口 | X |
|---|---|
| 支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |