projects
/
deliverable
/
linux.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
NFSv4: Fix another potential state manager deadlock
[deliverable/linux.git]
/
fs
/
splice.c
diff --git
a/fs/splice.c
b/fs/splice.c
index 6909d89d0da56ffd929a2114b0228a03d1f35589..718bd0056384688af6ead056156574638c0be6e9 100644
(file)
--- a/
fs/splice.c
+++ b/
fs/splice.c
@@
-569,7
+569,7
@@
static ssize_t kernel_readv(struct file *file, const struct iovec *vec,
return res;
}
return res;
}
-s
tatic s
size_t kernel_write(struct file *file, const char *buf, size_t count,
+ssize_t kernel_write(struct file *file, const char *buf, size_t count,
loff_t pos)
{
mm_segment_t old_fs;
loff_t pos)
{
mm_segment_t old_fs;
@@
-578,11
+578,12
@@
static ssize_t kernel_write(struct file *file, const char *buf, size_t count,
old_fs = get_fs();
set_fs(get_ds());
/* The cast to a user pointer is valid due to the set_fs() */
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, (const char __user *)buf, count, &pos);
+ res = vfs_write(file, (
__force
const char __user *)buf, count, &pos);
set_fs(old_fs);
return res;
}
set_fs(old_fs);
return res;
}
+EXPORT_SYMBOL(kernel_write);
ssize_t default_file_splice_read(struct file *in, loff_t *ppos,
struct pipe_inode_info *pipe, size_t len,
ssize_t default_file_splice_read(struct file *in, loff_t *ppos,
struct pipe_inode_info *pipe, size_t len,
@@
-1170,7
+1171,7
@@
ssize_t splice_direct_to_actor(struct file *in, struct splice_desc *sd,
* randomly drop data for eg socket -> socket splicing. Use the
* piped splicing for that!
*/
* randomly drop data for eg socket -> socket splicing. Use the
* piped splicing for that!
*/
- i_mode =
in->f_path.dentry->d_inode
->i_mode;
+ i_mode =
file_inode(in)
->i_mode;
if (unlikely(!S_ISREG(i_mode) && !S_ISBLK(i_mode)))
return -EINVAL;
if (unlikely(!S_ISREG(i_mode) && !S_ISBLK(i_mode)))
return -EINVAL;
This page took
0.026016 seconds
and
5
git commands to generate.