Scroll to navigation

SPLICE_FROM_PIPE_FEE(9) splice API SPLICE_FROM_PIPE_FEE(9)

NAME

splice_from_pipe_feed - feed available data from a pipe to a file

SYNOPSIS

int splice_from_pipe_feed(struct pipe_inode_info * pipe, struct splice_desc * sd, splice_actor * actor);

ARGUMENTS

struct pipe_inode_info * pipe
pipe to splice from

struct splice_desc * sd

information to actor

splice_actor * actor

handler that splices the data

DESCRIPTION

This function loops over the pipe and calls actor to do the actual moving of a single struct pipe_buffer to the desired destination. It returns when there's no more buffers left in the pipe or if the requested number of bytes (sd->total_len) have been copied. It returns a positive number (one) if the pipe needs to be filled with more data, zero if the required number of bytes have been copied and -errno on error.

This, together with splice_from_pipe_{begin,end,next}, may be used to implement the functionality of __splice_from_pipe when locking is required around copying the pipe buffers to the destination.

COPYRIGHT

September 2017 Kernel Hackers Manual 4.12