From b785b7addab8cdd124c14a7abdf7b6d7dca104c8 Mon Sep 17 00:00:00 2001 From: Quentin Young Date: Fri, 10 Nov 2017 17:03:58 -0500 Subject: [PATCH] bgpd: schedule UPDATE generation smarter No need to schedule a job to generate more packets until we're done with the ones we've got. Shaves a few percent off convergence time. --- bgpd/bgp_io.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/bgpd/bgp_io.c b/bgpd/bgp_io.c index a2ce18fa05..548167b3a3 100644 --- a/bgpd/bgp_io.c +++ b/bgpd/bgp_io.c @@ -218,12 +218,9 @@ static int bgp_process_writes(struct thread *thread) if (reschedule) { thread_add_write(fpt->master, bgp_process_writes, peer, peer->fd, &peer->t_write); - } - - if (!fatal) { - thread_add_timer_msec(bm->master, bgp_generate_updgrp_packets, - peer, 0, - &peer->t_generate_updgrp_packets); + } else if (!fatal) { + BGP_TIMER_ON(peer->t_generate_updgrp_packets, + bgp_generate_updgrp_packets, 0); } return 0;