| 函数逻辑报告 | 
| Source Code: fs\file.c | Create Date:2022-07-29 10:38:46 | 
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick | 
| 首页 | 函数Tree | 
| 注解内核,赢得工具 | 下载SCCT | English | 
函数名称:do_dup2
函数原型:static int do_dup2(struct files_struct *files, struct file *file, unsigned fd, unsigned flags)__releases(&files->file_lock)
返回类型:int
参数:
| 类型 | 参数 | 名称 | 
|---|---|---|
| struct files_struct * | files | |
| struct file * | file | |
| unsigned | fd | |
| unsigned | flags | 
| 864 | fdt等于files_fdtable(files) | 
| 865 | tofree等于 current fd array [fd] | 
| 866 | 如果非tofree且fd_is_open(fd, fdt)则转到:Ebusy | 
| 870 | __set_open_fd(fd, fdt) | 
| 871 | 如果flags按位与O_CLOEXEC则__set_close_on_exec(fd, fdt) | 
| 873 | 否则__clear_close_on_exec(fd, fdt) | 
| 875 | 自旋锁解锁 | 
| 880 | 返回:fd | 
| 882 | Ebusy : | 
| 883 | 自旋锁解锁 | 
| 884 | 返回:负EBUSY | 
| 名称 | 描述 | 
|---|---|
| replace_fd | |
| ksys_dup3 | 
| 源代码转换工具 开放的插件接口 | X | 
|---|---|
| 支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |