1 From b2ee78de50a26b0ddc8cfd0cf637d0a3649508b9 Mon Sep 17 00:00:00 2001
2 From: Miklos Szeredi <mszeredi@suse.cz>
3 Date: Thu, 30 Aug 2012 16:13:49 +0200
4 Subject: [PATCH 02/13] vfs: export do_splice_direct() to modules
5 Patch-mainline: not yet
7 Export do_splice_direct() to modules. Needed by overlay filesystem.
9 Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
11 fs/internal.h | 6 ------
13 include/linux/fs.h | 3 +++
14 3 files changed, 4 insertions(+), 6 deletions(-)
18 @@ -1312,6 +1312,7 @@ long do_splice_direct(struct file *in, l
22 +EXPORT_SYMBOL(do_splice_direct);
24 static int splice_pipe_to_pipe(struct pipe_inode_info *ipipe,
25 struct pipe_inode_info *opipe,
28 @@ -132,12 +132,6 @@ extern struct dentry *__d_alloc(struct s
29 extern int rw_verify_area(int, struct file *, const loff_t *, size_t);
34 -extern long do_splice_direct(struct file *in, loff_t *ppos, struct file *out,
35 - loff_t *opos, size_t len, unsigned int flags);
40 extern const struct file_operations pipefifo_fops;
41 --- a/include/linux/fs.h
42 +++ b/include/linux/fs.h
43 @@ -2427,6 +2427,9 @@ extern ssize_t generic_file_splice_write
44 struct file *, loff_t *, size_t, unsigned int);
45 extern ssize_t generic_splice_sendpage(struct pipe_inode_info *pipe,
46 struct file *out, loff_t *, size_t len, unsigned int flags);
47 +extern long do_splice_direct(struct file *in, loff_t *ppos, struct file *out,
48 + loff_t *opos, size_t len, unsigned int flags);
52 file_ra_state_init(struct file_ra_state *ra, struct address_space *mapping);