Messages in this thread | | | Date | Thu, 26 Jun 2008 19:35:36 +0200 | From | Pavel Machek <> | Subject | Re: [RFC PATCH] x86:Use cpu_khz for loops_per_jiffy calculation |
| |
On Thu 2008-06-26 10:20:31, Alok Kataria wrote: > On Tue, 2008-06-24 at 10:57 -0700, Pavel Machek wrote: > > Hi! > > > > > On X86 platform we can use the value of tsc_khz computed during tsc calibration > > > to calculate the loops_per_jiffy value. Its very important to keep the error in > > > lpj values to minimum as any error in that may result in kernel panic in > > > check_timer. > > > In virtualization environment, On a highly overloaded host the guest delay > > > calibration may sometimes result in errors beyond the ~50% that timer_irq_works > > > can handle, resulting in the guest panicking. > > > > How did you adress 'khz has nothing to do with loops per jiffie' > > comment? > > > > Some cpus can do loop in cycle , some need two cycles, some need half. > > Hi Pavel, > > When you say loops per jiffies has nothing to do with khz, by khz you > mean the cpu frequency, right ?
Yes.
> AFAIU in calibrate_delay_direct too we measure the amount by which timer > has ticked until DELAY_CALIBRATION_TICKS amount of jiffies has passed. > So IMO the code there too assumes that there is one loop per timer > cycle ?
On my machine, it reports:
delay using timer specific routine.. 3661.98 BogoMIPS (lpj=7323971) ... Detected 1828.828 MHz processor.
(/proc/cpuinfo) model name : Genuine Intel(R) CPU T2400 @ 1.83GHz ... cpu MHz : 1000.000 ... bogomips : 3657.54
So you'd break it by setting lpj (aka bogomips) to cpu_khz, right?
Pavel -- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
| |