linux/arch/arm/oprofile
Will Deacon 8c1fc96f6f ARM: 6072/1: oprofile: use perf-events framework as backend
There are currently two hardware performance monitoring subsystems in
the kernel for ARM: OProfile and perf-events. This creates the
following problems:

1.) Duplicate PMU accessor code. Inevitable code drift may lead to
bugs in one framework that are fixed in the other.

2.) Locking issues. OProfile doesn't reprogram hardware counters
between profiling runs if the events to be monitored have not been
changed. This means that other profiling frameworks cannot use the
counters if OProfile is in use.

3.) Due to differences in the two frameworks, it may not be possible to
compare the results obtained by OProfile with those obtained by perf.

This patch removes the OProfile PMU driver code and replaces it with
calls to perf, therefore solving the issues mentioned above.

The only userspace-visible change is the lack of SCU counter support
for 11MPCore. This is currently unsupported by OProfile userspace tools anyway and therefore shouldn't cause any problems.

Cc: Ingo Molnar <mingo@elte.hu>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Robert Richter <robert.richter@amd.com>
Cc: Jamie Iles <jamie.iles@picochip.com>
Cc: Jean Pihet <jpihet@mvista.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2010-05-17 11:53:58 +01:00
..
backtrace.c [ARM] 5382/1: unwind: Reorganise the stacktrace support 2009-02-12 13:21:17 +00:00
common.c ARM: 6072/1: oprofile: use perf-events framework as backend 2010-05-17 11:53:58 +01:00
Makefile [ARM] 5195/1: ARMv7 Oprofile support 2008-09-01 12:06:25 +01:00
op_arm_model.h [ARM] 5195/1: ARMv7 Oprofile support 2008-09-01 12:06:25 +01:00
op_counter.h [ARM] Remove OP_MAX_COUNTER 2006-11-14 15:15:40 +00:00
op_model_arm11_core.c ARM: 5901/2: arm/oprofile: reserve the PMU when starting 2010-02-12 17:23:43 +00:00
op_model_arm11_core.h ARM: 5901/2: arm/oprofile: reserve the PMU when starting 2010-02-12 17:23:43 +00:00
op_model_mpcore.c ARM: 5901/2: arm/oprofile: reserve the PMU when starting 2010-02-12 17:23:43 +00:00
op_model_mpcore.h [ARM] oprofile: add ARM11 SMP support 2007-02-06 16:46:45 +00:00
op_model_v6.c ARM: 5901/2: arm/oprofile: reserve the PMU when starting 2010-02-12 17:23:43 +00:00
op_model_v7.c ARM: 5901/2: arm/oprofile: reserve the PMU when starting 2010-02-12 17:23:43 +00:00
op_model_v7.h ARM: 5901/2: arm/oprofile: reserve the PMU when starting 2010-02-12 17:23:43 +00:00
op_model_xscale.c ARM: 5901/2: arm/oprofile: reserve the PMU when starting 2010-02-12 17:23:43 +00:00