From: Ed W <lists@wildgooses.com>
To: john stultz <johnstul@us.ibm.com>
Cc: linux-kernel@vger.kernel.org
Subject: Re: Improved TSC calculation
Date: Fri, 09 Dec 2011 13:01:32 +0000 [thread overview]
Message-ID: <4EE206AC.6060800@wildgooses.com> (raw)
In-Reply-To: <1302805253.2673.17.camel@work-vm>
On 14/04/2011 19:20, john stultz wrote:
> On Thu, 2011-04-14 at 12:19 +0100, Ed W wrote:
>> Hi, Thanks for the new stable TSC calculation commit
>> (08ec0c58fb8a05d3191d5cb6f5d6f81adb419798).
>>
>> My situation is that I don't have a PM or HPET timer (x86 Alix board),
>> and my requirements are embedded type use, but with only intermittently
>> connected network/gps, so accurate timekeeping between reboots is
>> important.
>>
>> I had been experimenting with extending the existing PIT timer routines
>> at boot, but I had the problem that it was taking 1s+ to get a very
>> stable calculation (which is undesirable for my requirements), however,
>> having spotted your commit it seems like a much more sensible solution.
> Thanks!
>
>> Before I try and hack probably an (inadequate) solution myself, do you
>> have any thoughts on the best solution to extend your commit to non
>> PM/HEPT machine? My initial thought was to repeatedly call
>> pit_calibrate_tsc() with an extended latch, looking for a stable
>> solution (ie refactor native_calibrate_tsc() ). Is this workable?
>> Better ideas?
> Oof. So with the PIT you can maybe utilize the second channel/counter,
> using a largish long countdown to try to get a similar functionality.
> The only big concern is that the timer interrupt hardware is always
> problematic (every time we chanage our usage, some random chunk of
> laptops seem to stop working). So whatever solution that works for you
> might not be able to be generically deployed. But I think it could be
> interesting and might be worth you giving it a shot.
>
> I'd probably look at reworking tsc_refine_calibration_work, extending
> the tsc_read_refs() code to also get PIT count values and then start the
> long PIT countdown on the second channel before we
> schedule_delayed_work.
>
> thanks
> -john
>
Hi John
I don't suppose you ever gave any thought to looking into this
yourself... :-)
I have had a poke, but I'm way out of my depth trying to figure out a
good solution.
For reference my goal was to get a stable TSC calculation for my
PCEngines Alix boards, which are basically popular, low cost x86
compatible boards, but without HPET or PM. I rather want to use them as
way to get more reliable Stratum 1 NTP servers out in the wild -
hopefully by documenting them as a very low cost solution to pair with a
GPS. Having them somewhat clock stable with respect to reboot would be
handy
It's a big ask, so understand that you are probably going to discard
this email
Thanks for listening and your advice so far
All the best
Ed W
next prev parent reply other threads:[~2011-12-09 13:11 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-04-14 11:19 Improved TSC calculation Ed W
2011-04-14 18:20 ` john stultz
2011-04-20 15:10 ` Ed W
2011-12-09 13:01 ` Ed W [this message]
2011-12-09 18:55 ` john stultz
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4EE206AC.6060800@wildgooses.com \
--to=lists@wildgooses.com \
--cc=johnstul@us.ibm.com \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.