Hi Daniel.
In the meantime, I have begun to test using more standard conditions; I am not using the optimized compiler and I am running openser compiled on 32 bits.
I have discovered an even nastier issue. When Openser is configured in forking mode, and with or without log_stderror, it presents the same symptom I reported when compiled on 64 bits (it exhausts the shared memory reservation, and crashes with core dumping).
This is the backtrace:
(gdb) bt #0 0x00000000 in ?? () #1 0xfe989b3c in getRow (ipType=1, ipAddress=0x141888) at openserSIPPortTable.c:125 #2 0xfe989c5c in createRowsFromIPList (theList=0x141a50, listSize=1, protocol=0, snmpIndex=0xffbff870) at openserSIPPortTable.c:201 #3 0xfe98a07c in init_openserSIPPortTable () at openserSIPPortTable.c:241 #4 0xfe98d708 in spawn_agentx_child () at sub_agent.c:74 #5 0xfe98cf04 in mod_child_init (rank=0) at snmpstats.c:271 #6 0x00059ca8 in init_mod_child (m=0x133840, rank=0, type=0xc3c08 "PROC_MAIN") at sr_module.c:406 #7 0x00059c24 in init_mod_child (m=0x1338e0, rank=0, type=0xc3c08 "PROC_MAIN") at sr_module.c:395 #8 0x000336c4 in main_loop () at main.c:952 #9 0x00035be4 in main (argc=9, argv=0xe7800) at main.c:1399
When I configure fork=no, openser does not crash, and works right.
I apologize if I should better create a new thread. If you suggest so I will do it.
Thanks in advance for your attention.
Kind regards
Sergio Gutierrez. EPM Telecomunicaciones Medellín, Colombia Tel: 574 - 3950022
---------- Forwarded message ----------
From: *Sergio Gutierrez* <saguti@gmail.com <mailto: saguti@gmail.com>> Date: Mar 27, 2007 9:52 AM Subject: Re: [Users] Openser fails when compiled on Solaris 64bit To: daniel@voice-system.ro <mailto: daniel@voice-system.ro> Cc: users@openser.org mailto:users@openser.org
Hi Daniel.
I am using mysql version 5.0.37, compiled on 64 bits too.
These are the printing of the symbols you asked:
(gdb) print row $1 = (db_row_t *) 0x10026bf68 (gdb) print ROW_VALUES(row) No symbol "ROW_VALUES" in current context. (gdb) print VAL_NULL(ROW_VALUES(row) No symbol "VAL_NULL" in current context. (gdb)
Thanks.
On 3/27/07, *Daniel-Constantin Mierla* < daniel@voice-system.ro <mailto:daniel@voice-system.ro >> wrote:
Hello Sergio, seems to be some data corrupted from what database returned. What is the database type you use, mysql? Could you print the the content of row and ROW_VALUES(row) (via
command in gdb)? Thanks, Daniel On 03/26/07 23:46, Sergio Gutierrez wrote: > Hi again Daniel. > > Testing other things trying to solve the problem I found that
the
> segmentation fault occurs when Openser is restarted and there
are
> records within location database table. > If the table is empty initially, openser starts OK, and users
can
> register without problem. > > Below is the backtrace of a error when the location table is not empty: > > #0 0xffffffff7d90e2a0 in preload_udomain (_c=0x10026ad90, > _d=0xffffffff5028e9f0) at udomain.c:404 > 404 if (VAL_NULL(ROW_VALUES(row)) > (gdb) bt > #0 0xffffffff7d90e2a0 in preload_udomain (_c=0x10026ad90, > _d=0xffffffff5028e9f0) at udomain.c:404 > #1 0xffffffff7d915844 in child_init (_rank=1) at ul_mod.c:344 > #2 0x0000000100082500 in init_mod_child (m=0x1, rank=1, > type=0x1000f41b0 "CHILD") at > /home/operador/openser-1.2.0-notls//sr_module.c:400 > #3 0x0000000100082460 in init_mod_child (m=0x1, rank=1, > type=0x1000f41b0 "CHILD") at > /home/operador/openser-1.2.0-notls//sr_module.c:394 > #4 0x0000000100082460 in init_mod_child (m=0x1, rank=1, > type=0x1000f41b0 "CHILD") at > /home/operador/openser-1.2.0-notls//sr_module.c:394 > #5 0x0000000100082770 in init_child (rank=1) at > /home/operador/openser-1.2.0-notls//sr_module.c:394 > #6 0x0000000100032414 in main_loop () at > /home/operador/openser-1.2.0-notls//main.c:724 > #7 0x00000001000345a4 in main (argc=2, argv=0xffffff7eaeeec4ff)
at
> /home/operador/openser-1.2.0-notls//main.c:1399 > > > Thanks. > > > > > > On 3/26/07, *Sergio Gutierrez* < saguti@gmail.com <mailto:saguti@gmail.com> > <mailto: saguti@gmail.com <mailto:saguti@gmail.com >>> wrote: > > Hi Daniel. > > This is the backtrace of the core. > Thanks > > #0 0xffffffff7d90ee9c in preload_udomain (_c=0x10026b7d800,
> _d=0x0) at > /home/operador/openser- 1.2.0-notls
/modules/usrloc//udomain.c:404
> #1 0xffffffff7d9131c4 in child_init (_rank=1344858528) at > /home/operador/openser- 1.2.0-notls
/modules/usrloc//ul_mod.c:344
> #2 0x0000000100082500 in init_mod_child (m=0x1, rank=1, > type=0x1000f41b0 "CHILD") at > /home/operador/openser- 1.2.0-notls//sr_module.c:400 > #3 0x0000000100082460 in init_mod_child (m=0x1, rank=1, > type=0x1000f41b0 "CHILD") at > /home/operador/openser-1.2.0-notls //sr_module.c:394 > #4 0x0000000100082460 in init_mod_child (m=0x1, rank=1, > type=0x1000f41b0 "CHILD") at > /home/operador/openser- 1.2.0-notls //sr_module.c:394 > #5 0x0000000100082770 in init_child (rank=1) at > /home/operador/openser-1.2.0-notls//sr_module.c:394 > #6 0x0000000100032414 in main_loop () at > /home/operador/openser- 1.2.0-notls//main.c:724 > #7 0x00000001000345a4 in main (argc=2,
argv=0xffffff7e7007a000)
> at /home/operador/openser-1.2.0-notls//main.c:1399 > > > > > On 3/26/07, *Daniel-Constantin Mierla* < daniel@voice-system.ro <mailto: daniel@voice-system.ro> > <mailto: daniel@voice-system.ro <mailto:daniel@voice-system.ro>>> wrote: > > Hello, > > can you send a gdb backtrace :-D -- I cannot read adb backtrace. > > Cheers, > Daniel > > > On 03/26/07 19:42, Sergio Gutierrez wrote: > > Hi Daniel. > > > > This is the backtrace, obtained with adb: > > > > usrloc.so`preload_udomain+0x4cc (1, ffffffff7228e9f0, 100215a00, > > ffffffff7d919e58, ffffffffffefe3f8, 0) > > 0xffffffff7d9131bc(2, ffffffff7da1c9b0,
ffffffff7d91a170,
> > ffffffff7228e9a0, ffffffff7da1b0a8, ffffffffffeff0c8) > > init_mod_child+0xd8(100269930, 1, 1000f41b0,
1000f40f0, 1,
> 100269870) > > init_mod_child+0x38(100269bb0, 1, 1000f41b0,
1000f40f0, 1,
> 1002699f0) > > init_mod_child+0x38(100269d30, 1, 1000f41b0,
1000f40f0, 1,
> 100269c70) > > init_child+0xa8(1, 100269df0, 1, 1000f4168, 10020d000, 100269eb0) > > main_loop+0xf34(0, 8c, 1000eefd8, ffffffff720083c4, 1002694b0, 0) > > main+0x1e10(100215, 9, 0, 10020d000, 1000ef5b8,
10020d000)
> > _start+0x7c(0, 0, 0, 0, 0, 0) > > > > On 3/26/07, *Sergio Gutierrez* <saguti@gmail.com <mailto: saguti@gmail.com> > <mailto: saguti@gmail.com <mailto: saguti@gmail.com>> > > <mailto: saguti@gmail.com <mailto: saguti@gmail.com> <mailto:saguti@gmail.com <mailto: saguti@gmail.com>>>> wrote: > > > > Hi Daniel. > > > > I used 512 for -m parameter. > > > > Would you like the backtrace of the core file? > > > > Thanks. > > > > > > On 3/26/07, *Daniel-Constantin Mierla* < > daniel@voice-system.ro <mailto: daniel@voice-system.ro> <mailto: daniel@voice-system.ro <mailto:daniel@voice-system.ro>> > > <mailto: daniel@voice-system.ro <mailto: daniel@voice-system.ro> > <mailto: daniel@voice-system.ro <mailto:daniel@voice-system.ro>>>> wrote: > > > > Hello, > > > > could you send a backtrace? What was the value
for
> parameter -m? > > > > Cheers, > > Daniel > > > > > > On 03/26/07 19:29, Sergio Gutierrez wrote: > > > Hi > > > > > > I am trying to run Openser compiled on 64 bits on a > SPARC > > Machine > > > running Solaris 10. > > > > > > When I create a simple configuration file
for
> testing radius > > > integration, Openser starts to consume the
whole
> memory > > reservation > > > (-m parameter) and fails with segmentation fault error. > > > > > > after several tests, I have found that the error is > caused by > > save() > > > function (registrar module). > > > > > > This is the main route my configuration
file:
> > > > > > route { > > > if(method=="REGISTER") > > > { > > > if(!radius_www_authorize("")) > > > { > > > www_challenge("",
"0");
> > > return; > > > }; > > > > > > if(!save("location")) > > > { > > > sl_reply_error(); > > > }; > > > return; > > > > > > } > > > else > > > { > > > } > > > } > > > > > > Thanks in advance for your help. > > > > > > Sergio G. > > > > > > >
> > > > > >
> > > Users mailing list > > > Users@openser.org <mailto: Users@openser.org <mailto: Users@openser.org <mailto: Users@openser.org>> > <mailto: Users@openser.org <mailto: Users@openser.org> <mailto: Users@openser.org <mailto: Users@openser.org>>> > > >
http://openser.org/cgi-bin/mailman/listinfo/users
> < http://openser.org/cgi-bin/mailman/listinfo/users <http://openser.org/cgi-bin/mailman/listinfo/users>> > > > > > > > > > > > >