From: Greg Banks oprofile alpha arch updates, including some internal API changes. Signed-off-by: John Levon Signed-off-by: Greg Banks Signed-off-by: Andrew Morton --- 25-akpm/arch/alpha/oprofile/common.c | 25 +++++++++---------------- 25-akpm/arch/alpha/oprofile/op_model_ev4.c | 3 +-- 25-akpm/arch/alpha/oprofile/op_model_ev5.c | 3 +-- 25-akpm/arch/alpha/oprofile/op_model_ev6.c | 3 +-- 25-akpm/arch/alpha/oprofile/op_model_ev67.c | 8 +++----- 5 files changed, 15 insertions(+), 27 deletions(-) diff -puN arch/alpha/oprofile/common.c~oprofile-update-alpha-for-api-changes arch/alpha/oprofile/common.c --- 25/arch/alpha/oprofile/common.c~oprofile-update-alpha-for-api-changes Tue Nov 9 13:55:27 2004 +++ 25-akpm/arch/alpha/oprofile/common.c Tue Nov 9 13:55:27 2004 @@ -138,17 +138,8 @@ op_axp_create_files(struct super_block * return 0; } -static struct oprofile_operations oprof_axp_ops = { - .create_files = op_axp_create_files, - .setup = op_axp_setup, - .shutdown = op_axp_shutdown, - .start = op_axp_start, - .stop = op_axp_stop, - .cpu_type = NULL /* To be filled in below. */ -}; - -int __init -oprofile_arch_init(struct oprofile_operations **ops) +void __init +oprofile_arch_init(struct oprofile_operations *ops) { struct op_axp_model *lmodel = NULL; @@ -175,16 +166,18 @@ oprofile_arch_init(struct oprofile_opera } if (!lmodel) - return -ENODEV; + return; model = lmodel; - oprof_axp_ops.cpu_type = lmodel->cpu_type; - *ops = &oprof_axp_ops; + ops->create_files = op_axp_create_files; + ops->setup = op_axp_setup; + ops->shutdown = op_axp_shutdown; + ops->start = op_axp_start; + ops->stop = op_axp_stop; + ops->cpu_type = lmodel->cpu_type; printk(KERN_INFO "oprofile: using %s performance monitoring.\n", lmodel->cpu_type); - - return 0; } diff -puN arch/alpha/oprofile/op_model_ev4.c~oprofile-update-alpha-for-api-changes arch/alpha/oprofile/op_model_ev4.c --- 25/arch/alpha/oprofile/op_model_ev4.c~oprofile-update-alpha-for-api-changes Tue Nov 9 13:55:27 2004 +++ 25-akpm/arch/alpha/oprofile/op_model_ev4.c Tue Nov 9 13:55:27 2004 @@ -101,8 +101,7 @@ ev4_handle_interrupt(unsigned long which return; /* Record the sample. */ - oprofile_add_sample(regs->pc, !user_mode(regs), - which, smp_processor_id()); + oprofile_add_sample(regs, which); } diff -puN arch/alpha/oprofile/op_model_ev5.c~oprofile-update-alpha-for-api-changes arch/alpha/oprofile/op_model_ev5.c --- 25/arch/alpha/oprofile/op_model_ev5.c~oprofile-update-alpha-for-api-changes Tue Nov 9 13:55:27 2004 +++ 25-akpm/arch/alpha/oprofile/op_model_ev5.c Tue Nov 9 13:55:27 2004 @@ -186,8 +186,7 @@ ev5_handle_interrupt(unsigned long which struct op_counter_config *ctr) { /* Record the sample. */ - oprofile_add_sample(regs->pc, !user_mode(regs), - which, smp_processor_id()); + oprofile_add_sample(regs, which); } diff -puN arch/alpha/oprofile/op_model_ev67.c~oprofile-update-alpha-for-api-changes arch/alpha/oprofile/op_model_ev67.c --- 25/arch/alpha/oprofile/op_model_ev67.c~oprofile-update-alpha-for-api-changes Tue Nov 9 13:55:27 2004 +++ 25-akpm/arch/alpha/oprofile/op_model_ev67.c Tue Nov 9 13:55:27 2004 @@ -138,8 +138,7 @@ op_add_pm(unsigned long pc, int kern, un if (counter == 1) fake_counter += PM_NUM_COUNTERS; if (ctr[fake_counter].enabled) - oprofile_add_sample(pc, kern, fake_counter, - smp_processor_id()); + oprofile_add_pc(pc, kern, fake_counter); } static void @@ -197,8 +196,7 @@ ev67_handle_interrupt(unsigned long whic to PALcode. Recognize ITB miss by PALcode offset address, and get actual PC from EXC_ADDR. */ - oprofile_add_sample(regs->pc, kern, which, - smp_processor_id()); + oprofile_add_pc(regs->pc, kern, which); if ((pmpc & ((1 << 15) - 1)) == 581) op_add_pm(regs->pc, kern, which, ctr, PM_ITB_MISS); @@ -241,7 +239,7 @@ ev67_handle_interrupt(unsigned long whic } } - oprofile_add_sample(pmpc, kern, which, smp_processor_id()); + oprofile_add_pc(pmpc, kern, which); pctr_ctl = wrperfmon(5, 0); if (pctr_ctl & (1UL << 27)) diff -puN arch/alpha/oprofile/op_model_ev6.c~oprofile-update-alpha-for-api-changes arch/alpha/oprofile/op_model_ev6.c --- 25/arch/alpha/oprofile/op_model_ev6.c~oprofile-update-alpha-for-api-changes Tue Nov 9 13:55:27 2004 +++ 25-akpm/arch/alpha/oprofile/op_model_ev6.c Tue Nov 9 13:55:27 2004 @@ -88,8 +88,7 @@ ev6_handle_interrupt(unsigned long which struct op_counter_config *ctr) { /* Record the sample. */ - oprofile_add_sample(regs->pc, !user_mode(regs), - which, smp_processor_id()); + oprofile_add_sample(regs, which); } _