diff options
| author | Russell King <rmk@dyn-67.arm.linux.org.uk> | 2009-04-16 16:16:34 +0100 |
|---|---|---|
| committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2009-04-16 16:16:34 +0100 |
| commit | 32dc496b47eb31f7a1d115a2708e8ef1d054e1fb (patch) | |
| tree | b0ae57b9b55a0277395934ea75de00f8f54d227a /include/linux/splice.h | |
| parent | 8cd50e8e2b416c7f07b267ab3457c6c25a540ba9 (diff) | |
| parent | c5ab660db9a98187667d017bb9425f0c1dc76ac1 (diff) | |
Merge branch 'for-rmk' of git://git.pengutronix.de/git/imx/linux-2.6
Diffstat (limited to 'include/linux/splice.h')
| -rw-r--r-- | include/linux/splice.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/include/linux/splice.h b/include/linux/splice.h index 528dcb93c2f2..5f3faa9d15ae 100644 --- a/include/linux/splice.h +++ b/include/linux/splice.h @@ -36,6 +36,8 @@ struct splice_desc { void *data; /* cookie */ } u; loff_t pos; /* file position */ + size_t num_spliced; /* number of bytes already spliced */ + bool need_wakeup; /* need to wake up writer */ }; struct partial_page { @@ -66,6 +68,16 @@ extern ssize_t splice_from_pipe(struct pipe_inode_info *, struct file *, splice_actor *); extern ssize_t __splice_from_pipe(struct pipe_inode_info *, struct splice_desc *, splice_actor *); +extern int splice_from_pipe_feed(struct pipe_inode_info *, struct splice_desc *, + splice_actor *); +extern int splice_from_pipe_next(struct pipe_inode_info *, + struct splice_desc *); +extern void splice_from_pipe_begin(struct splice_desc *); +extern void splice_from_pipe_end(struct pipe_inode_info *, + struct splice_desc *); +extern int pipe_to_file(struct pipe_inode_info *, struct pipe_buffer *, + struct splice_desc *); + extern ssize_t splice_to_pipe(struct pipe_inode_info *, struct splice_pipe_desc *); extern ssize_t splice_direct_to_actor(struct file *, struct splice_desc *, |
