On 06/13/2013 04:13 AM, Eliezer Tamir wrote:On 13/06/2013 05:01, Stephen Hemminger wrote:On Wed, 12 Jun 2013 15:12:05 -0700 (PDT)
David Miller <davem@xxxxxxxxxxxxx> wrote:
From: Eliezer Tamir <eliezer.tamir@xxxxxxxxxxxxxxx>
Date: Tue, 11 Jun 2013 17:24:28 +0300
depends on X86_TSC
Wait a second, I didn't notice this before. There needs to be a better
way to test for the accuracy you need, or if the issue is lack of a
proper
API for cycle counter reading, fix that rather than add ugly arch
specific dependencies to generic networking code.
This should be sched_clock(), rather than direct TSC access.
Also any code using TSC or sched_clock has to be carefully audited to
deal with
clocks running at different rates on different CPU's. Basically value
is only
meaning full on same CPU.
OK,
If we covert to sched_clock(), would adding a define such as
HAVE_HIGH_PRECISION_CLOCK to architectures that have both a high
precision clock and a 64 bit cycles_t be a good solution?
(if not any other suggestion?)
Hm, probably cpu_clock() and similar might be better, since they use
sched_clock() in the background when !CONFIG_HAVE_UNSTABLE_SCHED_CLOCK
(meaning when sched_clock() provides synchronized highres time source from
the architecture), and, quoting ....