Messages in this thread | | | Date | Mon, 23 Nov 2009 18:07:34 +0100 | From | Ingo Molnar <> | Subject | Re: [PATCH] perf_events: fix bogus copy_to_user() in perf_event_read_group() |
| |
* Stephane Eranian <eranian@google.com> wrote:
> ?? ?? ?? ??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> > > --- > ??perf_event.c | ?? ??2 +- > ??1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/kernel/perf_event.c b/kernel/perf_event.c > index 0b0d5f7..8306127 100644 > --- a/kernel/perf_event.c > +++ b/kernel/perf_event.c > @@ -1826,7 +1826,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; > ?? ?? ?? ?? ?? ?? ?? ??}
hm, patch is seriously garbled - mind sending it according to Documentation/email-clients.txt?
Thanks,
Ingo
| |