• Will Deacon's avatar
    ARM: 6072/1: oprofile: use perf-events framework as backend · 8c1fc96f
    Will Deacon authored
    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: default avatarWill Deacon <will.deacon@arm.com>
    Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
    8c1fc96f
common.c 8.99 KB