x86: warn of incorrect cpu_khz on AMD systems
Impact: add debug check If none of the perfctrs are free when calculating cpu_khz we default to using ctr 3 (ie, we just choose 3). This may lead to an incorrect tsc freq value which can cause the system to be unstable. To aid in future debugging, WARN the user of a potential problem. Signed-off-by: Prarit Bhargava <prarit@redhat.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
parent
6cf87efbc7
commit
8652cb4b0d
@ -80,6 +80,8 @@ unsigned long __init calibrate_cpu(void)
|
|||||||
break;
|
break;
|
||||||
no_ctr_free = (i == 4);
|
no_ctr_free = (i == 4);
|
||||||
if (no_ctr_free) {
|
if (no_ctr_free) {
|
||||||
|
WARN(1, KERN_WARNING "Warning: AMD perfctrs busy ... "
|
||||||
|
"cpu_khz value may be incorrect.\n");
|
||||||
i = 3;
|
i = 3;
|
||||||
rdmsrl(MSR_K7_EVNTSEL3, evntsel3);
|
rdmsrl(MSR_K7_EVNTSEL3, evntsel3);
|
||||||
wrmsrl(MSR_K7_EVNTSEL3, 0);
|
wrmsrl(MSR_K7_EVNTSEL3, 0);
|
||||||
|
Loading…
Reference in New Issue
Block a user