| 函数逻辑报告 | 
| Source Code: fs\file.c | Create Date:2022-07-29 10:38:42 | 
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick | 
| 首页 | 函数Tree | 
| 注解内核,赢得工具 | 下载SCCT | English | 
函数名称:Expand the file descriptor table.* This function will allocate a new fdtable and both fd array and fdset, of* the given size.* Return <0 error code on error; 1 on successful completion.
函数原型:static int expand_fdtable(struct files_struct *files, unsigned int nr)__releases(files->file_lock) __acquires(files->file_lock)
返回类型:int
参数:
| 类型 | 参数 | 名称 | 
|---|---|---|
| struct files_struct * | files | |
| unsigned int | nr | 
| 154 | 自旋锁解锁 | 
| 155 | new_fdt等于alloc_fdtable(nr) | 
| 163 | 加自旋锁 | 
| 170 | 如果此条件成立可能性小(为编译器优化)(max_fds <= nr)则 | 
| 171 | __free_fdtable(new_fdt) | 
| 172 | 返回:负EMFILE | 
| 174 | cur_fdt等于files_fdtable(files) | 
| 178 | 如果cur_fdt不等于fdtab则Post an RCU callback to be invoked after the end of an RCU grace* period. But since we have but one CPU, that would be after any* quiescent state. | 
| 181 | smp_wmb() | 
| 182 | 返回:1 | 
| 名称 | 描述 | 
|---|---|
| expand_files | Expand files.* This function will expand the file structures, if the requested size exceeds* the current capacity and there is room for expansion.* Return <0 error code on error; 0 when nothing done; 1 when files were | 
| 源代码转换工具 开放的插件接口 | X | 
|---|---|
| 支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |