Dear Marius
Thank you for your prompt reply. I apologise, As i am a newbie could you please explain how to produce the below output that you require?
Thanking you in advance for your help!
Regards Phillip
Hello
Hello.
You should have a coredump . Can you please send the trace (bt full) as seen with gdb ?
Thanks Marius
Im facing a big problem after upgrading from version 3.1.2 to 3.1.4. The kamailio process keeps on terminating every now and then, this is what i was able to retrieve from my logs.
Sep 14 12:52:31 SipProxy1 kernel: [71448.062089] __ratelimit: 15 callbacks suppressed Sep 14 12:52:31 SipProxy1 kernel: [71448.062096] kamailio[13963]: segfault at 14 ip 0816452a sp bfedc940 error 4 in kamailio[8048000+1d9000]
Does anyone have an idea why this is happening?
Your help is much appreciated!
Regards Phillip
On 09/14/2011 05:01 PM, Phillman25 Kyriacou wrote:
Dear Marius
Thank you for your prompt reply. I apologise, As i am a newbie could you please explain how to produce the below output that you require?
if you can reproduce the crash, in a shell write
ulimit -c unlimited #to allow unlimited size of coredump kamailio -f ../path/to/cfg #any other options you give to kamailio <here the crash happens - make it happen>
In the directory that you lunch the commands you will find several core.kamailio.<pid> (or simply just core) file, that are called coredumps (they should be fairly large so don't worry)
After that :
gdb /path/to/kamailio core.kamailo.<pid> #or how the core was called
bt full info reg
(these commands are in gdb prompt) Paste the output of the gdb commands and lets see what happens. It would really help if kamailio already has debug symbols when compilling (should be enabled by default).
Cheers Marius
Thanking you in advance for your help!
Regards Phillip
Hello,
some extra notes about the location of the core files. Kamailio changes the working directory to / (the root of file system) if no -w parameter is given. So it is very likely the core is in /. Also, on some operating system, the core files are written in a special directory, which is a kernel option.
The syslog messages showed that core file was generated, so you can just look for it in / or the working directory for kamailio or the special path of the OS for corefiles.
Cheers, Daniel
On 9/14/11 4:34 PM, marius zbihlei wrote:
On 09/14/2011 05:01 PM, Phillman25 Kyriacou wrote:
Dear Marius
Thank you for your prompt reply. I apologise, As i am a newbie could you please explain how to produce the below output that you require?
if you can reproduce the crash, in a shell write
ulimit -c unlimited #to allow unlimited size of coredump kamailio -f ../path/to/cfg #any other options you give to kamailio <here the crash happens - make it happen>
In the directory that you lunch the commands you will find several core.kamailio.<pid> (or simply just core) file, that are called coredumps (they should be fairly large so don't worry)
After that :
gdb /path/to/kamailio core.kamailo.<pid> #or how the core was called
bt full info reg
(these commands are in gdb prompt) Paste the output of the gdb commands and lets see what happens. It would really help if kamailio already has debug symbols when compilling (should be enabled by default).
Cheers Marius
Thanking you in advance for your help!
Regards Phillip
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
On Wednesday 14 September 2011, Daniel-Constantin Mierla wrote:
some extra notes about the location of the core files. Kamailio changes the working directory to / (the root of file system) if no -w parameter is given. So it is very likely the core is in /. Also, on some operating system, the core files are written in a special directory, which is a kernel option.
The syslog messages showed that core file was generated, so you can just look for it in / or the working directory for kamailio or the special path of the OS for corefiles.
There is also some documentation about this in the kamailio wiki at: http://www.kamailio.org/dokuwiki/doku.php/troubleshooting:corefiles
Best regards,
Henning
Hello
Here is the output of the gdb commands:
(gdb) core core [New Thread 18567] Core was generated by `/usr/local/sbin/kamailio -P /var/run/kamailio/kamailio.pid -m 64 -u root -g roo'. Program terminated with signal 6, Aborted. #0 0x0040a422 in __kernel_vsyscall () . . .
(gdb) bt full #0 0x0040a422 in __kernel_vsyscall () No symbol table info available. #1 0x0056a651 in ?? () No symbol table info available. #2 0x00695ff4 in ?? () No symbol table info available. #3 0x0056da82 in ?? () No symbol table info available. #4 0x00000006 in ?? () No symbol table info available. #5 0xbff91960 in ?? () No symbol table info available. #6 0x0816d529 in ?? () No symbol table info available. #7 0xb37a7000 in ?? () No symbol table info available. #8 0x0816de85 in ?? () No symbol table info available. #9 0x00000000 in ?? () No symbol table info available.
. . . (gdb) info reg eax 0x0 0 ecx 0x4887 18567 edx 0x6 6 ebx 0x4887 18567 esp 0xbff918b4 0xbff918b4 ebp 0xbff918c0 0xbff918c0 esi 0x203a7364 540701540 edi 0x695ff4 6905844 eip 0x40a422 0x40a422 <__kernel_vsyscall+2> eflags 0x206 [ PF IF ] cs 0x73 115 ss 0x7b 123 ds 0x7b 123 es 0x7b 123 fs 0x0 0 gs 0x33 51
I hope this helps.
Thanks again Phillip
On Wed, Sep 14, 2011 at 5:34 PM, marius zbihlei marius.zbihlei@1and1.rowrote:
On 09/14/2011 05:01 PM, Phillman25 Kyriacou wrote:
Dear Marius
Thank you for your prompt reply. I apologise, As i am a newbie could you please explain how to produce the below output that you require?
if you can reproduce the crash, in a shell write
ulimit -c unlimited #to allow unlimited size of coredump kamailio -f ../path/to/cfg #any other options you give to kamailio <here the crash happens - make it happen>
In the directory that you lunch the commands you will find several core.kamailio.<pid> (or simply just core) file, that are called coredumps (they should be fairly large so don't worry)
After that :
gdb /path/to/kamailio core.kamailo.<pid> #or how the core was called
bt full info reg
(these commands are in gdb prompt) Paste the output of the gdb commands and lets see what happens. It would really help if kamailio already has debug symbols when compilling (should be enabled by default).
Cheers Marius
Thanking you in advance for your help!
Regards Phillip
On 09/14/2011 07:40 PM, Phillman25 Kyriacou wrote:
Hello
Here is the output of the gdb commands:
(gdb) core core [New Thread 18567] Core was generated by `/usr/local/sbin/kamailio -P /var/run/kamailio/kamailio.pid -m 64 -u root -g roo'. Program terminated with signal 6, Aborted. #0 0x0040a422 in __kernel_vsyscall () . . .
(gdb) bt full #0 0x0040a422 in __kernel_vsyscall () No symbol table info available. #1 0x0056a651 in ?? () No symbol table info available. #2 0x00695ff4 in ?? () No symbol table info available. #3 0x0056da82 in ?? () No symbol table info available. #4 0x00000006 in ?? () No symbol table info available. #5 0xbff91960 in ?? ()
Hello, This is not very helpful as the debug symbols weren't loaded. You have to compile Kamailio with debug symbols (make sure the -g flag is passed to CFLAGS when compiling) and then reload the core (it is not mandatory to generate another one )
make QUIET=no (to see the flags)
Also don't strip the executable
Marius
Thanks for your email Marius.
Could you please explain in a little more detail how to compile Kamailio with debug symbols? Do i use the command make CFLAGS=-g ? then make QUIET=no all?
Thanks again for your assistance!
Regards Phillip On Thu, Sep 15, 2011 at 5:02 PM, marius zbihlei marius.zbihlei@1and1.rowrote:
On 09/14/2011 07:40 PM, Phillman25 Kyriacou wrote:
Hello
Here is the output of the gdb commands:
(gdb) core core [New Thread 18567] Core was generated by `/usr/local/sbin/kamailio -P /var/run/kamailio/kamailio.pid -m 64 -u root -g roo'. Program terminated with signal 6, Aborted. #0 0x0040a422 in __kernel_vsyscall () . . .
(gdb) bt full #0 0x0040a422 in __kernel_vsyscall () No symbol table info available. #1 0x0056a651 in ?? () No symbol table info available. #2 0x00695ff4 in ?? () No symbol table info available. #3 0x0056da82 in ?? () No symbol table info available. #4 0x00000006 in ?? () No symbol table info available. #5 0xbff91960 in ?? ()
Hello, This is not very helpful as the debug symbols weren't loaded. You have to compile Kamailio with debug symbols (make sure the -g flag is passed to CFLAGS when compiling) and then reload the core (it is not mandatory to generate another one )
make QUIET=no (to see the flags)
Also don't strip the executable
Marius
-- Zbihlei Marius
Head of Linux Development Services Romania
1&1 Internet Development srl Tel KA: 754-9512 Str Mircea Eliade 18 Tel RO: +40-31-223-9512 Sect 1, Bucuresti mailto: marius.zbihlei@1and1.ro 71295, Romania
On 16.09.2011 12:00, Phillman25 Kyriacou wrote:
Could you please explain in a little more detail how to compile Kamailio with debug symbols? Do i use the command make CFLAGS=-g ? then make QUIET=no all?
I always add "mode=debug" to make, e.g.:
make mode=debug <my other make options>
HTH,
--Timo
On Thu, Sep 15, 2011 at 5:02 PM, marius zbihlei <marius.zbihlei@1and1.ro mailto:marius.zbihlei@1and1.ro> wrote:
On 09/14/2011 07:40 PM, Phillman25 Kyriacou wrote: Hello Here is the output of the gdb commands: (gdb) core core [New Thread 18567] Core was generated by `/usr/local/sbin/kamailio -P /var/run/kamailio/kamailio.pid -m 64 -u root -g roo'. Program terminated with signal 6, Aborted. #0 0x0040a422 in __kernel_vsyscall () . . . (gdb) bt full #0 0x0040a422 in __kernel_vsyscall () No symbol table info available. #1 0x0056a651 in ?? () No symbol table info available. #2 0x00695ff4 in ?? () No symbol table info available. #3 0x0056da82 in ?? () No symbol table info available. #4 0x00000006 in ?? () No symbol table info available. #5 0xbff91960 in ?? () Hello, This is not very helpful as the debug symbols weren't loaded. You have to compile Kamailio with debug symbols (make sure the -g flag is passed to CFLAGS when compiling) and then reload the core (it is not mandatory to generate another one ) make QUIET=no (to see the flags) Also don't strip the executable Marius
Thanks for your response Timo.
so you say i should try:
make mode=debug [CFLAGS=-g]?
Thanks for your assistance.
Regards Phillip
On Fri, Sep 16, 2011 at 1:44 PM, Timo Reimann timo.reimann@1und1.de wrote:
On 16.09.2011 12:00, Phillman25 Kyriacou wrote:
Could you please explain in a little more detail how to compile Kamailio with debug symbols? Do i use the command make CFLAGS=-g ? then make QUIET=no all?
I always add "mode=debug" to make, e.g.:
make mode=debug <my other make options>
HTH,
--Timo
On Thu, Sep 15, 2011 at 5:02 PM, marius zbihlei <marius.zbihlei@1and1.ro mailto:marius.zbihlei@1and1.ro> wrote:
On 09/14/2011 07:40 PM, Phillman25 Kyriacou wrote: Hello Here is the output of the gdb commands: (gdb) core core [New Thread 18567] Core was generated by `/usr/local/sbin/kamailio -P /var/run/kamailio/kamailio.pid -m 64 -u root -g roo'. Program terminated with signal 6, Aborted. #0 0x0040a422 in __kernel_vsyscall () . . . (gdb) bt full #0 0x0040a422 in __kernel_vsyscall () No symbol table info available. #1 0x0056a651 in ?? () No symbol table info available. #2 0x00695ff4 in ?? () No symbol table info available. #3 0x0056da82 in ?? () No symbol table info available. #4 0x00000006 in ?? () No symbol table info available. #5 0xbff91960 in ?? () Hello, This is not very helpful as the debug symbols weren't loaded. You have to compile Kamailio with debug symbols (make sure the -g flag is passed to CFLAGS when compiling) and then reload the core (it is not mandatory to generate another one ) make QUIET=no (to see the flags) Also don't strip the executable Marius
On 16.09.2011 13:19, Phillman25 Kyriacou wrote:
Thanks for your response Timo.
so you say i should try:
make mode=debug [CFLAGS=-g]?
"mode=debug" will take care of adding the -g ("debug") switch to gcc, so just skip the "[CFLAGS=-g]" part. Just do something like:
make mode=debug all
See also the INSTALL file for details.
Cheers,
--Timo