On 05/15/2013 12:14 PM, Daniel-Constantin Mierla wrote:
Hello,

On 5/15/13 6:43 AM, kiran bhosale wrote:
Hi
 we  have developed the custom module where in we have  created  shared  memory  area  which is not  used  by any other module or process and  we locked it  using  locks as  recommended. but because of  locks the kamailio  is getting crashed every now  and then . is it  really important  to protect the  shared  memory area  with locks.  if yes  then how to avoid  the crash ??

so to locate the  crash  we  built kamailio wit h MM_DBG , and other GCC  debug flags . but we are  getting  error "No symbol table info  available" . how  to  locate the  bugs.  the kamailio is  built  wit h 1 MB of shared  memory  on MIPS  based  VOIP gateway which is  having  * MB of flash and  16 MB or memory (RAM) .
set ulimit-c unlimited in order to get a core file, then use gdb to get the backtrace from the core. It will show where the crash happened.

Protection to shared memory is needed only when there is potential concurrent access.

Cheers,
Daniel
-- 
Daniel-Constantin Mierla - http://www.asipto.com
http://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda
Kamailio Advanced Training, San Francisco, USA - June 24-27, 2013
  * http://asipto.com/u/katu *


_______________________________________________
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
sr-users@lists.sip-router.org
http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
 we  did  that  as well  but  we  get  these backtrace "No symbol table info available "  errors  when we tried to  debug the core file. our  requirement is simple . we have not used  any DB  for storage of users. instead we have  implemented  local structures for  them. but we want to delete these  users after the "expires" becomes zero. but when  we  tried to  delete them using  kamailio  timer or  "register_timer" function . it is in no way accessing these local  structures . which is why  we  used  shared  memory. but it is leading   to  crash .  even  we  tried  to  unstrip  the  kamailio and ld.so . but that  also  didn't  give  exact  location of  crash. our  kamailio  footprint is  around 1.7 MB  with  logs and  900 KB without logs.


1) is   there  any possibilty of other  process/module   corrupting our data it being  a shared  memroy ??
2) the modules we  used are  tm.so , sl.so registrar.so  textops.so, auth.so auth_db.so and syntel.so(our module).
3) when  run with  10 instances  of  SIPP it  crashed after  two  hours.
is  it mandatory  to use  shared  memory  for users  to be  deleted  periodically. isnt there  any workaround to access local variables  from kamailio timers.
i can  share  our code  with you .

please  help