Multithreading Segfaults :(

Steven D. Morrey smorrey at ldschurch.org
Thu Aug 20 00:23:26 CEST 2009


I think I've got it mostly worked out now.
Turns out lots of functions call eachother, thereby producing a race.  The trick seems to be to ONLY lock the sections of code dealing directly with macro_x and not just the entire function dealing with macro_x itself.
I'm going to give it  12hrs of run time and then I'll get a patch up for testing.

Sincerely,
Steven D. Morrey

________________________________________
From: Alessandro Ren [alessandro.ren at opservices.com.br]
Sent: Wednesday, August 19, 2009 2:34 PM
To: Nagios Developers List
Subject: Re: [Nagios-devel] Multithreading Segfaults :(

On 8/19/2009 5:25 PM, Steven D. Morrey wrote:
> I've got the code complete for multi-threading the main event loop.
>
> It looks like the system is now segfaulting at various rather random places, but they all seem to be related to macros.
> First time it happened it was get_service_macros, next time was clear_volatile_macros.
> It looks to me like the macro_x stuff is being accessed by multiple threads and we're getting a train wreck because of it.
>
> Normally I'd just put up a mutex on all the places that use the macro_x stuff.  But it looks like it's used in 617 different places in code, thats a lot of mutexes.
> I'll probably just put one on each function that deals with the macro_x stuff unless someone has a better idea.
>

     I had similar problems when I tried to add threads to the event
loop some months ago.
> Sincerely,
> Steve
>
>
>   NOTICE: This email message is for the sole use of the intended recipient(s) and may contain confidential and privileged information. Any unauthorized review, use, disclosure or distribution is prohibited. If you are not the intended recipient, please contact the sender by reply email and destroy all copies of the original message.
>
>
>
> ------------------------------------------------------------------------------
> Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
> trial. Simplify your report design, integration and deployment - and focus on
> what you do best, core application coding. Discover what's new with
> Crystal Reports now.  http://p.sf.net/sfu/bobj-july
> _______________________________________________
> Nagios-devel mailing list
> Nagios-devel at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/nagios-devel
>

------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
Nagios-devel mailing list
Nagios-devel at lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/nagios-devel

------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july




More information about the Developers mailing list