diff options
author | Sudeep KarkadaNagesha <sudeep.karkadanagesha@arm.com> | 2012-10-18 16:38:40 +0100 |
---|---|---|
committer | Jon Medhurst <tixy@linaro.org> | 2012-10-18 17:44:23 +0100 |
commit | 6d262acec4f6a8a9fc59a5b6a694c32f6f7a908d (patch) | |
tree | 2683e579ff7c20a877b22087e4f3b40307e3dbb3 | |
parent | 04846252ddcde0bc9fae7f33fa46b31719b8eb1b (diff) |
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 <dietmar.eggemann@arm.com>
Signed-off-by: Sudeep KarkadaNagesha <sudeep.karkadanagesha@arm.com>
-rw-r--r-- | drivers/misc/arm-cci.c | 3 |
1 files changed, 3 insertions, 0 deletions
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; |