From ab0f1135b542d63df2eece36315d5592c8ec2cce Mon Sep 17 00:00:00 2001 From: Donald Sharp Date: Thu, 14 Sep 2017 15:57:54 -0400 Subject: [PATCH] ospf6d: Note when we calculated spf Fixes: #1181 Signed-off-by: Donald Sharp --- ospf6d/ospf6_spf.c | 4 ++++ ospf6d/ospf6_top.c | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/ospf6d/ospf6_spf.c b/ospf6d/ospf6_spf.c index 6d589aff8f..ccfa25aaa8 100644 --- a/ospf6d/ospf6_spf.c +++ b/ospf6d/ospf6_spf.c @@ -576,6 +576,7 @@ static int ospf6_spf_calculation_thread(struct thread *t) /* execute SPF calculation */ monotime(&start); + ospf6->ts_spf = start; if (ospf6_is_router_abr(ospf6)) ospf6_abr_range_reset_cost(ospf6); @@ -585,6 +586,7 @@ static int ospf6_spf_calculation_thread(struct thread *t) if (oa == ospf6->backbone) continue; + monotime(&oa->ts_spf); if (IS_OSPF6_DEBUG_SPF(PROCESS)) zlog_debug("SPF calculation for Area %s", oa->name); if (IS_OSPF6_DEBUG_SPF(DATABASE)) @@ -598,6 +600,7 @@ static int ospf6_spf_calculation_thread(struct thread *t) } if (ospf6->backbone) { + monotime(&ospf6->backbone->ts_spf); if (IS_OSPF6_DEBUG_SPF(PROCESS)) zlog_debug("SPF calculation for Backbone area %s", ospf6->backbone->name); @@ -632,6 +635,7 @@ static int ospf6_spf_calculation_thread(struct thread *t) "Reason: %s\n", areas_processed, (long long)runtime.tv_sec, (long long)runtime.tv_usec, rbuf); + ospf6->last_spf_reason = ospf6->spf_reason; ospf6_reset_spf_reason(ospf6); return 0; diff --git a/ospf6d/ospf6_top.c b/ospf6d/ospf6_top.c index e77bf690f3..9794e92b06 100644 --- a/ospf6d/ospf6_top.c +++ b/ospf6d/ospf6_top.c @@ -832,7 +832,7 @@ static void ospf6_show(struct vty *vty, struct ospf6 *o) (long long)o->ts_spf_duration.tv_sec, (long long)o->ts_spf_duration.tv_usec); } else - vty_out(vty, "has not been run$\n"); + vty_out(vty, "has not been run\n"); threadtimer_string(now, o->t_spf_calc, buf, sizeof(buf)); vty_out(vty, " SPF timer %s%s\n", (o->t_spf_calc ? "due in " : "is "), buf); -- 2.39.5