summaryrefslogtreecommitdiffstats
path: root/arch/x86/oprofile/op_x86_model.h
diff options
context:
space:
mode:
authorRobert Richter <robert.richter@amd.com>2010-05-05 17:47:17 +0200
committerRobert Richter <robert.richter@amd.com>2010-05-06 15:11:15 +0200
commitbae663bc635e2726c7c5228dbf0f2051e16d1c81 (patch)
tree4330eb087e99c223d7d60d806d9fcf786482686b /arch/x86/oprofile/op_x86_model.h
parent3de668ee8d5b1e08da3200f926ff5a28aeb99bc2 (diff)
downloadlinux-bae663bc635e2726c7c5228dbf0f2051e16d1c81.tar.gz
linux-bae663bc635e2726c7c5228dbf0f2051e16d1c81.tar.bz2
linux-bae663bc635e2726c7c5228dbf0f2051e16d1c81.zip
oprofile/x86: make AMD IBS hotplug capable
Current IBS code is not hotplug capable. An offline cpu might not be initialized or deinitialized properly. This patch fixes this by removing on_each_cpu() functions. The IBS init/deinit code is executed in the per-cpu functions model->setup_ctrs() and model->cpu_down() which are also called by hotplug notifiers. model->cpu_down() replaces model->exit() that became obsolete. Cc: Andi Kleen <andi@firstfloor.org> Signed-off-by: Robert Richter <robert.richter@amd.com>
Diffstat (limited to 'arch/x86/oprofile/op_x86_model.h')
-rw-r--r--arch/x86/oprofile/op_x86_model.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/x86/oprofile/op_x86_model.h b/arch/x86/oprofile/op_x86_model.h
index 551401398fba..89017fa1fd63 100644
--- a/arch/x86/oprofile/op_x86_model.h
+++ b/arch/x86/oprofile/op_x86_model.h
@@ -40,10 +40,10 @@ struct op_x86_model_spec {
u64 reserved;
u16 event_mask;
int (*init)(struct oprofile_operations *ops);
- void (*exit)(void);
int (*fill_in_addresses)(struct op_msrs * const msrs);
void (*setup_ctrs)(struct op_x86_model_spec const *model,
struct op_msrs const * const msrs);
+ void (*cpu_down)(void);
int (*check_ctrs)(struct pt_regs * const regs,
struct op_msrs const * const msrs);
void (*start)(struct op_msrs const * const msrs);