diff options
| -rw-r--r-- | bgpd/bgp_fsm.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/bgpd/bgp_fsm.c b/bgpd/bgp_fsm.c index c7a4c6928a..24957204a4 100644 --- a/bgpd/bgp_fsm.c +++ b/bgpd/bgp_fsm.c @@ -528,9 +528,11 @@ static void bgp_holdtime_timer(struct event *thread) frr_with_mutex (&connection->io_mtx) { inq_count = atomic_load_explicit(&connection->ibuf->count, memory_order_relaxed); } - if (inq_count) + if (inq_count) { BGP_TIMER_ON(connection->t_holdtime, bgp_holdtime_timer, peer->v_holdtime); + return; + } EVENT_VAL(thread) = Hold_Timer_expired; bgp_event(thread); /* bgp_event unlocks peer */ |
