]> rtime.felk.cvut.cz Git - zynq/linux.git/commit
arm-cci: Fix CCI PMU event validation
authorSuzuki K. Poulose <suzuki.poulose@arm.com>
Wed, 18 Mar 2015 12:24:42 +0000 (12:24 +0000)
committerMichal Simek <michal.simek@xilinx.com>
Thu, 27 Aug 2015 11:52:50 +0000 (13:52 +0200)
commitbf8b425b310d1a86e76970307dc9e771469b2424
treead98999e732a9d9e56ccc8f8368e70f5d05e4685
parentf904d7898f7a6a0a01234dac6312535a5fe117fd
arm-cci: Fix CCI PMU event validation

We mask the event with the CCI_PMU_EVENT_MASK, before passing
the config to pmu_validate_hw_event(), which causes extra bits
to be ignored and qualifies an invalid event code as valid.

e.g,
 $ perf stat -a -C 0 -e CCI_400/config=0x1ff,name=cycles/ sleep 1
   Performance counter stats for 'system wide':

         506951142      cycles

       1.013879626 seconds time elapsed

where, cycles has an event coding of 0xff. This patch also removes
the unnecessary 'event' mask in pmu_write_register, since the config_base
is set by the pmu code after the event is validated.

Acked-by: Punit Agrawal <punit.agrawal@arm.com>
Reviewed-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Suzuki K. Poulose <suzuki.poulose@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
drivers/bus/arm-cci.c