Subject: Re: Proposed changes to cc_microset().
To: Alan Barrett <apb@cequrux.com>
From: Frederick Bruckman <fredb@immanent.net>
List: tech-kern
Date: 07/08/2004 14:40:28
On Thu, 8 Jul 2004, Alan Barrett wrote:
> Well, there's no nominal CPU speed in MI code, but MD code could have
> such a thing. For example, the i386 speedstep code knows (or could
> know) both the old and new values of machdep.est.frequency.target. They
> could be passed to an MI function that did something like this (details
> are probably wrong):
In that case, we could just set ci_tsc_freq from that, and setting
ci_cc_denom to zero (for each CPU) could force use of ci_tsc_freq to
be used as a fallback until a proper calculation can be made.
(Currently, it doesn't exactly do that.) There's no need to reproduce
much of cc_microset() in the est driver.
> Right. But when i386 MD code changes machdep.est.frequency.target from
> the value it had at boot time to some new value, wouldn't it make sense
> to also change ci_tsc_freq by the same ratio?
Sure, but you have to do it for each CPU.
> And perhaps also add a
> way to to save a different value of ci_tsc_freq for each speed known by
> the MD code?
I'm not following you.
Frederick