Any ideas on how to resolve this?   The problem seems to be
in "transitioning" from one mib to the next.

Thanks,

On Mon, Jan 25, 2016 at 4:32 PM, Sam Tannous <stann...@users.sf.net> wrote:

> ------------------------------
>
> * [bugs:#2693] <http://sourceforge.net/p/net-snmp/bugs/2693/> snmpwalk
> causes snmpd hang and CPU spike*
>
> *Status:* open
> *Group:* debian
> *Created:* Mon Jan 25, 2016 09:32 PM UTC by Sam Tannous
> *Last Updated:* Mon Jan 25, 2016 09:32 PM UTC
> *Owner:* nobody
>
> On latest debian (Jessie, snmpd 5.7.2.1, also seen on 5.7.3) we noticed a
> nasty bug where the snmpd
> CPU spikes (to around 100%) and snmpd becomes completely unresponsive.
> Only way to recover is a restart.
>
> The problem appears to be in the transition (snmpwalk) from .1.3.6.1.2.1.3
> to
> .1.3.6.1.2.1.4
>
> The bug occurs only when we have "-V systemonly" on our community string
>
>    rocommunity public default -V systemonly
>
> *and* we expose these tables:
>
>   view   systemonly  included   .1.3.6.1.2.1.1
>   view   systemonly  included   .1.3.6.1.2.1.2
>   view   systemonly  included   .1.3.6.1.2.1.3
>   view   systemonly  included   .1.3.6.1.2.1.4.24
>
> (Adding a view for .1.3.6.1.2.1.4.1 fixes this problem!)
>
> The output we see before the freeze is this:
>
> root@jessie-1:/home/stannous# snmpwalk -v2c -cpublic localhost .1
> ...
> <output snipped>
> ...
> IF-MIB::ifOutDiscards.2 = Counter32: 0
> IF-MIB::ifOutDiscards.3 = Counter32: 0
> IF-MIB::ifOutErrors.1 = Counter32: 0
> IF-MIB::ifOutErrors.2 = Counter32: 0
> IF-MIB::ifOutErrors.3 = Counter32: 0
> IF-MIB::ifOutQLen.1 = Gauge32: 0
> IF-MIB::ifOutQLen.2 = Gauge32: 0
> IF-MIB::ifOutQLen.3 = Gauge32: 0
> IF-MIB::ifSpecific.1 = OID: SNMPv2-SMI::zeroDotZero
> IF-MIB::ifSpecific.2 = OID: SNMPv2-SMI::zeroDotZero
> IF-MIB::ifSpecific.3 = OID: SNMPv2-SMI::zeroDotZero
> SNMPv2-SMI::mib-2.3.1.1.1.2.1.10.50.10.1 = INTEGER: 2
> SNMPv2-SMI::mib-2.3.1.1.1.2.1.10.50.10.23 = INTEGER: 2
> SNMPv2-SMI::mib-2.3.1.1.2.2.1.10.50.10.1 = Hex-STRING: 6C 64 1A 00 2F 53
> SNMPv2-SMI::mib-2.3.1.1.2.2.1.10.50.10.23 = Hex-STRING: 0C 4D E9 A0 C3 6E
> SNMPv2-SMI::mib-2.3.1.1.3.2.1.10.50.10.1 = IpAddress: 10.50.10.1
> SNMPv2-SMI::mib-2.3.1.1.3.2.1.10.50.10.23 = IpAddress: 10.50.10.23
> Timeout: No Response from localhost
>
> root@jessie-1:~# cat /etc/os-release
> PRETTY_NAME="Debian GNU/Linux 8 (jessie)"
> NAME="Debian GNU/Linux"
> VERSION_ID="8"
> VERSION="8 (jessie)"
> ID=debian
> HOME_URL="http://www.debian.org/";
> SUPPORT_URL="http://www.debian.org/support/";
> BUG_REPORT_URL="https://bugs.debian.org/";
> root@jessie-1:~# dpkg -l | grep snmp
> ii  libsnmp-base                         5.7.2.1+dfsg-1                       
> all          SNMP configuration script, MIBs and documentation
> ii  libsnmp30:i386                       5.7.2.1+dfsg-1                       
> i386         SNMP (Simple Network Management Protocol) library
> ii  libsnmp30-dbg                        5.7.2.1+dfsg-1                       
> i386         SNMP (Simple Network Management Protocol) library debug
> ii  snmp                                 5.7.2.1+dfsg-1                       
> i386         SNMP (Simple Network Management Protocol) applications
> ii  snmp-mibs-downloader                 1.1                                  
> all          Install and manage Management Information Base (MIB) files
> ii  snmpd                                5.7.2.1+dfsg-1                       
> i386         SNMP (Simple Network Management Protocol) agents
>
> An strace of the snmpd process shows the following repeating pattern:
>
> open("/proc/sys/net/ipv4/conf/all/forwarding", O_RDONLY|O_LARGEFILE) = 13
> fstat64(13, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
> mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
> 0xb77d1000
> read(13, "0\n", 1024)                   = 2
> close(13)                               = 0
> munmap(0xb77d1000, 4096)                = 0
> open("/proc/sys/net/ipv4/conf/all/forwarding", O_RDONLY|O_LARGEFILE) = 13
> fstat64(13, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
> mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
> 0xb77d1000
> read(13, "0\n", 1024)                   = 2
> close(13)                               = 0
> munmap(0xb77d1000, 4096)                = 0
> open("/proc/sys/net/ipv4/conf/all/forwarding", O_RDONLY|O_LARGEFILE) = 13
> fstat64(13, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
> mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
> 0xb77d1000
> read(13, "0\n", 1024)                   = 2
> close(13)                               = 0
> munmap(0xb77d1000, 4096)                = 0
> open("/proc/sys/net/ipv4/conf/all/forwarding", O_RDONLY|O_LARGEFILE) = 13
> fstat64(13, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
> mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
> 0xb77d1000
> read(13, "0\n", 1024)                   = 2
> close(13)                               = 0
> munmap(0xb77d1000, 4096)                = 0
> open("/proc/sys/net/ipv4/conf/all/forwarding", O_RDONLY|O_LARGEFILE) = 13
> fstat64(13, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
> mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
> 0xb77d1000
> read(13, "0\n", 1024)                   = 2
> close(13)                               = 0
> munmap(0xb77d1000, 4096)                = 0
> open("/proc/sys/net/ipv4/conf/all/forwarding", O_RDONLY|O_LARGEFILE) = 13
> fstat64(13, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
> mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
> 0xb77d1000
> read(13, "0\n", 1024)                   = 2
> close(13)                               = 0
> munmap(0xb77d1000, 4096)                = 0
> open("/proc/sys/net/ipv4/conf/all/forwarding", O_RDONLY|O_LARGEFILE) = 13
> fstat64(13, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
> mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
> 0xb77d1000
> read(13, "0\n", 1024)                   = 2
> close(13)                               = 0
> munmap(0xb77d1000, 4096)                = 0
>
> ------------------------------
>
> Sent from sourceforge.net because you indicated interest in
> https://sourceforge.net/p/net-snmp/bugs/2693/
>
> To unsubscribe from further messages, please visit
> https://sourceforge.net/auth/subscriptions/
>
------------------------------------------------------------------------------
_______________________________________________
Net-snmp-coders mailing list
Net-snmp-coders@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/net-snmp-coders

Reply via email to