From: Willy Tarreau Date: Fri, 28 Apr 2023 13:57:18 +0000 (+0200) Subject: BUG/MINOR: stats: report the correct start date in "show info" X-Git-Tag: v2.8-dev9~14 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=7222db7b849ae80e2bfb573e2ef462d9b29406a2;p=thirdparty%2Fhaproxy.git BUG/MINOR: stats: report the correct start date in "show info" The "show info" help for "Start_time_sec" says "Start time in seconds" so it's definitely the start date in human format, not the internal one that is solely used to compute uptime. Since commit 28360dc ("MEDIUM: clock: force internal time to wrap early after boot"), both are split apart since the start time takes into account the offset needed to cause the early wraparound, so we must only use start_date here. No backport is needed. --- diff --git a/src/stats.c b/src/stats.c index 79a9a06879..17fb4d4160 100644 --- a/src/stats.c +++ b/src/stats.c @@ -4649,7 +4649,7 @@ int stats_fill_info(struct field *info, int len, uint flags) chunk_appendf(out, "%ud %uh%02um%02us", (uint)up.tv_sec / 86400, ((uint)up.tv_sec % 86400) / 3600, ((uint)up.tv_sec % 3600) / 60, ((uint)up.tv_sec % 60)); info[INF_UPTIME_SEC] = (flags & STAT_USE_FLOAT) ? mkf_flt(FN_DURATION, up.tv_sec + up.tv_usec / 1000000.0) : mkf_u32(FN_DURATION, up.tv_sec); - info[INF_START_TIME_SEC] = (flags & STAT_USE_FLOAT) ? mkf_flt(FN_DURATION, start_time.tv_sec + start_time.tv_usec / 1000000.0) : mkf_u32(FN_DURATION, start_time.tv_sec); + info[INF_START_TIME_SEC] = (flags & STAT_USE_FLOAT) ? mkf_flt(FN_DURATION, start_date.tv_sec + start_date.tv_usec / 1000000.0) : mkf_u32(FN_DURATION, start_date.tv_sec); info[INF_MEMMAX_MB] = mkf_u32(FO_CONFIG|FN_LIMIT, global.rlimit_memmax); info[INF_MEMMAX_BYTES] = mkf_u32(FO_CONFIG|FN_LIMIT, global.rlimit_memmax * 1048576L); info[INF_POOL_ALLOC_MB] = mkf_u32(0, (unsigned)(pool_total_allocated() / 1048576L));