[Devel] Sujet de votre message...

Bogdan-Andrei Iancu bogdan at voice-system.ro
Wed Jan 10 14:55:16 CET 2007


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
>
>[root at yellow /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 at openser.org
>http://openser.org/cgi-bin/mailman/listinfo/devel
>  
>




More information about the Devel mailing list