summaryrefslogtreecommitdiff
path: root/arch/arm/mach-s3c2400
diff options
context:
space:
mode:
authorWill Deacon <will.deacon@arm.com>2011-03-25 16:12:37 (GMT)
committerRussell King <rmk+kernel@arm.linux.org.uk>2011-03-26 10:06:09 (GMT)
commita737823d37666255e3e74ce84bc9611a038e0888 (patch)
tree0424691dc1af593e08877cb1ee2b2e59334f532f /arch/arm/mach-s3c2400
parent574b69cbb633037a9c305d2993aeb680f4a8badd (diff)
downloadlinux-a737823d37666255e3e74ce84bc9611a038e0888.tar.xz
ARM: 6835/1: perf: ensure overflows aren't missed due to IRQ latency
If a counter overflows during a perf stat profiling run it may overtake the last known value of the counter: 0 prev new 0xffffffff |----------|-------|----------------------| In this case, the number of events that have occurred is (0xffffffff - prev) + new. Unfortunately, the event update code will not realise an overflow has occurred and will instead report the event delta as (new - prev) which may be considerably smaller than the real count. This patch adds an extra argument to armpmu_event_update which indicates whether or not an overflow has occurred. If an overflow has occurred then we use the maximum period of the counter to calculate the elapsed events. Acked-by: Jamie Iles <jamie@jamieiles.com> Reported-by: Ashwin Chaugule <ashwinc@codeaurora.org> Signed-off-by: Will Deacon <will.deacon@arm.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/mach-s3c2400')
0 files changed, 0 insertions, 0 deletions