Re: [PATCH] perf_events: fix bogus copy_to_user() inperf_event_read_group()

From: Ingo Molnar
Date: Mon Nov 23 2009 - 12:07:51 EST



* Stephane Eranian <eranian@xxxxxxxxxx> 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@xxxxxxxxxx>
>
> ---
> ??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
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/