On May 8, 2007, at 00:49, Alan DeKok wrote: > Doug Hardie wrote: >> FreeRadius 1.1.2 on FreeBSD 6.1 using libpthread. > > Upgrade to 1.1.6. It has a lot of fixes that may help. > > It looks like it's crashing when starting a new child thread. That > may be a pthread issue in the underlying libraries.
The saga continues. Digging around through the core dumps I noticed that often one of my modules was active in another thread and always at a fprintf statement. I wondered if perhaps FreeBSD's fprintf statment was not always thread safe so I removed all of them. Not the problem. Now its dying on a simple assignment statement. However, thats obvious when you see the arguments to the authorize function: Both zeros. I didn't think that was supposed to happen. None of the included modules check for that condition. Is this whats causing my problem or is it the result of the thread that is not able to get started properly? I suspect the latter since the prior stack is corrupt. I am tempted to put a check for that right at the beginning of the authorize function and just return if it happens. Good idea? I am completely unable to replicate this situation on my test system. I can run thousands of requests via multiple radclients without any problems. I can drive the test system to overload and other than responses slow down a bit, it just works properly. #0 0x2830a6e8 in ?? () from /usr/local/lib/rlm_lafn.so #1 0x2830b9c0 in lafn_authorize (instance=0x0, request=0x0) at rlm_lafn.c:543 Previous frame inner to this frame (corrupt stack?) - List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html