On 10/27/2015 01:46 PM, Leonid Yegoshin wrote: [...]
And finally. clock scaling - what we would do if there are two CPUs with different clock ratios in system? It seems like common kernel timing subsystem can handle that.
The code that executes in userspace must have access to a consistent clock source. If you are running on a SMP system that doesn't have synchronized CP0.Count registers, then your gettimeofday() cannot use CP0.Count (RDHWR $2).
As far as I know, CP0.Count is the only available counter visible to userspace, so you would have to disable the accelerated versions of gettimeofday() where you cannot assert that the counters are always synchronized.
David Daney