Messages in this thread Patch in this message | | | Date | Tue, 24 Nov 2009 16:56:07 GMT | From | tip-bot for Stephane Eranian <> | 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; }
| |