[CRIU] [PATCH v9 05/10] parse: add a helper to obtain an uptime
Pavel Tikhomirov
ptikhomirov at virtuozzo.com
Tue Apr 3 16:24:50 MSK 2018
On 04/03/2018 04:11 PM, Dmitry Safonov wrote:
> 2018-04-03 10:34 GMT+01:00 Pavel Tikhomirov <ptikhomirov at virtuozzo.com>:
> [..]
>> +
>> +#define CSEC_PER_SEC 100
>> +
>> +__maybe_unused int parse_uptime(u_int64_t *upt)
>
> Nit: can we use uint64_t?
> I see u_int64_t the first time and git says we've it only in one other place.
Oops, I brought it from encode_time - will use uint64_t instead, thanks!
>
>> +{
>> + unsigned long sec, csec;
>> + FILE *f;
>> +
>> + f = fopen("/proc/uptime", "r");
>> + if (!f) {
>> + pr_perror("Failed to fopen /proc/uptime");
>> + return -1;
>> + }
>> +
>> + if (fscanf(f, "%lu.%2lu", &sec, &csec) != 2) {
>> + pr_perror("Failed to parse /proc/uptime");
>> + fclose(f);
>> + return -1;
>> + }
>> +
>> + *upt = sec * USEC_PER_SEC + csec * (USEC_PER_SEC / CSEC_PER_SEC);
>
> It's not clear from the commit message, why do you save time in usec,
> rather than in csec?
I thought it would be better to have usec in image, so when/if we have
more precise uptime we can just reuse same variable in image and won't
need adding another one.
>
> Thanks,
> Dmitry
>
--
Best regards, Tikhomirov Pavel
Software Developer, Virtuozzo.
More information about the CRIU
mailing list