Threads usage cleanup. Still at least one bug to go.
diff --git a/isisd/isis_spf.c b/isisd/isis_spf.c
index 37c435e..a522877 100644
--- a/isisd/isis_spf.c
+++ b/isisd/isis_spf.c
@@ -944,15 +944,11 @@
spftree->pending = 0;
if (level == 1)
- spftree->t_spf_periodic = thread_add_timer (master,
- isis_run_spf_l1, area,
- isis_jitter
- (PERIODIC_SPF_INTERVAL, 10));
+ THREAD_TIMER_ON(master, spftree->t_spf_periodic, isis_run_spf_l1, area,
+ isis_jitter(PERIODIC_SPF_INTERVAL, 10));
else
- spftree->t_spf_periodic = thread_add_timer (master,
- isis_run_spf_l2, area,
- isis_jitter
- (PERIODIC_SPF_INTERVAL, 10));
+ THREAD_TIMER_ON(master, spftree->t_spf_periodic, isis_run_spf_l2, area,
+ isis_jitter(PERIODIC_SPF_INTERVAL, 10));
return retval;
}
@@ -1042,8 +1038,7 @@
spftree->pending = 1;
return retval;
}
- if (spftree->t_spf_periodic)
- thread_cancel (spftree->t_spf_periodic);
+ THREAD_TIMER_OFF(spftree->t_spf_periodic);
if (diff < MINIMUM_SPF_INTERVAL) {
if (level == 1)
@@ -1075,8 +1070,7 @@
diff = now - spftree->lastrun;
- if (spftree->t_spf_periodic)
- thread_cancel (spftree->t_spf_periodic);
+ THREAD_TIMER_OFF(spftree->t_spf_periodic);
/* FIXME: let's wait a minute before doing the SPF */
if (now - isis->uptime < 60 || isis->uptime == 0) {