summaryrefslogtreecommitdiffstats
path: root/include/linux/splice.h
diff options
context:
space:
mode:
authorJens Axboe <jens.axboe@oracle.com>2010-05-20 10:43:18 +0200
committerJens Axboe <jens.axboe@oracle.com>2010-05-21 21:12:40 +0200
commit35f3d14dbbc58447c61e38a162ea10add6b31dc7 (patch)
tree3e03cd540b7dcdac82195c4e76862c0ce6daaaf0 /include/linux/splice.h
parent3d42b3612891baecf709d93f28655a6882a65d41 (diff)
downloadlinux-35f3d14dbbc58447c61e38a162ea10add6b31dc7.tar.gz
linux-35f3d14dbbc58447c61e38a162ea10add6b31dc7.tar.bz2
linux-35f3d14dbbc58447c61e38a162ea10add6b31dc7.zip
pipe: add support for shrinking and growing pipes
This patch adds F_GETPIPE_SZ and F_SETPIPE_SZ fcntl() actions for growing and shrinking the size of a pipe and adjusts pipe.c and splice.c (and relay and network splice) usage to work with these larger (or smaller) pipes. Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Diffstat (limited to 'include/linux/splice.h')
-rw-r--r--include/linux/splice.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/include/linux/splice.h b/include/linux/splice.h
index 18e7c7c0cae6..997c3b4c212b 100644
--- a/include/linux/splice.h
+++ b/include/linux/splice.h
@@ -82,4 +82,11 @@ extern ssize_t splice_to_pipe(struct pipe_inode_info *,
extern ssize_t splice_direct_to_actor(struct file *, struct splice_desc *,
splice_direct_actor *);
+/*
+ * for dynamic pipe sizing
+ */
+extern int splice_grow_spd(struct pipe_inode_info *, struct splice_pipe_desc *);
+extern void splice_shrink_spd(struct pipe_inode_info *,
+ struct splice_pipe_desc *);
+
#endif