On Tue, 28 Feb 2017, Andreas F?rber wrote:
This is a callback, which I thought is re-entrant.
It's not reentrant at least not on the same CPU. On a SMP machine this
function might be called concurrently on several cores (assumed that the
whole thing is replicated across cores).
VAL changes when the timer is running, and CTL changes every time we
enable the timer. We could call _reset() here, but then we would be
initializing CMP twice, which again would be less performant then just
setting the registers to their final values directly.
Makes sense.
Thanks,
tglx