aboutsummaryrefslogtreecommitdiffstats
path: root/src/vnet/bfd/bfd_main.c
diff options
context:
space:
mode:
authorDave Barach <dave@barachs.net>2020-01-29 18:05:24 -0500
committerFlorin Coras <florin.coras@gmail.com>2020-01-30 20:45:18 +0000
commitc25048bd05a319511aa7386f75e1fae2b2a623c4 (patch)
tree4254d34aba20058eb04213ffe4ab738f0dc250fd /src/vnet/bfd/bfd_main.c
parent91592c0c9cdd1bc61a2796e41a8becc30aaf8082 (diff)
vppinfra: improve clocks_per_second convergence
Apply exponential smoothing to the clock rate update calculation in clib_time_verify_frequency(), with a half-life of 1 minute and a sampling frequency of 16 seconds. Within 5 minutes or so, the calculation converges With each rate recalculation: reset total_cpu_time based on the kernel timebase delta since vpp started, and the new clock rate Improve the "show clock [verbose]" debug CLI command. BFD echo + echo fail tests marked off until the BFD code can be reworked a bit. Type: fix Signed-off-by: Dave Barach <dave@barachs.net> Change-Id: I24e88a78819b12867736c875067b386ef6115c5c
Diffstat (limited to 'src/vnet/bfd/bfd_main.c')
-rw-r--r--src/vnet/bfd/bfd_main.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/vnet/bfd/bfd_main.c b/src/vnet/bfd/bfd_main.c
index 34e98042e86..a9a6d054636 100644
--- a/src/vnet/bfd/bfd_main.c
+++ b/src/vnet/bfd/bfd_main.c
@@ -1327,7 +1327,7 @@ bfd_main_init (vlib_main_t * vm)
bm->vlib_main = vm;
bm->vnet_main = vnet_get_main ();
clib_memset (&bm->wheel, 0, sizeof (bm->wheel));
- bm->cpu_cps = vm->clib_time.clocks_per_second;
+ bm->cpu_cps = (u64) vm->clib_time.clocks_per_second;
BFD_DBG ("cps is %.2f", bm->cpu_cps);
bm->default_desired_min_tx_clocks =
bfd_usec_to_clocks (bm, BFD_DEFAULT_DESIRED_MIN_TX_USEC);