From 6d262acec4f6a8a9fc59a5b6a694c32f6f7a908d Mon Sep 17 00:00:00 2001 From: Sudeep KarkadaNagesha Date: Thu, 18 Oct 2012 16:38:40 +0100 Subject: driver: misc/arm-cci: fix map_event for PMU support cci_pmu_map_event doesn't check the event type. This results in CCI PMU acceptng other type of perf events. This could potentially break other perf events like software tracing, hardware breakpoints for debugging,...etc. Reported by:Dietmar Eggemann Signed-off-by: Sudeep KarkadaNagesha --- drivers/misc/arm-cci.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/misc/arm-cci.c b/drivers/misc/arm-cci.c index 53845eadaa9a..01993130c4ac 100644 --- a/drivers/misc/arm-cci.c +++ b/drivers/misc/arm-cci.c @@ -181,6 +181,9 @@ static int cci_pmu_map_event(struct perf_event *event) int mapping; u8 config = event->attr.config & CCI400_PMU_EVENT_MASK; + if (event->attr.type < PERF_TYPE_MAX) + return -ENOENT; + /* 0xff is used to represent CCI Cycles */ if (config == 0xff) mapping = config; -- cgit v1.2.3