pthreads and nagios issue

Christophe Yayon lists at nbux.com
Fri May 6 12:02:52 PDT 2005


Hi,

But is it a Nagios or FreeBSD problem, if you read "what's new" section on
nagios site, you can see :
-----------------
FreeBSD and threads. On FreeBSD there's a native user-level implementation
of threads called 'pthread' and there's also an optional ports collection
'linuxthreads' that uses kernel hooks. Some folks from Yahoo! have
reported that using the pthread library causes Nagios to pause under heavy
I/O load, causing some service check results to be lost. Switching to
linuxthreads seems to help this problem, but not fix it. The lock happens
in liblthread's __pthread_acquire() - it can't ever acquire the spinlock.
It happens when the main thread forks to execute an active check. On the
second fork to create the grandchild, the grandchild is created by fork,
but never returns from liblthread's fork wrapper, because it's stuck in
__pthread_acquire(). Maybe some FreeBSD users can help out with this
problem.
------------------
And it appears to be a FreeBSD pthread implementation problem (not a
Nagios specific problem...)
What do u think about that ?

> On 5/6/05, Christophe Yayon <lists at nbux.com> wrote:
>>  Hi all,
>>
>> i am upgrading our nagios 1.2 (on freebsd 5.3-release) to nagios 2.0
>> (currently last cvs after 2.0b3) on Freebsd-5.4RC3 and i saw a very
>> strange thing.
>>
>> After few hours, nagios main process (nagios -d ...) use lot of cpu time
>> and when i do a truss on the pid, i have a "kse_release" loop message.
>>
>> # top
>> last pid: 75729;  load averages:  1.81,  2.08,  2.03
>> 63 processes:  2 running, 61 sleeping
>> CPU states: 12.5% user,  0.0% nice, 16.0% system,  0.0% interrupt, 71.5%
>> idle
>> Mem: 36M Active, 1639M Inact, 219M Wired, 68M Cache, 112M Buf, 44M Free
>> Swap: 5000M Total, 52K Used, 5000M Free
>>
>> PID USERNAME PRI NICE   SIZE    RES STATE  C   TIME   WCPU    CPU
>> COMMAND
>> 40435 nagios   112    0  4688K  3544K CPU0   0 569:46 93.99% 93.99%
>> nagios
>> [...]
>>
>> # truss -p 40435
>> kse_release(0xbfbf9b70)                          ERR#22 "Invalid
>> argument"
>> kse_release(0xbfbf9b70)                          ERR#22 "Invalid
>> argument"
>> kse_release(0xbfbf9b70)                          ERR#22 "Invalid
>> argument"
>> [...]
>>
>> I know there is a pthread_acquire() issue with Nagios and  FreeBSD
>> threads, but is there any patch against this ?
>>
>> Thanks in advance...
>>
>> _______________________________________________
>> freebsd-stable at freebsd.org mailing list
>> http://lists.freebsd.org/mailman/listinfo/freebsd-stable
>> To unsubscribe, send any mail to
>> "freebsd-stable-unsubscribe at freebsd.org"
>>
>
> I've got the same issues, as do some people on the nagios-users list.
> If there is a patch available, the Nagios team still isn't aware of it
> yet as that is one of the reasons 2.0 is still in beta.
>
> --
> _-=-_-=-_-=-_-=-_-=-_-=-_-=-_-=-_-=-_-=-_-=-_
> Brian McCann
> Systems & Network Administrator, K12USA
>
> "I don't have to take this abuse from you -- I've got hundreds of
> people waiting to abuse me."
>                 -- Bill Murray, "Ghostbusters"
> -----
> This mail has been scanned.
>





More information about the freebsd-stable mailing list