aboutsummaryrefslogtreecommitdiffstats
path: root/kernel
diff options
context:
space:
mode:
authorLai Jiangshan <laijs@cn.fujitsu.com>2009-04-02 03:17:04 -0400
committerIngo Molnar <mingo@elte.hu>2009-04-10 06:44:44 -0400
commitc7625a555f55d7ae49236cde551786c88f5a5ce1 (patch)
tree4cca942d46412d708945f574ef4c4b87adf92d1d /kernel
parentddd538f3e6a1a4bec2f6942f83a753263e6577b4 (diff)
tracing: update file->f_pos when splice(2) it
Impact: Cleanup These two lines: if (unlikely(*ppos)) return -ESPIPE; in tracing_buffers_splice_read() are not needed, VFS layer has disabled seek(2). We remove these two lines, and then we can update file->f_pos. And tracing_buffers_read() updates file->f_pos, this fix make tracing_buffers_splice_read() updates file->f_pos too. Signed-off-by: Lai Jiangshan <laijs@cn.fujitsu.com> Cc: Frederic Weisbecker <fweisbec@gmail.com> Cc: Steven Rostedt <srostedt@redhat.com> LKML-Reference: <49D46670.4010503@cn.fujitsu.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'kernel')
-rw-r--r--kernel/trace/trace.c8
1 files changed, 1 insertions, 7 deletions
diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c
index 8e189ffb899a..94629760dabf 100644
--- a/kernel/trace/trace.c
+++ b/kernel/trace/trace.c
@@ -3428,13 +3428,6 @@ tracing_buffers_splice_read(struct file *file, loff_t *ppos,
3428 int size, i; 3428 int size, i;
3429 size_t ret; 3429 size_t ret;
3430 3430
3431 /*
3432 * We can't seek on a buffer input
3433 */
3434 if (unlikely(*ppos))
3435 return -ESPIPE;
3436
3437
3438 for (i = 0; i < PIPE_BUFFERS && len; i++, len -= size) { 3431 for (i = 0; i < PIPE_BUFFERS && len; i++, len -= size) {
3439 struct page *page; 3432 struct page *page;
3440 int r; 3433 int r;
@@ -3474,6 +3467,7 @@ tracing_buffers_splice_read(struct file *file, loff_t *ppos,
3474 spd.partial[i].offset = 0; 3467 spd.partial[i].offset = 0;
3475 spd.partial[i].private = (unsigned long)ref; 3468 spd.partial[i].private = (unsigned long)ref;
3476 spd.nr_pages++; 3469 spd.nr_pages++;
3470 *ppos += size;
3477 } 3471 }
3478 3472
3479 spd.nr_pages = i; 3473 spd.nr_pages = i;