This is the mail archive of the ecos-discuss@sourceware.org mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: SNMP lockup


On 2009-05-08, Sergei Gavrikov <sergei.gavrikov@gmail.com> wrote:

> If your guess is right...

It's not a guess.

The problem occurs when cyg_snmp_get_if() is called with if_num <= 0.

The loop takes 1-2 minutes to loop from -1, -2, back to 0,
causing the SNMP management thread to lock out all lower
priority threads while it's doing so.

> Can you walk here with/without tweaks when if_num=0
>
> repo/devo/ecos/packages/net/snmp/agent/current/src/mibgroup/mibII/interfaces.c:398

I don't understand what you're asking.

The SNMP manager is asking for the physical address for
interface 0, and things lock up for a couple minutes because
cyg_snmp_get_if() doesn't return.  The same thing happens if
you ask for the interface name or any other attribute of
interface 0.

It also occurs if you ask for an attribute of an interface
number so large that it wraps into a negative number when
represented as a 2's compliment 32-bit int.

I'm surprised nobody else has run into this.  I'm told all our
customers who have HP or Cisco SNMP managers have had to
disable SNMP support in our products to keep them from locking
up every few minutes.

-- 
Grant Edwards                   grante             Yow! ... If I had heart
                                  at               failure right now,
                               visi.com            I couldn't be a more
                                                   fortunate man!!


-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]