[Lldb-commits] [PATCH] D93926: [lldb] Don't remove the lldb.debugger var after exiting the interpreter
Nathan Lanza via Phabricator via lldb-commits
lldb-commits at lists.llvm.org
Thu Jan 7 21:41:52 PST 2021
lanza added a comment.
I guess if the intention of that is maintain the debugger instance around it should work, but at the moment it segfaults pretty quick with Xcode's lldb using:
import threading
import lldb
import time
def background(debugger: lldb.SBDebugger):
while True:
time.sleep(1)
print(debugger)
def __lldb_init_module(
debugger: lldb.SBDebugger,
internal_dict: dict
):
threading.Thread()
threading.Thread(target=background, args=(debugger,)).start()
and
$ lldb a.out
(lldb) command script import test.py
(lldb) // do a few things
0 lldb 0x00000001058d8575 llvm::sys::PrintStackTrace(llvm::raw_ostream&) + 37
1 lldb 0x00000001058d7b55 llvm::sys::RunSignalHandlers() + 85
2 lldb 0x00000001058d8dd6 SignalHandler(int) + 262
3 libsystem_platform.dylib 0x00007fff20394d7d _sigtramp + 29
4 libsystem_platform.dylib 0x000000010762d680 _sigtramp + 18446603344394422560
5 liblldbPluginScriptInterpreterPython3.dylib 0x00000001059f1802 _wrap_SBDebugger___str__(_object*, _object*) + 130
6 Python3 0x0000000105bf6453 cfunction_call_varargs + 323
7 Python3 0x0000000105bf5dd6 _PyObject_MakeTpCall + 374
8 Python3 0x0000000105cd613c call_function + 652
9 Python3 0x0000000105cd26d6 _PyEval_EvalFrameDefault + 29782
10 Python3 0x0000000105bf678d function_code_fastcall + 237
11 Python3 0x0000000105bf7192 _PyObject_FastCall_Prepend + 178
12 Python3 0x0000000105c4e527 slot_tp_str + 183
13 Python3 0x0000000105c37a62 PyObject_Str + 146
14 Python3 0x0000000105c09b95 PyFile_WriteObject + 149
15 Python3 0x0000000105cc96f2 builtin_print + 450
16 Python3 0x0000000105c34a82 cfunction_vectorcall_FASTCALL_KEYWORDS + 130
17 Python3 0x0000000105cd6012 call_function + 354
18 Python3 0x0000000105cd278a _PyEval_EvalFrameDefault + 29962
19 Python3 0x0000000105bf678d function_code_fastcall + 237
20 Python3 0x0000000105bf6124 PyVectorcall_Call + 100
21 Python3 0x0000000105cd2a34 _PyEval_EvalFrameDefault + 30644
22 Python3 0x0000000105bf678d function_code_fastcall + 237
23 Python3 0x0000000105cd6012 call_function + 354
24 Python3 0x0000000105cd26b9 _PyEval_EvalFrameDefault + 29753
25 Python3 0x0000000105bf678d function_code_fastcall + 237
26 Python3 0x0000000105cd6012 call_function + 354
27 Python3 0x0000000105cd26b9 _PyEval_EvalFrameDefault + 29753
28 Python3 0x0000000105bf678d function_code_fastcall + 237
29 Python3 0x0000000105bf91e2 method_vectorcall + 322
30 Python3 0x0000000105bf6124 PyVectorcall_Call + 100
31 Python3 0x0000000105d7800a t_bootstrap + 74
32 Python3 0x0000000105d29829 pythread_wrapper + 25
33 libsystem_pthread.dylib 0x00007fff20350950 _pthread_start + 224
34 libsystem_pthread.dylib 0x00007fff2034c47b thread_start + 15
fish: 'lldb' terminated by signal SIGSEGV (Address boundary error)
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D93926/new/
https://reviews.llvm.org/D93926
More information about the lldb-commits
mailing list