aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMiklos Szeredi <mszeredi@suse.cz>2014-10-23 18:14:35 -0400
committerMiklos Szeredi <mszeredi@suse.cz>2014-10-23 18:14:35 -0400
commit1c118596a7682912106c80007102ce0184c77780 (patch)
tree33a8195a075436f7ace6c81582394742bd461ed3
parent4aa7c6346be395bdf776f82bbb2e3e2bc60bdd2b (diff)
vfs: export do_splice_direct() to modules
Export do_splice_direct() to modules. Needed by overlay filesystem. Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
-rw-r--r--fs/internal.h6
-rw-r--r--fs/splice.c1
-rw-r--r--include/linux/fs.h3
3 files changed, 4 insertions, 6 deletions
diff --git a/fs/internal.h b/fs/internal.h
index 9477f8f6aefc..0f0626a6997c 100644
--- a/fs/internal.h
+++ b/fs/internal.h
@@ -139,12 +139,6 @@ extern long prune_dcache_sb(struct super_block *sb, unsigned long nr_to_scan,
139extern int rw_verify_area(int, struct file *, const loff_t *, size_t); 139extern int rw_verify_area(int, struct file *, const loff_t *, size_t);
140 140
141/* 141/*
142 * splice.c
143 */
144extern long do_splice_direct(struct file *in, loff_t *ppos, struct file *out,
145 loff_t *opos, size_t len, unsigned int flags);
146
147/*
148 * pipe.c 142 * pipe.c
149 */ 143 */
150extern const struct file_operations pipefifo_fops; 144extern const struct file_operations pipefifo_fops;
diff --git a/fs/splice.c b/fs/splice.c
index f5cb9ba84510..75c6058eabf2 100644
--- a/fs/splice.c
+++ b/fs/splice.c
@@ -1330,6 +1330,7 @@ long do_splice_direct(struct file *in, loff_t *ppos, struct file *out,
1330 1330
1331 return ret; 1331 return ret;
1332} 1332}
1333EXPORT_SYMBOL(do_splice_direct);
1333 1334
1334static int splice_pipe_to_pipe(struct pipe_inode_info *ipipe, 1335static int splice_pipe_to_pipe(struct pipe_inode_info *ipipe,
1335 struct pipe_inode_info *opipe, 1336 struct pipe_inode_info *opipe,
diff --git a/include/linux/fs.h b/include/linux/fs.h
index 5cf7f6759679..10ed65b2c31d 100644
--- a/include/linux/fs.h
+++ b/include/linux/fs.h
@@ -2456,6 +2456,9 @@ extern ssize_t iter_file_splice_write(struct pipe_inode_info *,
2456 struct file *, loff_t *, size_t, unsigned int); 2456 struct file *, loff_t *, size_t, unsigned int);
2457extern ssize_t generic_splice_sendpage(struct pipe_inode_info *pipe, 2457extern ssize_t generic_splice_sendpage(struct pipe_inode_info *pipe,
2458 struct file *out, loff_t *, size_t len, unsigned int flags); 2458 struct file *out, loff_t *, size_t len, unsigned int flags);
2459extern long do_splice_direct(struct file *in, loff_t *ppos, struct file *out,
2460 loff_t *opos, size_t len, unsigned int flags);
2461
2459 2462
2460extern void 2463extern void
2461file_ra_state_init(struct file_ra_state *ra, struct address_space *mapping); 2464file_ra_state_init(struct file_ra_state *ra, struct address_space *mapping);