[PATCH 0/23] updates for oprofile

Robert Richter
2009-06-12T13:14:32Z

These patches are updates for oprofile, mainly for x86. Most patches
for x86 replace many macro definitions by function calls and implement
internal 64 bit usage for MSR access. The code is now better readable
and maintainable. Future changes can be made easier.

Also, struct op_x86_model_spec has been extended to better describe
the x86 model. This patch series introduces common functions that can
be used by all x86 models. It is a first step to merge similar model
specific code and to get a common code base for all models.

Another change is the rework of arch_perfmon init code. There was
model specific code in nmi_int.c. This code is moved to
op_model_ppro.c by using the init function pointer in struct
op_x86_model_spec.

There are no functional changes in this patch set, it only contains
cleanups and reworks.

The following changes since commit 0886751c5d8b19fcee2e65d34ae21c9111e652a9:
Robert Richter (1):
Merge commit 'v2.6.30' into oprofile/master

are available in the git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/rric/oprofile.git master

-Robert

-----------

Robert Richter (23):
Revert "oprofile: discover counters for op ppro too"
x86/oprofile: moving arch_perfmon counter setup to op_x86_model_spec.init
x86/oprofile: minor style changes in struct op_x86_model_spec
oprofile: remove irq_flags in struct op_entry
oprofile: remove obselete include headers
x86/oprofile: remove #ifdefs in ibs functions
x86/oprofile: simplify AMD cpu init code
x86/oprofile: move common macros to op_x86_model.h
x86/oprofile: remove MSR macros for AMD cpus
x86/oprofile: remove MSR macros for ppro cpus
x86/oprofile: remove MSR macros for p4 cpus
x86/oprofile: fix and cleanup CTRL_SET_* macros
x86/oprofile: remove unused macros for AMD virtualization profiling
x86/oprofile: pass the model to setup_ctrs() functions
x86/oprofile: replace macros to calculate control register
x86/oprofile: replace CTR_OVERFLOWED macros
x86/oprofile: replace CTRL_SET_*ACTIVE macros
x86/oprofile: replace CTR*_IS_RESERVED macros
x86/oprofile: use 64 bit wrmsr functions
x86/oprofile: use 64 bit values to save MSR states
x86/oprofile: remove some local variables in MSR save/restore functions
x86/oprofile: use 64 bit values in IBS functions
x86/oprofile: introduce oprofile_add_data64()

arch/x86/oprofile/nmi_int.c | 98 +++++++-------
arch/x86/oprofile/op_model_amd.c | 267 ++++++++++++++++---------------------
arch/x86/oprofile/op_model_p4.c | 60 ++++-----
arch/x86/oprofile/op_model_ppro.c | 95 ++++++--------
arch/x86/oprofile/op_x86_model.h | 47 ++++---
drivers/oprofile/cpu_buffer.c | 16 ++-
include/linux/oprofile.h | 2 +-
7 files changed, 281 insertions(+), 304 deletions(-)