[PATCH 02/13] vfs: export do_splice_direct() to modules

From: Miklos Szeredi
Date: Fri May 23 2014 - 05:48:05 EST


From: Miklos Szeredi <mszeredi@xxxxxxx>

Export do_splice_direct() to modules. Needed by overlay filesystem.

Signed-off-by: Miklos Szeredi <mszeredi@xxxxxxx>
---
fs/internal.h | 6 ------
fs/splice.c | 1 +
include/linux/fs.h | 3 +++
3 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/fs/internal.h b/fs/internal.h
index 465742407466..873cdf544d54 100644
--- a/fs/internal.h
+++ b/fs/internal.h
@@ -135,12 +135,6 @@ extern ssize_t __kernel_write(struct file *, const char *, size_t, loff_t *);
extern int rw_verify_area(int, struct file *, const loff_t *, size_t);

/*
- * splice.c
- */
-extern long do_splice_direct(struct file *in, loff_t *ppos, struct file *out,
- loff_t *opos, size_t len, unsigned int flags);
-
-/*
* pipe.c
*/
extern const struct file_operations pipefifo_fops;
diff --git a/fs/splice.c b/fs/splice.c
index 9bc07d2b53cf..fb1094bbe5af 100644
--- a/fs/splice.c
+++ b/fs/splice.c
@@ -1319,6 +1319,7 @@ long do_splice_direct(struct file *in, loff_t *ppos, struct file *out,

return ret;
}
+EXPORT_SYMBOL(do_splice_direct);

static int splice_pipe_to_pipe(struct pipe_inode_info *ipipe,
struct pipe_inode_info *opipe,
diff --git a/include/linux/fs.h b/include/linux/fs.h
index d38875d70db2..90463dfd77d1 100644
--- a/include/linux/fs.h
+++ b/include/linux/fs.h
@@ -2433,6 +2433,9 @@ extern ssize_t generic_file_splice_write(struct pipe_inode_info *,
struct file *, loff_t *, size_t, unsigned int);
extern ssize_t generic_splice_sendpage(struct pipe_inode_info *pipe,
struct file *out, loff_t *, size_t len, unsigned int flags);
+extern long do_splice_direct(struct file *in, loff_t *ppos, struct file *out,
+ loff_t *opos, size_t len, unsigned int flags);
+

extern void
file_ra_state_init(struct file_ra_state *ra, struct address_space *mapping);
--
1.8.1.4

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/