X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fvppinfra%2Ftime_range.c;h=20048f834d1de61525cba6a4d6852fea8d64bf51;hb=77ea42b31ae12f0aef829097225e353199360f30;hp=e502ca358dbd4e67f978a493d55e74bc06ebaacf;hpb=a98c40305deedc58860722fb9710075028c8b9f8;p=vpp.git diff --git a/src/vppinfra/time_range.c b/src/vppinfra/time_range.c index e502ca358db..20048f834d1 100644 --- a/src/vppinfra/time_range.c +++ b/src/vppinfra/time_range.c @@ -17,12 +17,20 @@ void clib_timebase_init (clib_timebase_t * tb, i32 timezone_offset_in_hours, - clib_timebase_daylight_time_t daylight_type) + clib_timebase_daylight_time_t daylight_type, + clib_time_t * clib_time) { - memset (tb, 0, sizeof (*tb)); + clib_memset (tb, 0, sizeof (*tb)); - clib_time_init (&tb->clib_time); - tb->time_zero = unix_time_now (); + if (clib_time == 0) + { + tb->clib_time = clib_mem_alloc_aligned + (sizeof (*clib_time), CLIB_CACHE_LINE_BYTES); + memset (tb->clib_time, 0, sizeof (*clib_time)); + clib_time_init (tb->clib_time); + } + else + tb->clib_time = clib_time; tb->timezone_offset = ((f64) (timezone_offset_in_hours)) * 3600.0; tb->daylight_time_type = daylight_type;