Hi,

there are several types of lock in OpenSER. The default ones to be used are the fastlocks - they are very fast to operated, but they are implemented via busy-waiting; this is ok since the lock are used in openser only for synchronization and not for waiting.

when using locks from pthread lib, you do not see the busy-waiting ;).

anyhow, this means you found a problem - a process gets stuck in lock somewhere....is there a way to reproduce this??

regards,
bogdan

Jean-François SMIGIELSKI wrote:

Hello list!

My problem: when I receive an INVITE, after processing and forwarding, the UDP 
process starts to loop (it hangs and consumes a lot of CPU time) . A call to 
strace on this process shows it loops on sched_yield, just after a call to 
udp_send. Because this function was only used in the locking features, I 
compiled again with pthread_mutex locks and it seems the problem disappears.

This happens only for INVITE requests (I don't know why) and it is systematic 
with openser 1.1.0 on a linux 2.6.18 on a bi-Xeon. It was compiled with the 
default options (fast_lock) for this architecture. You can find below the 
command line at compile time.
The problem does not happen with the same openser 1.1.0 (binary) on linux 
2.6.11, 2.6.12, 2.6.15 and 2.6.16 for various architectures.

-fPIC -DPIC -g -O9 -funroll-loops -Wcast-align -Wall -minline-all-stringops -falign-loops -mtune=athlon    -DNAME='"openser"' 
-DVERSION='"1.1.0-notls"' -DARCH='"i386"' -DOS='"linux"' -DCOMPILER='"gcc 3.4.4"' -D__CPU_i386 
-D__OS_linux -D__SMP_no -DCFG_DIR='"/usr/local/etc/openser/"' -DPKG_MALLOC -DSHM_MEM  -DSHM_MMAP -DUSE_IPV6 -DUSE_MCAST -DUSE_TCP 
-DDISABLE_NAGLE -DHAVE_RESOLV_RES -DF_MALLOC -DSTATISTICS  -DHAVE_GETHOSTBYNAME2 -DHAVE_UNION_SEMUN -DHAVE_SCHED_YIELD -DHAVE_MSG_NOSIGNAL 
-DHAVE_MSGHDR_MSG_CONTROL -DHAVE_ALLOCA_H -DHAVE_TIMEGM -DUSE_PTHREAD_MUTEX   -DHAVE_EPOLL -DHAVE_SIGIO_RT -DHAVE_SELECT

[EMAIL PROTECTED] /tmp]# uname -a
Linux yellow 2.6.18 #1 SMP PREEMPT Mon Nov 27 17:21:08 CET 2006 i686 pentium4 
i386 GNU/Linux

I hope it helps, Thanks a lot!

JF Smigielski.


________________________________________________________________________
iBELGIQUE, exprimez-vous !
http://web.ibelgique.com/
------------------------------------------------------------------------

_______________________________________________
Devel mailing list
Devel@openser.org
http://openser.org/cgi-bin/mailman/listinfo/devel


_______________________________________________
Devel mailing list
Devel@openser.org
http://openser.org/cgi-bin/mailman/listinfo/devel

Reply via email to