openresty / openresty-gdb-utils Goto Github PK
View Code? Open in Web Editor NEWGDB Utilities for OpenResty (including Nginx, ngx_lua, LuaJIT, and more)
GDB Utilities for OpenResty (including Nginx, ngx_lua, LuaJIT, and more)
I got fail like infos below, When I run any ngx-gdb-cmd in my Mac OSX:
/Users/zj-git/idevz.org/ [master*] gdb -p 32957
GNU gdb (GDB) 7.9
Copyright (C) 2015 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-apple-darwin15.0.0".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word".
Attaching to process 32957
Reading symbols from /usr/local/nginx_x/nginx/sbin/nginx...done.
0x00007fff8d81dfc6 in kevent () from /usr/lib/system/libsystem_kernel.dylib
(gdb) lvmst
No global L located (tried globalL and ngx_cycle)
(gdb)
my OSX is 10.11.2 (15C50).
I installed OpenResty with those options:
./configure --with-cc-opt='-I/usr/local/Cellar/pcre/8.37/include/' --with-ld-opt='-L/usr/local/Cellar/pcre/8.37/lib' --with-openssl=/Users/zhoujing/Downloads/openssl-1.0.2e --with-debug --with-dtrace=/usr/sbin/dtrace --prefix=/usr/local/nginx_x
and make
like:
make CCDEBUG=-g
make CCDEBUG=-g install
even though i renew the CCDEBUG option in luajit source code
/Users/zhoujing/Downloads/ngx_openresty-1.9.3.2/bundle/LuaJIT-2.1-20151028/src/Makefile
, I still got fail.
here are many info I run in gdb. what should I do to solve this No global L located (tried globalL and ngx_cycle)
mistake? Thanks every much.
(gdb) bt
#0 0x00007fff8d81dfc6 in kevent () from /usr/lib/system/libsystem_kernel.dylib
#1 0x00000001088e5c3a in ngx_kqueue_process_events (cycle=0x7fa441007c50, timer=18446744073709551615, flags=1) at src/event/modules/ngx_kqueue_module.c:536
#2 0x00000001088dc363 in ngx_process_events_and_timers (cycle=0xffffffffffffffff) at src/event/ngx_event.c:242
#3 0x00000001088e470e in ngx_worker_process_cycle (cycle=0x0, data=<optimized out>) at src/os/unix/ngx_process_cycle.c:769
#4 0x00000001088e2980 in ngx_spawn_process (cycle=0x1, proc=0x1088e4600 <ngx_worker_process_cycle>, data=0x0, name=0x108afc60c <ngx_crypt_to64.itoa64+5228> "worker process",
respawn=2) at src/os/unix/ngx_process.c:198
#5 0x00000001088e3f5c in ngx_start_worker_processes (cycle=0xffffffffffffffff, n=2, type=1) at src/os/unix/ngx_process_cycle.c:358
#6 0x00000001088e351f in ngx_master_process_cycle (cycle=0x1) at src/os/unix/ngx_process_cycle.c:130
#7 0x00000001088c19be in main (argc=<optimized out>, argv=<optimized out>) at src/core/nginx.c:415
(gdb) info shared
From To Syms Read Shared Object Library
0x000080000d8d29a0 0x000080000d96e968 Yes /usr/local/nginx_x/luajit/lib/libluajit-5.1.2.dylib
0x00007fff89cd1989 0x00007fff89cd22c0 Yes (*) /usr/lib/libSystem.B.dylib
0x0000000108d4f590 0x0000000108db42ec Yes (*) /usr/local/lib/libpcre.1.dylib
0x00007fff8cf1fae0 0x00007fff8cf31200 Yes (*) /usr/lib/libz.1.dylib
0x00007fff939128c0 0x00007fff93917160 Yes (*) /usr/lib/system/libcache.dylib
0x00007fff84d7b164 0x00007fff84d87640 Yes (*) /usr/lib/system/libcommonCrypto.dylib
0x00007fff80dd8d24 0x00007fff80de10c0 Yes (*) /usr/lib/system/libcompiler_rt.dylib
0x00007fff878054a8 0x00007fff8780d6b0 Yes (*) /usr/lib/system/libcopyfile.dylib
0x00007fff81fa46c0 0x00007fff82022e10 Yes (*) /usr/lib/system/libcorecrypto.dylib
0x00007fff8160ab30 0x00007fff8164b614 Yes (*) /usr/lib/system/libdispatch.dylib
0x00007fff80f910e8 0x00007fff80f944b0 Yes (*) /usr/lib/system/libdyld.dylib
0x00007fff821dba19 0x00007fff821dc0b8 Yes (*) /usr/lib/system/libkeymgr.dylib
0x00007fff910bbfc0 0x00007fff910bbff8 Yes (*) /usr/lib/system/liblaunch.dylib
0x00007fff8e86f11c 0x00007fff8e874790 Yes (*) /usr/lib/system/libmacho.dylib
0x00007fff87c5b210 0x00007fff87c5d2b0 Yes (*) /usr/lib/system/libquarantine.dylib
0x00007fff910b9924 0x00007fff910bb160 Yes (*) /usr/lib/system/libremovefile.dylib
0x00007fff8497a190 0x00007fff84992224 Yes (*) /usr/lib/system/libsystem_asl.dylib
0x00007fff87cc0340 0x00007fff87cc16a2 Yes (*) /usr/lib/system/libsystem_blocks.dylib
0x00007fff87fad020 0x00007fff88043c10 Yes (*) /usr/lib/system/libsystem_c.dylib
0x00007fff93048df0 0x00007fff9304b4e9 Yes (*) /usr/lib/system/libsystem_configuration.dylib
0x00007fff93886b04 0x00007fff93889738 Yes (*) /usr/lib/system/libsystem_coreservices.dylib
0x00007fff948e3a38 0x00007fff948fb121 Yes (*) /usr/lib/system/libsystem_coretls.dylib
0x00007fff90e825c8 0x00007fff90e8a36c Yes (*) /usr/lib/system/libsystem_dnssd.dylib
0x00007fff908b9490 0x00007fff908e4658 Yes (*) /usr/lib/system/libsystem_info.dylib
0x00007fff8d806a20 0x00007fff8d827928 Yes (*) /usr/lib/system/libsystem_kernel.dylib
0x00007fff928237c0 0x00007fff9285324c Yes (*) /usr/lib/system/libsystem_m.dylib
0x00007fff93565ef0 0x00007fff9358270d Yes (*) /usr/lib/system/libsystem_malloc.dylib
0x00007fff90e8b490 0x00007fff90ef26c0 Yes (*) /usr/lib/system/libsystem_network.dylib
0x00007fff821fdd91 0x00007fff82207048 Yes (*) /usr/lib/system/libsystem_networkextension.dylib
0x00007fff8d83587b 0x00007fff8d83f440 Yes (*) /usr/lib/system/libsystem_notify.dylib
0x00007fff87837920 0x00007fff878404dc Yes (*) /usr/lib/system/libsystem_platform.dylib
0x00007fff8371df28 0x00007fff8372c120 Yes (*) /usr/lib/system/libsystem_pthread.dylib
0x00007fff81f9d7d4 0x00007fff81fa062c Yes (*) /usr/lib/system/libsystem_sandbox.dylib
0x00007fff81607ac7 0x00007fff816091f0 Yes (*) /usr/lib/system/libsystem_secinit.dylib
0x00007fff94877ab4 0x00007fff94889bd4 Yes (*) /usr/lib/system/libsystem_trace.dylib
0x00007fff8f782fc0 0x00007fff8f782ff8 Yes (*) /usr/lib/system/libunc.dylib
0x00007fff89443918 0x00007fff89449a9a Yes (*) /usr/lib/system/libunwind.dylib
0x00007fff8785fd44 0x00007fff8788dd58 Yes (*) /usr/lib/system/libxpc.dylib
0x00007fff849ad000 0x00007fff84dd9fa8 Yes (*) /usr/lib/libobjc.A.dylib
0x00007fff9177fda0 0x00007fff917c7090 Yes (*) /usr/lib/libauto.dylib
0x00007fff83a1ee80 0x00007fff83a49408 Yes (*) /usr/lib/libc++abi.dylib
0x00007fff8e794f90 0x00007fff8e7efc31 Yes (*) /usr/lib/libc++.1.dylib
0x00007fff9299812f 0x00007fff929991e0 Yes (*) /usr/lib/libDiagnosticMessagesClient.dylib
(gdb) sharedlibrary lib
Symbols already loaded for /usr/local/nginx_x/luajit/lib/libluajit-5.1.2.dylib
Symbols already loaded for /usr/lib/libSystem.B.dylib
Symbols already loaded for /usr/local/lib/libpcre.1.dylib
Symbols already loaded for /usr/lib/libz.1.dylib
Symbols already loaded for /usr/lib/system/libcache.dylib
Symbols already loaded for /usr/lib/system/libcommonCrypto.dylib
Symbols already loaded for /usr/lib/system/libcompiler_rt.dylib
Symbols already loaded for /usr/lib/system/libcopyfile.dylib
Symbols already loaded for /usr/lib/system/libcorecrypto.dylib
Symbols already loaded for /usr/lib/system/libdispatch.dylib
Symbols already loaded for /usr/lib/system/libdyld.dylib
Symbols already loaded for /usr/lib/system/libkeymgr.dylib
Symbols already loaded for /usr/lib/system/liblaunch.dylib
Symbols already loaded for /usr/lib/system/libmacho.dylib
Symbols already loaded for /usr/lib/system/libquarantine.dylib
Symbols already loaded for /usr/lib/system/libremovefile.dylib
Symbols already loaded for /usr/lib/system/libsystem_asl.dylib
Symbols already loaded for /usr/lib/system/libsystem_blocks.dylib
Symbols already loaded for /usr/lib/system/libsystem_c.dylib
Symbols already loaded for /usr/lib/system/libsystem_configuration.dylib
Symbols already loaded for /usr/lib/system/libsystem_coreservices.dylib
Symbols already loaded for /usr/lib/system/libsystem_coretls.dylib
Symbols already loaded for /usr/lib/system/libsystem_dnssd.dylib
Symbols already loaded for /usr/lib/system/libsystem_info.dylib
Symbols already loaded for /usr/lib/system/libsystem_kernel.dylib
Symbols already loaded for /usr/lib/system/libsystem_m.dylib
Symbols already loaded for /usr/lib/system/libsystem_malloc.dylib
Symbols already loaded for /usr/lib/system/libsystem_network.dylib
Symbols already loaded for /usr/lib/system/libsystem_networkextension.dylib
Symbols already loaded for /usr/lib/system/libsystem_notify.dylib
Symbols already loaded for /usr/lib/system/libsystem_platform.dylib
Symbols already loaded for /usr/lib/system/libsystem_pthread.dylib
Symbols already loaded for /usr/lib/system/libsystem_sandbox.dylib
Symbols already loaded for /usr/lib/system/libsystem_secinit.dylib
Symbols already loaded for /usr/lib/system/libsystem_trace.dylib
Symbols already loaded for /usr/lib/system/libunc.dylib
Symbols already loaded for /usr/lib/system/libunwind.dylib
Symbols already loaded for /usr/lib/system/libxpc.dylib
Symbols already loaded for /usr/lib/libobjc.A.dylib
Symbols already loaded for /usr/lib/libauto.dylib
Symbols already loaded for /usr/lib/libc++abi.dylib
Symbols already loaded for /usr/lib/libc++.1.dylib
Symbols already loaded for /usr/lib/libDiagnosticMessagesClient.dylib
(gdb) info shared
From To Syms Read Shared Object Library
0x000080000d8d29a0 0x000080000d96e968 Yes /usr/local/nginx_x/luajit/lib/libluajit-5.1.2.dylib
0x00007fff89cd1989 0x00007fff89cd22c0 Yes (*) /usr/lib/libSystem.B.dylib
0x0000000108d4f590 0x0000000108db42ec Yes (*) /usr/local/lib/libpcre.1.dylib
0x00007fff8cf1fae0 0x00007fff8cf31200 Yes (*) /usr/lib/libz.1.dylib
0x00007fff939128c0 0x00007fff93917160 Yes (*) /usr/lib/system/libcache.dylib
0x00007fff84d7b164 0x00007fff84d87640 Yes (*) /usr/lib/system/libcommonCrypto.dylib
0x00007fff80dd8d24 0x00007fff80de10c0 Yes (*) /usr/lib/system/libcompiler_rt.dylib
0x00007fff878054a8 0x00007fff8780d6b0 Yes (*) /usr/lib/system/libcopyfile.dylib
0x00007fff81fa46c0 0x00007fff82022e10 Yes (*) /usr/lib/system/libcorecrypto.dylib
0x00007fff8160ab30 0x00007fff8164b614 Yes (*) /usr/lib/system/libdispatch.dylib
0x00007fff80f910e8 0x00007fff80f944b0 Yes (*) /usr/lib/system/libdyld.dylib
0x00007fff821dba19 0x00007fff821dc0b8 Yes (*) /usr/lib/system/libkeymgr.dylib
0x00007fff910bbfc0 0x00007fff910bbff8 Yes (*) /usr/lib/system/liblaunch.dylib
0x00007fff8e86f11c 0x00007fff8e874790 Yes (*) /usr/lib/system/libmacho.dylib
0x00007fff87c5b210 0x00007fff87c5d2b0 Yes (*) /usr/lib/system/libquarantine.dylib
0x00007fff910b9924 0x00007fff910bb160 Yes (*) /usr/lib/system/libremovefile.dylib
0x00007fff8497a190 0x00007fff84992224 Yes (*) /usr/lib/system/libsystem_asl.dylib
0x00007fff87cc0340 0x00007fff87cc16a2 Yes (*) /usr/lib/system/libsystem_blocks.dylib
0x00007fff87fad020 0x00007fff88043c10 Yes (*) /usr/lib/system/libsystem_c.dylib
0x00007fff93048df0 0x00007fff9304b4e9 Yes (*) /usr/lib/system/libsystem_configuration.dylib
0x00007fff93886b04 0x00007fff93889738 Yes (*) /usr/lib/system/libsystem_coreservices.dylib
0x00007fff948e3a38 0x00007fff948fb121 Yes (*) /usr/lib/system/libsystem_coretls.dylib
0x00007fff90e825c8 0x00007fff90e8a36c Yes (*) /usr/lib/system/libsystem_dnssd.dylib
0x00007fff908b9490 0x00007fff908e4658 Yes (*) /usr/lib/system/libsystem_info.dylib
0x00007fff8d806a20 0x00007fff8d827928 Yes (*) /usr/lib/system/libsystem_kernel.dylib
0x00007fff928237c0 0x00007fff9285324c Yes (*) /usr/lib/system/libsystem_m.dylib
0x00007fff93565ef0 0x00007fff9358270d Yes (*) /usr/lib/system/libsystem_malloc.dylib
0x00007fff90e8b490 0x00007fff90ef26c0 Yes (*) /usr/lib/system/libsystem_network.dylib
0x00007fff821fdd91 0x00007fff82207048 Yes (*) /usr/lib/system/libsystem_networkextension.dylib
0x00007fff8d83587b 0x00007fff8d83f440 Yes (*) /usr/lib/system/libsystem_notify.dylib
0x00007fff87837920 0x00007fff878404dc Yes (*) /usr/lib/system/libsystem_platform.dylib
0x00007fff8371df28 0x00007fff8372c120 Yes (*) /usr/lib/system/libsystem_pthread.dylib
0x00007fff81f9d7d4 0x00007fff81fa062c Yes (*) /usr/lib/system/libsystem_sandbox.dylib
0x00007fff81607ac7 0x00007fff816091f0 Yes (*) /usr/lib/system/libsystem_secinit.dylib
0x00007fff94877ab4 0x00007fff94889bd4 Yes (*) /usr/lib/system/libsystem_trace.dylib
0x00007fff8f782fc0 0x00007fff8f782ff8 Yes (*) /usr/lib/system/libunc.dylib
0x00007fff89443918 0x00007fff89449a9a Yes (*) /usr/lib/system/libunwind.dylib
0x00007fff8785fd44 0x00007fff8788dd58 Yes (*) /usr/lib/system/libxpc.dylib
0x00007fff849ad000 0x00007fff84dd9fa8 Yes (*) /usr/lib/libobjc.A.dylib
0x00007fff9177fda0 0x00007fff917c7090 Yes (*) /usr/lib/libauto.dylib
0x00007fff83a1ee80 0x00007fff83a49408 Yes (*) /usr/lib/libc++abi.dylib
0x00007fff8e794f90 0x00007fff8e7efc31 Yes (*) /usr/lib/libc++.1.dylib
0x00007fff9299812f 0x00007fff929991e0 Yes (*) /usr/lib/libDiagnosticMessagesClient.dylib
I'm not sure how this is supposed to be installed. Should I cd my way into the repo and then source luajit2.1.py and then run as usual? if I do this I get
(gdb) cd openresty-gdb-utils/
Working directory /home/caps/goluwa/data/bin/linux_x64/openresty-gdb-utils.
(gdb) source luajit21.py
Traceback (most recent call last):
File "luajit21.py", line 4, in <module>
import gdbutils
ImportError: No module named 'gdbutils'
(gdb)
I feel like I'm missing something obvious here as I'm not very experienced with GDB.
(initially i made this issue with nothing and a + sign by accidentally hitting enter or something)
Hi, I am just trying to use this tool, and I have some troubles:
GNU gdb (GDB) 7.6
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.html
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-unknown-linux-gnu".
For bug reporting instructions, please see:
http://www.gnu.org/software/gdb/bugs/.
(gdb) source luajit21.py
(gdb) lvmst
Traceback (most recent call last):
File "luajit21.py", line 597, in invoke
L = get_cur_L()
File "luajit21.py", line 127, in get_cur_L
mL = get_global_L()
File "luajit21.py", line 113, in get_global_L
gL, _ = gdb.lookup_symbol("globalL")
gdb.error: No frame selected.
Error occurred in Python command: No frame selected.
/root/uc/nginx-gdb-utils
I also updated the ~/.gdbinit with the above path.
Please let me know what is missing to get this tool working.
Also, please let me know how to use this tool in case I have a core dump on libluajit-5.1.so.
Thanks
when I use openresty 1.15.8.1
(gdb) lvmst
Traceback (most recent call last):
File "/home/icache/hcs/hcs.nginx/bin/openresty-gdb-utils/luajit21.py", line 613, in invoke
L = get_cur_L()
File "/home/icache/hcs/hcs.nginx/bin/openresty-gdb-utils/luajit21.py", line 131, in get_cur_L
return gcref(G(mL)['cur_L'])['th'].address
File "/home/icache/hcs/hcs.nginx/bin/openresty-gdb-utils/luajit21.py", line 326, in G
return mref(L['glref'], "global_State")
File "/home/icache/hcs/hcs.nginx/bin/openresty-gdb-utils/luajit21.py", line 183, in mref
return r['ptr32'].cast(typ("uintptr_t")).cast(typ(t + "*"))
gdb.error: There is no member named ptr32.
Error occurred in Python command: There is no member named ptr32.
>ldumpstack 0x40000378
index = 1
Traceback (most recent call last):
File "luajit21.py", line 4064, in invoke
gdb.execute("lval 0x%x" % ptr2int(tv))
gdb.error: No global L located (tried globalL and ngx_cycle)
Error occurred in Python command: No global L located (tried globalL and ngx_cycle)
When invoking ldumpstack with an argument specifying a Lua state, the above error is thrown.
>lval 0x400017f8
No global L located (tried globalL and ngx_cycle)
Similarly, invoking lval with any value without a findable global state results in an error, and lval does not accept a second argument to specify a state to look in.
lval checks for a global state, but does not appear to use the result. Removing this check does not appear to break anything, but does make both of the above cases work as expected.
When I try to use lgcstat
, gdb raises an exception, says '没有名为 ptr32 的成员'.
After some debug works, I find the exception is raised from this line: https://github.com/openresty/openresty-gdb-utils/blob/master/luajit21.py#L2549. Some changes of LuaJIT have broken the command.
So I dig inside the LuaJIT, and figure out several interesting things.
This commit: openresty/luajit2@cfa188f, renamed k64
to k64p
, which caused the break directly.
However, the another one: openresty/luajit2@9e99ccc, removed k64p
out of the code.
I know little about the inside of LuaJIT, so I am not sure how to adapt the change.
Could you fix the problem?
When I try to use this with gc64 I get this:
(gdb) lbt
Python Exception <class 'gdb.error'> There is no member named ptr32.:
Error occurred in Python command: There is no member named ptr32.
I am new to linux and nginx and I am trying to use 'nginx-gdb-utils' to analyze luajit, and getting the following error while executing the gdb commands.
(gdb) lbt full
Traceback (most recent call last):
File "luajit21.py", line 511, in invoke
L = get_cur_L()
File "luajit21.py", line 127, in get_cur_L
mL = get_global_L()
File "luajit21.py", line 113, in get_global_L
gL, _ = gdb.lookup_symbol("globalL")
gdb.error: No frame selected.
Error occurred in Python command: No frame selected.
(gdb) lvmst
Traceback (most recent call last):
File "luajit21.py", line 597, in invoke
L = get_cur_L()
File "luajit21.py", line 127, in get_cur_L
mL = get_global_L()
File "luajit21.py", line 113, in get_global_L
gL, _ = gdb.lookup_symbol("globalL")
gdb.error: No frame selected.
Error occurred in Python command: No frame selected.
Can you please help me to identify the issue.
root@ip-172-30-5-125:/opt/openresty/nginx/conf/openresty-gdb-utils# gdb /usr/local/openresty/nginx/sbin/nginx 1627
GNU gdb (Ubuntu 7.11.1-0ubuntu1~16.5) 7.11.1
Copyright (C) 2016 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from /usr/local/openresty/nginx/sbin/nginx...Reading symbols from /usr/lib/debug/.build-id/b5/26715423f8887c0f43fee5f6f92ad9de516f34.debug...d
one.
done.
Attaching to program: /usr/local/openresty/nginx/sbin/nginx, process 1627
Reading symbols from /lib/x86_64-linux-gnu/libdl.so.2...Reading symbols from /usr/lib/debug//lib/x86_64-linux-gnu/libdl-2.23.so...done.
done.
Reading symbols from /lib/x86_64-linux-gnu/libpthread.so.0...Reading symbols from /usr/lib/debug/.build-id/ce/17e023542265fc11d9bc8f534bb4f070493d30.debug...d
one.
done.
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Reading symbols from /lib/x86_64-linux-gnu/libcrypt.so.1...Reading symbols from /usr/lib/debug//lib/x86_64-linux-gnu/libcrypt-2.23.so...done.
done.
Reading symbols from /usr/local/openresty/luajit/lib/libluajit-5.1.so.2...Reading symbols from /usr/lib/debug/.build-id/e1/a0df4f3cc077937317d3ec0db79f2811d97
bff.debug...done.
done.
Reading symbols from /lib/x86_64-linux-gnu/libm.so.6...Reading symbols from /usr/lib/debug//lib/x86_64-linux-gnu/libm-2.23.so...done.
done.
Reading symbols from /usr/local/openresty/pcre/lib/libpcre.so.1...(no debugging symbols found)...done.
Reading symbols from /usr/local/openresty/openssl/lib/libssl.so.1.0.0...(no debugging symbols found)...done.
Reading symbols from /usr/local/openresty/openssl/lib/libcrypto.so.1.0.0...(no debugging symbols found)...done.
Reading symbols from /usr/local/openresty/zlib/lib/libz.so.1...(no debugging symbols found)...done.
Reading symbols from /lib/x86_64-linux-gnu/libc.so.6...Reading symbols from /usr/lib/debug//lib/x86_64-linux-gnu/libc-2.23.so...done.
done.
Reading symbols from /lib64/ld-linux-x86-64.so.2...Reading symbols from /usr/lib/debug//lib/x86_64-linux-gnu/ld-2.23.so...done.
done.
Reading symbols from /lib/x86_64-linux-gnu/libgcc_s.so.1...(no debugging symbols found)...done.
Reading symbols from /lib/x86_64-linux-gnu/libnss_files.so.2...Reading symbols from /usr/lib/debug//lib/x86_64-linux-gnu/libnss_files-2.23.so...done.
done.
Reading symbols from /lib/x86_64-linux-gnu/libnss_dns.so.2...Reading symbols from /usr/lib/debug//lib/x86_64-linux-gnu/libnss_dns-2.23.so...done.
done.
Reading symbols from /lib/x86_64-linux-gnu/libresolv.so.2...Reading symbols from /usr/lib/debug//lib/x86_64-linux-gnu/libresolv-2.23.so...done.
done.
Reading symbols from /lib/x86_64-linux-gnu/libnss_compat.so.2...Reading symbols from /usr/lib/debug//lib/x86_64-linux-gnu/libnss_compat-2.23.so...done.
done.
Reading symbols from /lib/x86_64-linux-gnu/libnsl.so.1...Reading symbols from /usr/lib/debug//lib/x86_64-linux-gnu/libnsl-2.23.so...done.
done.
Reading symbols from /lib/x86_64-linux-gnu/libnss_nis.so.2...Reading symbols from /usr/lib/debug//lib/x86_64-linux-gnu/libnss_nis-2.23.so...done.
done.
Reading symbols from /usr/local/lib/lua/5.1/lpeg.so...(no debugging symbols found)...done.
Reading symbols from /usr/local/lib/lua/5.1/socket/core.so...(no debugging symbols found)...done.
Reading symbols from /usr/local/openresty/lualib/cjson.so...Reading symbols from /usr/lib/debug/.build-id/17/db0c5d68ca313173ac7e4a323550c7ca9af932.debug...d$ne.
done.
Reading symbols from /usr/local/lib/lua/5.1/crypto.so...(no debugging symbols found)...done.
0x00007f675858f9f3 in __epoll_wait_nocancel () at ../sysdeps/unix/syscall-template.S:84
84 ../sysdeps/unix/syscall-template.S: No such file or directory.
(gdb) source luajit21.py
(gdb) lgcpath 100000 tab
path 000:[registry] ->Tab["tcp{client}"] ->Tab["__index"] ->Tab["send"] ->cfunc ->env ->Tab["loaded"] ->Tab["lapis"] ->Tab["app_cache"] ->Tab Traceback (most recent call last):
File "luajit21.py", line 2720, in invoke
self.visit_tval(g['registrytv'], g)
File "luajit21.py", line 2977, in visit_tval
self.dfs(gcval(tv), g)
File "luajit21.py", line 2958, in dfs
self.visit_tab(obj['tab'].address, g)
File "luajit21.py", line 3047, in visit_tab
self.dfs(gcval(tv), g)
File "luajit21.py", line 2958, in dfs
self.visit_tab(obj['tab'].address, g)
File "luajit21.py", line 3047, in visit_tab
self.dfs(gcval(tv), g)
File "luajit21.py", line 2958, in dfs
self.visit_tab(obj['tab'].address, g)
File "luajit21.py", line 3047, in visit_tab
self.dfs(gcval(tv), g)
File "luajit21.py", line 2960, in dfs
self.visit_func(obj['fn'].address, g)
File "luajit21.py", line 3070, in visit_func
self.dfs(tabref(fn['c']['env']), g)
File "luajit21.py", line 2958, in dfs
self.visit_tab(obj['tab'].address, g)
File "luajit21.py", line 3047, in visit_tab
self.dfs(gcval(tv), g)
File "luajit21.py", line 2958, in dfs
self.visit_tab(obj['tab'].address, g)
File "luajit21.py", line 3047, in visit_tab
self.dfs(gcval(tv), g)
File "luajit21.py", line 2958, in dfs
self.visit_tab(obj['tab'].address, g)
File "luajit21.py", line 3047, in visit_tab
self.dfs(gcval(tv), g)
File "luajit21.py", line 2952, in dfs
self.print_obj_path(g)
File "luajit21.py", line 2918, in print_obj_path
out("sz:%d (GCobj*)%#x ->END\n" % (sz, gco))
TypeError: %x format: an integer is required, not gdb.Value
Error occurred in Python command: %x format: an integer is required, not gdb.Value
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.