summaryrefslogtreecommitdiffstats
path: root/fs/splice.c
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2013-03-20 13:04:20 -0400
committerAl Viro <viro@zeniv.linux.org.uk>2013-04-09 14:12:56 -0400
commit03d95eb2f2578083a3f6286262e1cb5d88a00c02 (patch)
treea82585b55080628e0ba0028dfb100886bf5b4099 /fs/splice.c
parent72ec35163f9f728ba1579fd80682e51e933dfa8a (diff)
downloadlinux-03d95eb2f2578083a3f6286262e1cb5d88a00c02.tar.gz
linux-03d95eb2f2578083a3f6286262e1cb5d88a00c02.tar.bz2
linux-03d95eb2f2578083a3f6286262e1cb5d88a00c02.zip
lift sb_start_write() out of ->write()
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs/splice.c')
-rw-r--r--fs/splice.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/splice.c b/fs/splice.c
index 29e394e49ddd..e78a749064db 100644
--- a/fs/splice.c
+++ b/fs/splice.c
@@ -1052,7 +1052,9 @@ static int write_pipe_buf(struct pipe_inode_info *pipe, struct pipe_buffer *buf,
loff_t tmp = sd->pos;
data = buf->ops->map(pipe, buf, 0);
+ file_start_write(sd->u.file);
ret = __kernel_write(sd->u.file, data + buf->offset, sd->len, &tmp);
+ file_end_write(sd->u.file);
buf->ops->unmap(pipe, buf, data);
return ret;