diff --git a/pimd/pim_msdp.c b/pimd/pim_msdp.c index 3562a0e348..d327984132 100644 --- a/pimd/pim_msdp.c +++ b/pimd/pim_msdp.c @@ -73,8 +73,8 @@ pim_msdp_sa_adv_timer_cb(struct thread *t) zlog_debug("MSDP SA advertisment timer expired"); } - pim_msdp_pkt_sa_tx(); pim_msdp_sa_adv_timer_setup(true /* start */); + pim_msdp_pkt_sa_tx(); return 0; } static void @@ -974,6 +974,9 @@ pim_msdp_peer_pkt_txed(struct pim_msdp_peer *mp) { if (mp->state == PIM_MSDP_ESTABLISHED) { pim_msdp_peer_ka_timer_setup(mp, true /* start */); + if (PIM_DEBUG_MSDP_INTERNAL) { + zlog_debug("MSDP ka timer restart on pkt tx to %s", mp->key_str); + } } } diff --git a/pimd/pim_msdp_packet.c b/pimd/pim_msdp_packet.c index 8ee45813ca..3f3f9d1de0 100644 --- a/pimd/pim_msdp_packet.c +++ b/pimd/pim_msdp_packet.c @@ -194,7 +194,7 @@ pim_msdp_write(struct thread *thread) enum pim_msdp_tlv type; int len; int work_cnt = 0; - int work_max_cnt = 1; + int work_max_cnt = 12; mp = THREAD_ARG(thread); mp->t_write = NULL;