summaryrefslogtreecommitdiff
path: root/fs/splice.c
diff options
context:
space:
mode:
authorMark Brown <broonie@opensource.wolfsonmicro.com>2013-04-15 20:27:12 +0400
committerMark Brown <broonie@opensource.wolfsonmicro.com>2013-04-15 20:27:12 +0400
commitcd2d95d97c8d1b66467507400c63d707ddb1deba (patch)
tree7ad5223ba88110ca6735637c9eef327515e9bb96 /fs/splice.c
parent88dd75af0e49e1dabef6f7c7f7f4fa0234b9b988 (diff)
parent41ef2d5678d83af030125550329b6ae8b74618fa (diff)
downloadlinux-cd2d95d97c8d1b66467507400c63d707ddb1deba.tar.xz
Merge tag 'v3.9-rc7' into regulator-fix-core
Linux 3.9-rc7 Trivial context overlap conflicts: MAINTAINERS
Diffstat (limited to 'fs/splice.c')
-rw-r--r--fs/splice.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/fs/splice.c b/fs/splice.c
index 718bd0056384..29e394e49ddd 100644
--- a/fs/splice.c
+++ b/fs/splice.c
@@ -31,6 +31,7 @@
#include <linux/security.h>
#include <linux/gfp.h>
#include <linux/socket.h>
+#include "internal.h"
/*
* Attempt to steal a page from a pipe buffer. This should perhaps go into
@@ -1048,9 +1049,10 @@ static int write_pipe_buf(struct pipe_inode_info *pipe, struct pipe_buffer *buf,
{
int ret;
void *data;
+ loff_t tmp = sd->pos;
data = buf->ops->map(pipe, buf, 0);
- ret = kernel_write(sd->u.file, data + buf->offset, sd->len, sd->pos);
+ ret = __kernel_write(sd->u.file, data + buf->offset, sd->len, &tmp);
buf->ops->unmap(pipe, buf, data);
return ret;