diff options
author | Ralf Baechle <ralf@linux-mips.org> | 2006-10-23 14:22:06 +0200 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2006-10-30 22:41:26 +0100 |
commit | be609f3546d3dd96afd7df8856a91fa2b8825fbc (patch) | |
tree | 6fa59e7b9046908191b23e5bd226bcbce47b8342 /arch/mips/oprofile | |
parent | [PATCH] fix i386 regparm=3 RT signal handlers on x86_64 (diff) | |
download | linux-be609f3546d3dd96afd7df8856a91fa2b8825fbc.tar.xz linux-be609f3546d3dd96afd7df8856a91fa2b8825fbc.zip |
[MIPS] Oprofile: fix on non-VSMP / non-SMTC SMP configurations.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch/mips/oprofile')
-rw-r--r-- | arch/mips/oprofile/op_model_mipsxx.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/arch/mips/oprofile/op_model_mipsxx.c b/arch/mips/oprofile/op_model_mipsxx.c index dd0aec9c3ce1..ebce715f076d 100644 --- a/arch/mips/oprofile/op_model_mipsxx.c +++ b/arch/mips/oprofile/op_model_mipsxx.c @@ -31,16 +31,18 @@ #define M_COUNTER_OVERFLOW (1UL << 31) #ifdef CONFIG_MIPS_MT_SMP -#define WHAT (M_TC_EN_VPE | M_PERFCTL_VPEID(smp_processor_id())) +#define WHAT (M_TC_EN_VPE | M_PERFCTL_VPEID(smp_processor_id())) +#define vpe_id() smp_processor_id() #else -#define WHAT 0 +#define WHAT 0 +#define vpe_id() smp_processor_id() #endif #define __define_perf_accessors(r, n, np) \ \ static inline unsigned int r_c0_ ## r ## n(void) \ { \ - unsigned int cpu = smp_processor_id(); \ + unsigned int cpu = vpe_id(); \ \ switch (cpu) { \ case 0: \ @@ -55,7 +57,7 @@ static inline unsigned int r_c0_ ## r ## n(void) \ \ static inline void w_c0_ ## r ## n(unsigned int value) \ { \ - unsigned int cpu = smp_processor_id(); \ + unsigned int cpu = vpe_id(); \ \ switch (cpu) { \ case 0: \ |