2006-09-13 19:33:55

by Ryan C. Underwood

[permalink] [raw]
Subject: odd cpu_khz behavior (doubling)


OK, I realize cpu_khz should not be constant. I wrote a cpufreq driver
for Toshiba laptops that has two CPU speeds (1/2 and full) and that is
managed via SMM. Can anyone tell me why cpu_khz occasionally doubles
itself while the driver is in use? It starts at ~120000, then doubles
to ~240000, then to ~480000, etc. However, this is over ~15 loads and
unloads of the cpufreq target driver. Small cpu_khz variations would
not bother anything wrt the cpufreq driver, but this is just plain
incorrect for things like /proc/cpuinfo which also use cpu_khz.

Is this a TSC issue (maybe related to SMM) or am I just doing something
in the wrong place in the driver?

Attached is the cpufreq part of the code, just a testing version.

--
Ryan Underwood, <[email protected]>


Attachments:
(No filename) (775.00 B)
toshiba_freq.c (7.12 kB)
Download all attachments