diff options
author | Jeff Garzik <jeff@garzik.org> | 2006-04-27 04:52:44 -0400 |
---|---|---|
committer | Jeff Garzik <jeff@garzik.org> | 2006-04-27 04:52:44 -0400 |
commit | 1a2e8a6f8ec0a068911a882a19e0912a0c89be6e (patch) | |
tree | e0e70aa880b8c8f2c1a979438a523241f6193742 /include/linux | |
parent | 9f1da23b631f92393f58f664348ffc5faeaddeb3 (diff) | |
parent | 2be4d50295e2b6f62c07b614e1b103e280dddb84 (diff) | |
download | kernel-crypto-1a2e8a6f8ec0a068911a882a19e0912a0c89be6e.tar.gz kernel-crypto-1a2e8a6f8ec0a068911a882a19e0912a0c89be6e.tar.xz kernel-crypto-1a2e8a6f8ec0a068911a882a19e0912a0c89be6e.zip |
Merge branch 'master' into upstream
Diffstat (limited to 'include/linux')
-rw-r--r-- | include/linux/pipe_fs_i.h | 17 | ||||
-rw-r--r-- | include/linux/syscalls.h | 3 |
2 files changed, 20 insertions, 0 deletions
diff --git a/include/linux/pipe_fs_i.h b/include/linux/pipe_fs_i.h index ef7f33c0be1..0008d4bd405 100644 --- a/include/linux/pipe_fs_i.h +++ b/include/linux/pipe_fs_i.h @@ -61,4 +61,21 @@ void __free_pipe_info(struct pipe_inode_info *); /* from/to, of course */ #define SPLICE_F_MORE (0x04) /* expect more data */ +/* + * Passed to the actors + */ +struct splice_desc { + unsigned int len, total_len; /* current and remaining length */ + unsigned int flags; /* splice flags */ + struct file *file; /* file to read/write */ + loff_t pos; /* file position */ +}; + +typedef int (splice_actor)(struct pipe_inode_info *, struct pipe_buffer *, + struct splice_desc *); + +extern ssize_t splice_from_pipe(struct pipe_inode_info *, struct file *, + loff_t *, size_t, unsigned int, + splice_actor *); + #endif diff --git a/include/linux/syscalls.h b/include/linux/syscalls.h index d3ebc0e68b2..3996960fc56 100644 --- a/include/linux/syscalls.h +++ b/include/linux/syscalls.h @@ -574,6 +574,9 @@ asmlinkage long sys_splice(int fd_in, loff_t __user *off_in, int fd_out, loff_t __user *off_out, size_t len, unsigned int flags); +asmlinkage long sys_vmsplice(int fd, const struct iovec __user *iov, + unsigned long nr_segs, unsigned int flags); + asmlinkage long sys_tee(int fdin, int fdout, size_t len, unsigned int flags); asmlinkage long sys_sync_file_range(int fd, loff_t offset, loff_t nbytes, |