[SeaBIOS] [PATCH] tsc: use kvmclock for calibration
Marcelo Tosatti
mtosatti at redhat.com
Fri Aug 10 23:26:05 CEST 2012
On Fri, Aug 10, 2012 at 10:10:27AM +0200, Gerd Hoffmann wrote:
> Hi,
>
> >>> (1) Use this patch (with alignment issue fixed of course).
> >>> (2) Do a full kvmclock implementation. Feels a bit like overkill.
> >>> (3) SeaBIOS can fallback to the PIT for timing on machines which
> >>> have no TSC. We could do that too in case we detect kvm ...
> >>
> >> What sort of timeouts are these? If seconds, maybe the rtc would be best.
> >
> > I vote for 3 so nobody has to maintain kvmclock code in SeaBIOS and Gerd
> > can fix the in-kernel PIT issues with GRUB (see Michaels message) while testing.
>
> (2) turned out to be not too bad when taking a shortcut: Go through an
> enable/disable cycle each time we read the clock, then just grab
> system_time. Not that efficient, but should be ok for seabios. Usually
> it checks the clock when sitting around idle, waiting for something to
> happen. And it simplifies the implementation alot as we can just skip
> all the tsc frequency & delta calculations.
>
> Draft patch attached. Comments?
Given the history of problems with kvmclock, would rather see it not
being used for delays, if possible. Your shortcut gets rid of a class of
problems, but there might be others (...).
Isnt pmtimer ioport usable? 14MHz.
Error handling in kvmclock_init is awkward.
Thanks
More information about the SeaBIOS
mailing list