函数逻辑报告 |
Source Code:fs\splice.c |
Create Date:2022-07-29 10:42:12 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| 首页 | 函数Tree |
| 注解内核,赢得工具 | 下载SCCT | English |
函数名称:splice_direct_to_actor - splices data directly between two non-pipes*@in: file to splice from*@sd: actor information on where to splice to*@actor: handles the data splicing* Description:* This is a special case helper to splice directly between two
函数原型:ssize_t splice_direct_to_actor(struct file *in, struct splice_desc *sd, splice_direct_actor *actor)
返回类型:ssize_t
参数:
| 类型 | 参数 | 名称 |
|---|---|---|
| struct file * | in | |
| struct splice_desc * | sd | |
| splice_direct_actor * | actor |
| 930 | pipe等于splice_pipe |
| 931 | 如果此条件成立可能性小(为编译器优化)(!pipe)则 |
| 949 | ret等于0 |
| 950 | bytes等于0 |
| 951 | len等于maining length |
| 952 | flags等于splice flags |
| 958 | more等于splice flags 按位与xpect more data |
| 960 | WARN_ON_ONCE(!pipe_empty - Return true if the pipe is empty*@head: The pipe ring head pointer*@tail: The pipe ring tail pointer) |
| 965 | pos等于le position , prev_pos等于pos |
| 968 | p_space等于max_usage减pipe_occupancy - Return number of slots used in the pipe*@head: The pipe ring head pointer*@tail: The pipe ring tail pointer |
| 970 | read_len等于min_t - return minimum of two values, using the specified type*@type: data type to use*@x: first value*@y: second value(size_t, len, p_space << PAGE_SHIFT determines the page size ) |
| 972 | 如果此条件成立可能性小(为编译器优化)(ret <= 0)则转到:out_release |
| 976 | maining length 等于read_len |
| 983 | 如果read_len小于len则splice flags 或等于xpect more data |
| 985 | 否则如果非more则splice flags 与等于xpect more data 的反 |
| 993 | 如果此条件成立可能性小(为编译器优化)(ret <= 0)则 |
| 994 | le position 等于prev_pos |
| 995 | 转到:out_release |
| 1000 | le position 等于pos |
| 1003 | le position 等于prev_pos加ret |
| 1004 | 转到:out_release |
| 1008 | done : |
| 1010 | file_accessed(in) |
| 1011 | 返回:bytes |
| 1013 | out_release : |
| 1028 | 转到:done |
| 名称 | 描述 |
|---|---|
| do_splice_direct | do_splice_direct - splices data directly between two files*@in: file to splice from*@ppos: input file offset*@out: file to splice to*@opos: output file offset*@len: number of bytes to splice*@flags: splice modifier flags* Description: |
| 源代码转换工具 开放的插件接口 | X |
|---|---|
| 支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |