lkml.org 
[lkml]   [2009]   [Nov]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
Subject[tip:perf/core] perf_events: Fix bogus copy_to_user() in perf_event_read_group()
Commit-ID:  184d3da8ef0ca552dffa0fdd35c046e058a2cf9a
Gitweb: http://git.kernel.org/tip/184d3da8ef0ca552dffa0fdd35c046e058a2cf9a
Author: Stephane Eranian <eranian@google.com>
AuthorDate: Mon, 23 Nov 2009 21:40:49 -0800
Committer: Ingo Molnar <mingo@elte.hu>
CommitDate: Tue, 24 Nov 2009 08:55:27 +0100

perf_events: Fix bogus copy_to_user() in perf_event_read_group()

When using an event group, the value and id for non leaders events
were wrong due to invalid offset into the outgoing buffer.

Signed-off-by: Stephane Eranian <eranian@google.com>
Acked-by: Peter Zijlstra <peterz@infradead.org>
Cc: paulus@samba.org
Cc: perfmon2-devel@lists.sourceforge.net
LKML-Reference: <4b0b71e1.0508d00a.075e.ffff84a3@mx.google.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
---
kernel/perf_event.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/kernel/perf_event.c b/kernel/perf_event.c
index 9425c96..accfd7b 100644
--- a/kernel/perf_event.c
+++ b/kernel/perf_event.c
@@ -1831,7 +1831,7 @@ static int perf_event_read_group(struct perf_event *event,

size = n * sizeof(u64);

- if (copy_to_user(buf + size, values, size)) {
+ if (copy_to_user(buf + ret, values, size)) {
ret = -EFAULT;
goto unlock;
}

\
 
 \ /
  Last update: 2009-11-24 18:01    [W:0.084 / U:0.028 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site