lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]


Folks, I'm trying to spot what causes my application to segfault and
the core dump points to Lua's luaH_getstr() call(the full call stack
is at the the bottom of this mail).

What's really interesting is the fact Lua is called(lua_call to be
more precise) during C++ stack unwinding process.

_Unwind_Resume() call resumes stack unwinding and somehow it ends up
calling dl_iterate_phdr() which in its turn ends up calling lua_call()
and which eventually ends up calling segfaulting luaH_getstr().

Could please someone clarify what's going on :) ? I'm especially
interested in how comes dl_iterate_phdr() ends up calling lua_call?

Thanks in advance for _any_ clues.

Here is the call stack:

#0  0x00002b2d642cb3e7 in kill () from /lib/libc.so.6
#1  0x0000000000520208 in on_signal ()
#2  <signal handler called>
#3  0x00002b2d61ed4731 in luaH_getstr () from libgmesh.so
#4  0x00002b2d61ed47c4 in luaH_get () from libgmesh.so
#5  0x00002b2d61ec1eaf in lua_rawget () from libgmesh.so
#6  0x00000000005ac6bf in module_index_event ()
#7  0x00002b2d61ec6f3b in luaD_precall () from libgmesh.so
#8  0x00002b2d61ec71a6 in luaD_call () from libgmesh.so
#9  0x00002b2d61ed62a9 in callTMres () from libgmesh.so
#10 0x00002b2d61ed65a7 in luaV_gettable () from libgmesh.so
#11 0x00002b2d61ed77dd in luaV_execute () from libgmesh.so
#12 0x00002b2d61ec71b8 in luaD_call () from libgmesh.so
#13 0x00002b2d61ec26e6 in lua_call () from libgmesh.so
#14 0x00002b2d61ed0c32 in ll_require () from libgmesh.so
#15 0x00002b2d61ec6f3b in luaD_precall () from libgmesh.so
#16 0x00002b2d61ed90bb in luaV_execute () from libgmesh.so
#17 0x00002b2d61ec71b8 in luaD_call () from libgmesh.so
#18 0x00002b2d61ec26e6 in lua_call () from libgmesh.so
#19 0x00002b2d61ed0c32 in ll_require () from libgmesh.so
#20 0x00002b2d61ec6f3b in luaD_precall () from libgmesh.so
#21 0x00002b2d61ed90bb in luaV_execute () from libgmesh.so
#22 0x00002b2d61ec71b8 in luaD_call () from libgmesh.so
#23 0x00002b2d61ec26e6 in lua_call () from libgmesh.so
#24 0x00002b2d61ed0c32 in ll_require () from libgmesh.so
#25 0x00002b2d61ec6f3b in luaD_precall () from libgmesh.so
#26 0x00002b2d61ed90bb in luaV_execute () from libgmesh.so
#27 0x00002b2d61ec71b8 in luaD_call () from libgmesh.so
#28 0x00002b2d61ec26e6 in lua_call () from libgmesh.so
#29 0x00002b2d64094849 in ?? () from /lib/libgcc_s.so.1
#30 0x00002b2d614d3870 in ?? () from libgamedlib.so
#31 0x000000000000000b in ?? ()
#32 0x00002b2d64095391 in ?? () from /lib/libgcc_s.so.1
#33 0x00002b2d64392d27 in dl_iterate_phdr () from /lib/libc.so.6
#34 0x00002b2d6a50fe80 in ?? ()
#35 0x0000000000000001 in ?? ()
#36 0x00002b2d64094849 in ?? () from /lib/libgcc_s.so.1
#37 0x00002b2d614d3870 in ?? () from libgamedlib.so
#38 0x000000000000000b in ?? ()
#39 0x00002b2d64095391 in ?? () from /lib/libgcc_s.so.1
#40 0x00002b2d64392d27 in dl_iterate_phdr () from /lib/libc.so.6
#41 0x00002b2d6a50fe80 in ?? ()
#42 0x0000000000000001 in ?? ()
#43 0x00002b2d63bbb4f2 in __gxx_personality_v0 () from
/usr/lib/gcc/x86_64-pc-linux-gnu/4.3.3/libstdc++.so.6
#44 0x00002b2d64093e99 in ?? () from /lib/libgcc_s.so.1
#45 0x00002b2d64093f64 in _Unwind_Resume () from /lib/libgcc_s.so.1
#46 0x00002b2d602ee8d3 in AI::reset () from libgamedlib.so


-- 
Best regards, Pavel