Ralf Baechle wrote:
> The CPU clock frequency may change at any time due to clockscaling A
> process might be rescheduled to another CPU running at a different clock
> rate. A suspended process might miss counter wraparounds.
> This right approach is to handle this in a virtual syscall, something like
Thomas Gleixner wrote:
> Right. We had this discussion on x86 over and over and using a
> vsyscall is the correct approach. That's also a huge win in general if
> you can avoid going into the kernel to read the time. gettimeofday()
> and clock_gettime() belong to the most frequently called syscalls on
> any Linux system.
Yes, I have seen that code on x86, and I completely agree with you both. The
that Ralf described pertinent, but for my currently application the win of
not going to the kernel that Thomas described is much more important.
I would very much like to go down the vsyscall route, but I can't see any
of that infrastructure in the arch/mips subdirectories.
It seems to me that that work has not been started for MIPS. Am I mistaken ?
[ I'm trying to figure out where I should start. ]
Looking in /proc/cpuinfo for x86 I see:
> processor : 0
> vendor_id : GenuineIntel
> cpu family : 6
> model : 28
> model name : Intel(R) Atom(TM) CPU D510 @ 1.66GHz
> stepping : 10
> cpu MHz : 1666.670
This makes available the clock frequency of the CPU. To get similar information
for MIPS, I need to rummage around inside dmesg:
> CPU revision is: 00019374 (MIPS 24Kc)
> Atheros AR7161 rev 2, CPU:680.000 MHz, AHB:170.000 MHz, DDR:340.000 MHz
Would you be averse to publishing additional CPU information (include cpu MHz)
in /proc/cpuinfo for MIPS ?