diff options
Diffstat (limited to 'init')
-rw-r--r-- | init/calibrate.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/init/calibrate.c b/init/calibrate.c index 24df7976816c..ebab7b344a65 100644 --- a/init/calibrate.c +++ b/init/calibrate.c @@ -10,6 +10,7 @@ #include <linux/timex.h> #include <linux/smp.h> #include <linux/percpu.h> +#include <asm/cpu.h> unsigned long lpj_fine; unsigned long preset_lpj; @@ -244,16 +245,14 @@ recalibrate: return lpj; } -static DEFINE_PER_CPU(unsigned long, cpu_loops_per_jiffy) = { 0 }; - void __cpuinit calibrate_delay(void) { unsigned long lpj; static bool printed; int this_cpu = smp_processor_id(); - if (per_cpu(cpu_loops_per_jiffy, this_cpu)) { - lpj = per_cpu(cpu_loops_per_jiffy, this_cpu); + if (per_cpu(cpu_data, this_cpu).loops_per_jiffy) { + lpj = per_cpu(cpu_data, this_cpu).loops_per_jiffy; pr_info("Calibrating delay loop (skipped) " "already calibrated this CPU"); } else if (preset_lpj) { @@ -274,7 +273,7 @@ void __cpuinit calibrate_delay(void) pr_info("Calibrating delay loop... "); lpj = calibrate_delay_converge(); } - per_cpu(cpu_loops_per_jiffy, this_cpu) = lpj; + per_cpu(cpu_data, this_cpu).loops_per_jiffy = lpj; if (!printed) pr_cont("%lu.%02lu BogoMIPS (lpj=%lu)\n", lpj/(500000/HZ), |