Control: tag 1066090 fixed-upstream

On Wed, 13 Mar 2024 at 00:30, Tim Connors <tim.w.conn...@gmail.com> wrote:

> I'm guessing it's looking at field 22 starttime in /proc/$pid/stat?
> starttime is seconds since boot.  Since the process exists in the
> parent system as well, starttime will surely be seconds since host
> boot?  But /proc/uptime is seconds since container boot.
>
/proc/uptime is sometimes seconds since host boot and sometimes seconds
since container boot.

Generally docker is the former, LXC is the latter but it's not consistent.
You can tell because if you run the uptime command
you'll see the difference. LXC basically overrides the uptime file with a
fuse-mounted file.You'd probably see there
is an issue with things like "ps -o etimes" as well which is where this
first was noticed.

There is already an upstream fix for this[1] in procps which uses
clock_gettime() instead so the start times are correct.
killall would be impacted by the same issue.
 - Craig

1:
https://gitlab.com/procps-ng/procps/-/commit/b5e19c1730bcc68d553f44b5585704e3c92267bf#83c45d853acc8384452b404946e4a0c484b16a4e_1519_1515

Reply via email to