函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\relay.c Create Date:2022-07-27 12:52:34
Last Modify:2020-03-17 19:20:22 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:relay_file_splice_read

函数原型:static ssize_t relay_file_splice_read(struct file *in, loff_t *ppos, struct pipe_inode_info *pipe, size_t len, unsigned int flags)

返回类型:ssize_t

参数:

类型参数名称
struct file *in
loff_t *ppos
struct pipe_inode_info *pipe
size_tlen
unsigned intflags
1293  nonpad_ret等于0
1295  ret等于0
1296  spliced等于0
1298 len且非spliced循环
1299  ret等于subbuf_splice_actor - splice up to one subbuf's worth of data
1300  如果ret小于0则退出
1302  否则如果非ret
1303  如果flags按位与don't block on the pipe splicing (but ret等于负EAGAIN
1305  退出
1308  ppos加等于ret
1309  如果ret大于lenlen等于0
1311  否则len减等于ret
1313  spliced加等于nonpad_ret
1314  nonpad_ret等于0
1317  如果spliced则返回:spliced
1320  返回:ret