Context: The ffclock_boottime variable holds the UTC timestamp of system
boot for the FFclock. For the FFclock this is a global, whereas for the
FBclock the corresponding th_boottime is a per-tick quantity stored as a
member of timehands. The latter approach is superior as otherwise the
boottime value can be out of sync with other clock parameters across
ticks, for example after resets.
This commit re-engineers ffclock_boottime to be a per-tick variable
under fftimehands. The setting of its value sits naturally within the
tick update code in the reset_FBbootime branch of ffclock_windup.
For the reading of FFclocks, responsibility for FFLOCK_UPTIME flag
processing has been moved from kern_ffclock.c:ffclock_abstime, to
ffclock_last_tick and ffclock_convert_abs in kern_tc.c, where
fftimehands is accessible. Other changes are straightforward.