From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Message-Id: <20130507035854.667844599@goodmis.org> Date: Mon, 06 May 2013 23:58:34 -0400 From: Steven Rostedt To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Tommi Rantala , Peter Zijlstra , , Paul Mackerras , Arnaldo Carvalho de Melo , Ingo Molnar Subject: [082/126] perf: Treat attr.config as u64 in perf_swevent_init() References: <20130507035712.909872333@goodmis.org> Content-Disposition: inline; filename=0082-perf-Treat-attr.config-as-u64-in-perf_swevent_init.patch Sender: linux-kernel-owner@vger.kernel.org List-ID: 3.6.11.3 stable review patch. If anyone has any objections, please let me know. ------------------ From: Tommi Rantala [ Upstream commit 8176cced706b5e5d15887584150764894e94e02f ] Trinity discovered that we fail to check all 64 bits of attr.config passed by user space, resulting to out-of-bounds access of the perf_swevent_enabled array in sw_perf_event_destroy(). Introduced in commit b0a873ebb ("perf: Register PMU implementations"). Signed-off-by: Tommi Rantala Cc: Peter Zijlstra Cc: davej@redhat.com Cc: Paul Mackerras Cc: Arnaldo Carvalho de Melo Link: http://lkml.kernel.org/r/1365882554-30259-1-git-send-email-tt.rantala@gmail.com Signed-off-by: Ingo Molnar Signed-off-by: Steven Rostedt --- kernel/events/core.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kernel/events/core.c b/kernel/events/core.c index 7fee567..44b3539 100644 --- a/kernel/events/core.c +++ b/kernel/events/core.c @@ -5131,7 +5131,7 @@ static void sw_perf_event_destroy(struct perf_event *event) static int perf_swevent_init(struct perf_event *event) { - int event_id = event->attr.config; + u64 event_id = event->attr.config; if (event->attr.type != PERF_TYPE_SOFTWARE) return -ENOENT; -- 1.7.10.4