|
@@ -364,22 +364,6 @@ static ssize_t kernel_readv(struct file *file, const struct kvec *vec,
|
|
return res;
|
|
return res;
|
|
}
|
|
}
|
|
|
|
|
|
-ssize_t kernel_write(struct file *file, const char *buf, size_t count,
|
|
|
|
- loff_t pos)
|
|
|
|
-{
|
|
|
|
- mm_segment_t old_fs;
|
|
|
|
- ssize_t res;
|
|
|
|
-
|
|
|
|
- old_fs = get_fs();
|
|
|
|
- set_fs(get_ds());
|
|
|
|
- /* The cast to a user pointer is valid due to the set_fs() */
|
|
|
|
- res = vfs_write(file, (__force const char __user *)buf, count, &pos);
|
|
|
|
- set_fs(old_fs);
|
|
|
|
-
|
|
|
|
- return res;
|
|
|
|
-}
|
|
|
|
-EXPORT_SYMBOL(kernel_write);
|
|
|
|
-
|
|
|
|
static ssize_t default_file_splice_read(struct file *in, loff_t *ppos,
|
|
static ssize_t default_file_splice_read(struct file *in, loff_t *ppos,
|
|
struct pipe_inode_info *pipe, size_t len,
|
|
struct pipe_inode_info *pipe, size_t len,
|
|
unsigned int flags)
|
|
unsigned int flags)
|