A further though on /proc/PID/timens_offsets

From: Michael Kerrisk (man-pages)
Date: Tue Apr 07 2020 - 09:24:21 EST


Hello Dmitry, Andrei,

Quoting the draft time_namespaces manual page:

Associated with each time namespace are offsets, expressed with
respect to the initial time namespace, that define the values of
the monotonic and boot-time clocks in that namespace. These offâ
sets are exposed via the file /proc/PID/timens_offsets. Within
this file, the offsets are expressed as lines consisting of three
space-delimited fields:

<clock-id> <offset-secs> <offset-nanosecs>

The clock-id identifies the clock whose offsets are being shown.
This field is either 1, for CLOCK_MONOTONIC, or 7, for CLOCK_BOOTâ
TIME.

What was the reason for exposing numeric clock IDs in the
timens_offsets file? In API terms, that seems a little ugly.

I think it would have been much nicer if the clocks were defined
symbolically in this file. I.e., that reading the file would have
shown something like

monotonic x y
boottime x y

And that records similarly with symbolic clock names could have
been written to the file. Was there a reason not to do this?

Thanks,

Michael

--
Michael Kerrisk
Linux man-pages maintainer; http://www.kernel.org/doc/man-pages/
Linux/UNIX System Programming Training: http://man7.org/training/