diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2009-12-08 22:27:08 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2009-12-08 22:27:08 -0500 |
commit | 60d8ce2cd6c283132928c11f3fd57ff4187287e0 (patch) | |
tree | 36d08a2ead7a7d8c3c081d484215ccca00bf6aab /init | |
parent | 849e8dea099aafa56db9e74b580b0d858b956533 (diff) | |
parent | feae3203d711db0a9965300ee6d592257fdaae4f (diff) |
Merge branch 'timers-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
* 'timers-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
timers, init: Limit the number of per cpu calibration bootup messages
posix-cpu-timers: optimize and document timer_create callback
clockevents: Add missing include to pacify sparse
x86: vmiclock: Fix printk format
x86: Fix printk format due to variable type change
sparc: fix printk for change of variable type
clocksource/events: Fix fallout of generic code changes
nohz: Allow 32-bit machines to sleep for more than 2.15 seconds
nohz: Track last do_timer() cpu
nohz: Prevent clocksource wrapping during idle
nohz: Type cast printk argument
mips: Use generic mult/shift factor calculation for clocks
clocksource: Provide a generic mult/shift factor calculation
clockevents: Use u32 for mult and shift factors
nohz: Introduce arch_needs_cpu
nohz: Reuse ktime in sub-functions of tick_check_idle.
time: Remove xtime_cache
time: Implement logarithmic time accumulation
Diffstat (limited to 'init')
-rw-r--r-- | init/calibrate.c | 24 |
1 files changed, 15 insertions, 9 deletions
diff --git a/init/calibrate.c b/init/calibrate.c index a379c9061199..6eb48e53d61c 100644 --- a/init/calibrate.c +++ b/init/calibrate.c | |||
@@ -123,23 +123,26 @@ void __cpuinit calibrate_delay(void) | |||
123 | { | 123 | { |
124 | unsigned long ticks, loopbit; | 124 | unsigned long ticks, loopbit; |
125 | int lps_precision = LPS_PREC; | 125 | int lps_precision = LPS_PREC; |
126 | static bool printed; | ||
126 | 127 | ||
127 | if (preset_lpj) { | 128 | if (preset_lpj) { |
128 | loops_per_jiffy = preset_lpj; | 129 | loops_per_jiffy = preset_lpj; |
129 | printk(KERN_INFO | 130 | if (!printed) |
130 | "Calibrating delay loop (skipped) preset value.. "); | 131 | pr_info("Calibrating delay loop (skipped) " |
131 | } else if ((smp_processor_id() == 0) && lpj_fine) { | 132 | "preset value.. "); |
133 | } else if ((!printed) && lpj_fine) { | ||
132 | loops_per_jiffy = lpj_fine; | 134 | loops_per_jiffy = lpj_fine; |
133 | printk(KERN_INFO | 135 | pr_info("Calibrating delay loop (skipped), " |
134 | "Calibrating delay loop (skipped), " | ||
135 | "value calculated using timer frequency.. "); | 136 | "value calculated using timer frequency.. "); |
136 | } else if ((loops_per_jiffy = calibrate_delay_direct()) != 0) { | 137 | } else if ((loops_per_jiffy = calibrate_delay_direct()) != 0) { |
137 | printk(KERN_INFO | 138 | if (!printed) |
138 | "Calibrating delay using timer specific routine.. "); | 139 | pr_info("Calibrating delay using timer " |
140 | "specific routine.. "); | ||
139 | } else { | 141 | } else { |
140 | loops_per_jiffy = (1<<12); | 142 | loops_per_jiffy = (1<<12); |
141 | 143 | ||
142 | printk(KERN_INFO "Calibrating delay loop... "); | 144 | if (!printed) |
145 | pr_info("Calibrating delay loop... "); | ||
143 | while ((loops_per_jiffy <<= 1) != 0) { | 146 | while ((loops_per_jiffy <<= 1) != 0) { |
144 | /* wait for "start of" clock tick */ | 147 | /* wait for "start of" clock tick */ |
145 | ticks = jiffies; | 148 | ticks = jiffies; |
@@ -170,7 +173,10 @@ void __cpuinit calibrate_delay(void) | |||
170 | loops_per_jiffy &= ~loopbit; | 173 | loops_per_jiffy &= ~loopbit; |
171 | } | 174 | } |
172 | } | 175 | } |
173 | printk(KERN_CONT "%lu.%02lu BogoMIPS (lpj=%lu)\n", | 176 | if (!printed) |
177 | pr_cont("%lu.%02lu BogoMIPS (lpj=%lu)\n", | ||
174 | loops_per_jiffy/(500000/HZ), | 178 | loops_per_jiffy/(500000/HZ), |
175 | (loops_per_jiffy/(5000/HZ)) % 100, loops_per_jiffy); | 179 | (loops_per_jiffy/(5000/HZ)) % 100, loops_per_jiffy); |
180 | |||
181 | printed = true; | ||
176 | } | 182 | } |