From: Vincent Bernat Date: Mon, 9 Sep 2013 19:30:39 +0000 (+0200) Subject: event: don't call `netsnmp_check_outstanding_agent_requests()` X-Git-Tag: 0.7.7~19 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=dbcb684662e2e84e290ede7db733c67f26c7d2c2;p=thirdparty%2Flldpd.git event: don't call `netsnmp_check_outstanding_agent_requests()` We don't use delegated requests and therefore, this call is not necessary. It was put here out of safety but it seems that it can trigger spurious alarms and microseconds timeout. This makes lldpd consume a lot of CPU. We just remove this call from the event loop. --- diff --git a/src/daemon/event.c b/src/daemon/event.c index e1d5510b..192047f3 100644 --- a/src/daemon/event.c +++ b/src/daemon/event.c @@ -485,23 +485,15 @@ levent_loop(struct lldpd *cfg) { levent_init(cfg); lldpd_loop(cfg); +#ifdef USE_SNMP + if (cfg->g_snmp) levent_snmp_update(cfg); +#endif /* libevent loop */ do { if (event_base_got_break(cfg->g_base) || event_base_got_exit(cfg->g_base)) break; -#ifdef USE_SNMP - if (cfg->g_snmp) { - /* We don't use delegated requests (request - whose answer is delayed). However, we keep - the call here in case we use it some - day. We don't call run_alarms() here. We do - it on timeout only. */ - netsnmp_check_outstanding_agent_requests(); - levent_snmp_update(cfg); - } -#endif } while (event_base_loop(cfg->g_base, EVLOOP_ONCE) == 0); #ifdef USE_SNMP