Date: Wed, 13 Jul 2005 18:00:25 +0200 From: Michal Mertl <michal.mertl@i.cz> To: Jeremie Le Hen <jeremie@le-hen.org> Cc: freebsd-hackers@freebsd.org, Christophe Yayon <lists@nbux.com> Subject: Re: nagios and pthreads Message-ID: <1121270425.1088.12.camel@genius1.i.cz> In-Reply-To: <20050713095059.GS39292@obiwan.tataz.chchile.org> References: <61087.192.168.42.2.1121196788.squirrel@webmail.nbux.com> <20050713095059.GS39292@obiwan.tataz.chchile.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Jeremie Le Hen wrote: > Hi Christophe, > > a quick glance at the archives whould have helped you. I also experienced the problem and read the thread. I don't believe anybody found and shared a way to solve it. The conclusion of the thread was that the problem is more in the application then in FreeBSD - the application does things not well defined in POSIX threading environment. The right fix is probably a non trivial change to Nagios. > > i know that we add already discuss about this problem, but is there any > > solution for this problem ? > > > > --- > > What's section on nagios website > > "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." > > --- > > > > > > I have just upgraded to 5.4-STABLE but i encountered again the problem. > > Sometimes, there is a nagios forked child process which consume 100% of > > CPU. > > i have heard that there was perhaps a problem with libc_r reported by > > Luigi Rizzo on this list 06/22/2005, but no news since this date... > > > > My workaround is to have a cron job which run every hour and check if > > there is a bad nagios process and kill it... i know it's very ugly... > > > > Do you any solution or what could i do to get more trace when it happen ? > > sorry, but i am not familiar with ktrace like tools... If someone could > > help me to help nagios community on freebsd ;-) ? > > > > Thanks in advance. > > This thread should countain some answers : > http://lists.freebsd.org/pipermail/freebsd-hackers/2005-June/012435.html > > Regards,
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1121270425.1088.12.camel>