<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 14 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri","sans-serif";
        mso-fareast-language:EN-US;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:"Calibri","sans-serif";
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri","sans-serif";
        mso-fareast-language:EN-US;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-GB" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal">Hi,<o:p></o:p></p>
<p class="MsoNormal">I am seeing a crash in the debugger module. It looks similar to
<a href="http://sip-router.org/tracker/index.php?do=details&task_id=423">http://sip-router.org/tracker/index.php?do=details&task_id=423</a> but is reproducible on shutdown.<o:p></o:p></p>
<p class="MsoNormal">I am running latest 4.2.4.<o:p></o:p></p>
<p class="MsoNormal">It looks like the ‘get_debug_level’ function is called after the debugger module has been destroyed.<o:p></o:p></p>
<p class="MsoNormal">Do we need to unset the per-module callback from the mod_destroy function (e.g. with
<span style="font-family:"Courier New"">set_module_debug_level_cb(NULL)</span>)?<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Details of crash:<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">loadmodule "debugger.so"<o:p></o:p></p>
<p class="MsoNormal"># ----- debugger params -----<o:p></o:p></p>
<p class="MsoNormal">modparam("debugger", "mod_level_mode", 1)<o:p></o:p></p>
<p class="MsoNormal">modparam("debugger", "mod_hash_size", 5)<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">(gdb) bt full<o:p></o:p></p>
<p class="MsoNormal">#0  0x00007f24e9572990 in dbg_get_mod_debug_level (mname=0x6f9974 "core", mnlen=4, mlevel=0x7fffe76051ac) at debugger_api.c:1224<o:p></o:p></p>
<p class="MsoNormal">        idx = 14<o:p></o:p></p>
<p class="MsoNormal">        hid = 1863578990<o:p></o:p></p>
<p class="MsoNormal">        it = 0x0<o:p></o:p></p>
<p class="MsoNormal">#1  0x000000000046dd00 in get_debug_level (mname=0x6f9974 "core", mnlen=4) at dprint.c:137<o:p></o:p></p>
<p class="MsoNormal">        mlevel = 3<o:p></o:p></p>
<p class="MsoNormal">#2  0x000000000049f6f0 in handle_sigs () at main.c:803<o:p></o:p></p>
<p class="MsoNormal">        chld = -1<o:p></o:p></p>
<p class="MsoNormal">        chld_status = 0<o:p></o:p></p>
<p class="MsoNormal">        memlog = -748755048<o:p></o:p></p>
<p class="MsoNormal">        __FUNCTION__ = "handle_sigs"<o:p></o:p></p>
<p class="MsoNormal">#3  0x00000000004a6fbf in main_loop () at main.c:1757<o:p></o:p></p>
<p class="MsoNormal">        i = 4<o:p></o:p></p>
<p class="MsoNormal">        pid = 20691<o:p></o:p></p>
<p class="MsoNormal">        si = 0x0<o:p></o:p></p>
<p class="MsoNormal">        si_desc = "udp receiver child=3 sock=10.62.18.63:5060\000\000\000\000\000\000\016\b\000\000\377\177\000\000\260\344^\323$\177\000\000\000\000\000\020\004\000\000\000\260\344^\323$\177\000\000\060SA\000\000\000\000\000\000W`\347\001\000\000\000\220T`\347\377\177\000\000>dN\000\000\000\000\000\210q(\352z\000\000\000~~p\000\000\000\000"<o:p></o:p></p>
<p class="MsoNormal">        nrprocs = 4<o:p></o:p></p>
<p class="MsoNormal">        __FUNCTION__ = "main_loop"<o:p></o:p></p>
<p class="MsoNormal">#4  0x00000000004ab8e3 in main (argc=13, argv=0x7fffe7605708) at main.c:2581<o:p></o:p></p>
<p class="MsoNormal">        cfg_stream = 0xc56010<o:p></o:p></p>
<p class="MsoNormal">        c = -1<o:p></o:p></p>
<p class="MsoNormal">        r = 0<o:p></o:p></p>
<p class="MsoNormal">        tmp = 0x7fffe7605f64 ""<o:p></o:p></p>
<p class="MsoNormal">        tmp_len = 0<o:p></o:p></p>
<p class="MsoNormal">        port = 0<o:p></o:p></p>
<p class="MsoNormal">        proto = 32767<o:p></o:p></p>
<p class="MsoNormal">        options = 0x6fccc0 ":f:cm:M:dVIhEeb:l:L:n:vKrRDTN:W:w:t:u:g:P:G:SQ:O:a:A:"<o:p></o:p></p>
<p class="MsoNormal">        ret = -1<o:p></o:p></p>
<p class="MsoNormal">        seed = 1220709785<o:p></o:p></p>
<p class="MsoNormal">        rfd = 4<o:p></o:p></p>
<p class="MsoNormal">        debug_save = 0<o:p></o:p></p>
<p class="MsoNormal">        debug_flag = 0<o:p></o:p></p>
<p class="MsoNormal">        dont_fork_cnt = 0<o:p></o:p></p>
<p class="MsoNormal">        n_lst = 0xbf<o:p></o:p></p>
<p class="MsoNormal">        p = 0x7fffe76055de ""<o:p></o:p></p>
<p class="MsoNormal">        __FUNCTION__ = "main"<o:p></o:p></p>
<p class="MsoNormal">(gdb) list<o:p></o:p></p>
<p class="MsoNormal">1219             * - use fprintf(stderr, ...) if need for troubleshooting<o:p></o:p></p>
<p class="MsoNormal">1220             * - it will loop otherwise */<o:p></o:p></p>
<p class="MsoNormal">1221            if(_dbg_mod_table==NULL)<o:p></o:p></p>
<p class="MsoNormal">1222                    return -1;<o:p></o:p></p>
<p class="MsoNormal">1223<o:p></o:p></p>
<p class="MsoNormal">1224            if(cfg_get(dbg, dbg_cfg, mod_level_mode)==0)<o:p></o:p></p>
<p class="MsoNormal">1225                    return -1;<o:p></o:p></p>
<p class="MsoNormal">1226<o:p></o:p></p>
<p class="MsoNormal">1227            if(_dbg_get_mod_debug_level!=0)<o:p></o:p></p>
<p class="MsoNormal">1228                    return -1;<o:p></o:p></p>
<p class="MsoNormal">(gdb) p dbg_cfg<o:p></o:p></p>
<p class="MsoNormal">$1 = (void *) 0x7f24d386298c<o:p></o:p></p>
<p class="MsoNormal">(gdb) p *(struct cfg_group_dbg*)dbg_cfg<o:p></o:p></p>
<p class="MsoNormal">Cannot access memory at address 0x7f24d386298c<o:p></o:p></p>
</div>
<hr>
<p class="MsoNormal"><span style="font-size:7.5pt;line-height:115%;font-family:
"Arial","sans-serif";mso-fareast-font-family:"Times New Roman";color:gray">This e-mail and any attachment
<span class="GramE">is</span> for <span class="SpellE">authorised</span> use by the intended recipient(s) only. It may contain proprietary material, confidential information and/or be subject to legal privilege. It should not be copied, disclosed to, retained
 or used by, any other party. If you are not an intended recipient then please promptly delete this e-mail and any attachment and all copies and inform the sender. Thank you for understanding.</span></p>
</body>
</html>