We are using freeradius 1.0.0pre3 with rlm_perl, and have done
something (not sure what) to get it to hang using 100% of the CPU.
strace shows absolutely nothing, and when attached to with gdb, it
appears that it's stuck on one line (the program pointer never moves
when single stepping) in perl_detach. Taking a look at perl_detach, I
see a for-loop, and inside that there's a
while (handle->status == busy) {
}
Which makes me suspect that that is the line in question.
So, what can I do to avoid this? The perl we're using is compiled
with USE_ITHREADS (default RH9 perl, I believe), although we never use
them. The above while loop is inside an ifdef USE_ITHREADS, so I was
wondering if I could trick freeradius into thinking we're NOT using
ithreads, it could make this hang impossible to trigger.
Any ideas are greatly appreciated.
matt
-
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html