函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:fs\splice.c Create Date:2022-07-29 10:42:11
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:Attempt to initiate a splice from a file to a pipe.

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

返回类型:long

参数:

类型参数名称
struct file *in
loff_t *ppos
struct pipe_inode_info *pipe
size_tlen
unsigned intflags
873  ssize_t( * splice_read)(struct file * , loff_t * , struct pipe_inode_info * , size_t, unsigned int)
877  如果此条件成立可能性小(为编译器优化)(!(f_mode & le is open for reading ))则返回:负EBADF
880  ret等于rw_verify_area(generic data direction definitions , in, ppos, len)
881  如果此条件成立可能性小(为编译器优化)(ret < 0)则返回:ret
884  如果此条件成立可能性小(为编译器优化)(len > MAX_RW_COUNT)则len等于MAX_RW_COUNT
887  如果splice_readsplice_read等于splice_read
889  否则splice_read等于default_file_splice_read
892  返回:splice_read(in, ppos, pipe, len, flags)
调用者
名称描述
splice_direct_to_actorsplice_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
do_spliceDetermine where to splice to/from.