diff options
author | Donald Sharp <sharpd@cumulusnetworks.com> | 2017-09-14 21:57:54 +0200 |
---|---|---|
committer | Donald Sharp <sharpd@cumulusnetworks.com> | 2017-09-14 22:03:26 +0200 |
commit | ab0f1135b542d63df2eece36315d5592c8ec2cce (patch) | |
tree | 357a57f7cfec72fda85b4208d64425956dc340b5 /ospf6d | |
parent | Merge pull request #1178 from donaldsharp/pim_obfuscation (diff) | |
download | frr-ab0f1135b542d63df2eece36315d5592c8ec2cce.tar.xz frr-ab0f1135b542d63df2eece36315d5592c8ec2cce.zip |
ospf6d: Note when we calculated spf
Fixes: #1181
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
Diffstat (limited to 'ospf6d')
-rw-r--r-- | ospf6d/ospf6_spf.c | 4 | ||||
-rw-r--r-- | ospf6d/ospf6_top.c | 2 |
2 files changed, 5 insertions, 1 deletions
diff --git a/ospf6d/ospf6_spf.c b/ospf6d/ospf6_spf.c index 6d589aff8..ccfa25aaa 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 e77bf690f..9794e92b0 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); |