1
linux/arch
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
..
alpha dma-mapping: alpha: use include/linux/pci-dma-compat.h 2010-03-12 15:52:42 -08:00
arm ARM: 6072/1: oprofile: use perf-events framework as backend 2010-05-17 11:53:58 +01:00
avr32 avr32: use generic ptrace_resume code 2010-03-12 15:52:38 -08:00
blackfin Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/vapier/blackfin 2010-03-18 17:02:35 -07:00
cris Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2010-03-12 16:04:50 -08:00
frv dma-mapping: frv: remove the obsolete and unnecessary DMA API comments 2010-03-12 15:52:42 -08:00
h8300 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2010-03-12 16:04:50 -08:00
ia64 ACPI: processor: driver doesn't need to evaluate _PDC 2010-03-14 21:17:22 -04:00
m32r m32r: use generic ptrace_resume code 2010-03-12 15:52:39 -08:00
m68k Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2010-03-12 16:04:50 -08:00
m68knommu m68knommu: use generic ptrace_resume code 2010-03-12 15:52:38 -08:00
microblaze Merge branch 'for-linus' of git://git.monstr.eu/linux-2.6-microblaze 2010-03-18 16:57:24 -07:00
mips init dynamic bin_attribute structures 2010-03-14 20:28:39 -07:00
mn10300 dma-mapping: mn10300: remove the obsolete and unnecessary DMA API comments 2010-03-12 15:52:42 -08:00
parisc pci-dma: add linux/pci-dma.h to linux/pci.h 2010-03-12 15:52:42 -08:00
powerpc Merge branch 'merge' of git://git.secretlab.ca/git/linux-2.6 2010-03-18 17:01:19 -07:00
s390 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2010-03-12 16:04:50 -08:00
score ptrace: move user_enable_single_step & co prototypes to linux/ptrace.h 2010-03-12 15:52:38 -08:00
sh Merge branch 'perf-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2010-03-18 16:52:46 -07:00
sparc Merge branch 'perf-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2010-03-13 14:39:42 -08:00
um um: remove dma_sync_single_range 2010-03-12 15:52:40 -08:00
x86 Merge branch 'perf-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2010-03-18 16:52:46 -07:00
xtensa Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2010-03-12 16:04:50 -08:00
.gitignore
Kconfig Merge branch 'perf-probes-for-linus-2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2010-03-05 10:50:22 -08:00