2005-09-20 10:02:31

by Pierre Ossman

[permalink] [raw]
Subject: sched_clock() has poor resolution

I've been trying to hunt down a HZ bug and as part of that I thought
having printk timestamps would be nice. But too much dismay I noticed
that I couldn't get very good resolution out of these.

The problem turned out to be that sched_clock() uses jiffies as a time
source. It will only use the TSC if that's the primary time source of
the system. But since I have a PM timer that is given priority.

So I see two solutions here:

* Let sched_clock() follow the time source. Don't have it coupled to
the TSC.

* Init the TSC even though it isn't used for anything but sched_clock().

The first solution might have problems if one of the "better" timers are
slow as hell to read and the second if there is some assumed dependency
between sched_clock() and the primary timer. I'm blisfully ignorant of
this area so input is welcome.

Rgds
Pierre