[lldb-dev] issue with lldb9 and python3.5

Ted Woodward via lldb-dev lldb-dev at lists.llvm.org
Mon Oct 28 15:36:38 PDT 2019


Internally on Windows we use Python 3.5.1. I just ran our latest nightly, and was able to run the script interpreter in lldb without issues.

I want to upgrade to 3.7.x, but I need to get permission from our lawyers to ship it. Looking forward to that…

From: lldb-dev <lldb-dev-bounces at lists.llvm.org> On Behalf Of Adrian McCarthy via lldb-dev
Sent: Monday, October 28, 2019 12:10 PM
To: Jonas Devlieghere <jonas at devlieghere.com>
Cc: Serge Guelton <sguelton at redhat.com>; LLDB Dev <lldb-dev at lists.llvm.org>
Subject: [EXT] Re: [lldb-dev] issue with lldb9 and python3.5

+1 Yes, for Windows, I'd be happy if we said Python 3.6+.

On Mon, Oct 28, 2019 at 10:07 AM Jonas Devlieghere via lldb-dev <lldb-dev at lists.llvm.org<mailto:lldb-dev at lists.llvm.org>> wrote:
On Mon, Oct 28, 2019 at 10:04 AM Jonas Devlieghere
<jonas at devlieghere.com<mailto:jonas at devlieghere.com>> wrote:
>
> On Mon, Oct 28, 2019 at 9:32 AM Tom Stellard <tstellar at redhat.com<mailto:tstellar at redhat.com>> wrote:
> >
> > On 10/28/2019 09:29 AM, Jonas Devlieghere wrote:
> > > Yes, Python 3.5 is not supported. We "officially" support Python 2.7
> > > and Python 3.7. I'm sorry if we forgot that in the release notes.
> > >
> >
> > Is there a specific reason why 3.5 is not supported?  Is it
> > because of this issue?
>
> Not really other than the lack of testing/CI.
>
> - The Linux bots are all running with Python 2.7.
> - I know that on macOS we ran into issues with some older versions. I
> don't remember if it was this particular issue and I'm not even sure
> if that was using Python 3.5 or Python 3.6. Our bots on GreenDragon
> all run with Python 3.7.
> - Stella's Windows bot is running Python 3.6 so we should consider
> that supported as well.

For completeness, Python 2.7 is not supported on Windows at all. The
docs specify Python 3.5 or later. Maybe we should bump that to 3.6
too?

>
> >
> > -Tom
> >
> > > On Mon, Oct 28, 2019 at 7:06 AM Tom Stellard via lldb-dev
> > > <lldb-dev at lists.llvm.org<mailto:lldb-dev at lists.llvm.org>> wrote:
> > >>
> > >> + lldb-dev
> > >>
> > >> On 10/28/2019 07:06 AM, Tom Stellard wrote:
> > >>> On 10/28/2019 03:50 AM, Romaric Jodin via lldb-dev wrote:
> > >>>> Hi everyone,
> > >>>>
> > >>>> I have lldb crashing since I've updated to lldb9. Seems like there is a issue with python3.5. Everything seems to work fine with python3.7.
> > >>>> Am I missing something? Or is it a known issue?
> > >>>>
> > >>>
> > >>> We have seen this too with python 3.6, but we haven't found the root cause yet.
> > >>> For now, we've worked around this by disabling the readline module with the
> > >>> attached patch.
> > >>>
> > >>> -Tom
> > >>>
> > >>>>     $ lldb
> > >>>>     (lldb) script
> > >>>>      #0 0x00007f3d324c9c2a llvm::sys::PrintStackTrace(llvm::raw_ostream&) (/home/rjodin/work/dpu_tools3/build/lib/libLLVM-9.so+0x6bfc2a)
> > >>>>      #1 0x00007f3d324c7af5 llvm::sys::RunSignalHandlers() (/home/rjodin/work/dpu_tools3/build/lib/libLLVM-9.so+0x6bdaf5)
> > >>>>      #2 0x00007f3d324c7c0c SignalHandler(int) (/home/rjodin/work/dpu_tools3/build/lib/libLLVM-9.so+0x6bdc0c)
> > >>>>      #3 0x00007f3d31bfe0e0 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x110e0)
> > >>>>      #4 0x00007f3d2d18f81b PyModule_GetState (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x6881b)
> > >>>>      #5 0x00007f3d230e1621 _init (/usr/lib/python3.5/lib-dynload/readline.cpython-35m-x86_64-linux-gnu.so<http://readline.cpython-35m-x86_64-linux-gnu.so> <http://readline.cpython-35m-x86_64-linux-gnu.so>+0x3621)
> > >>>>      #6 0x00007f3d2e3dece1 rl_initialize (/usr/lib/x86_64-linux-gnu/libedit.so.2+0x1dce1)
> > >>>>      #7 0x00007f3d230e1f3e _init (/usr/lib/python3.5/lib-dynload/readline.cpython-35m-x86_64-linux-gnu.so<http://readline.cpython-35m-x86_64-linux-gnu.so> <http://readline.cpython-35m-x86_64-linux-gnu.so>+0x3f3e)
> > >>>>      #8 0x00007f3d2d32d710 _PyImport_LoadDynamicModuleWithSpec (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x206710)
> > >>>>      #9 0x00007f3d2d330fe7 (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x209fe7)
> > >>>>     #10 0x00007f3d2d198259 PyCFunction_Call (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x71259)
> > >>>>     #11 0x00007f3d2d2c8ff2 PyEval_EvalFrameEx (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x1a1ff2)
> > >>>>     #12 0x00007f3d2d38b074 (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x264074)
> > >>>>     #13 0x00007f3d2d2c7adf PyEval_EvalFrameEx (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x1a0adf)
> > >>>>     #14 0x00007f3d2d2c96ad PyEval_EvalFrameEx (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x1a26ad)
> > >>>>     #15 0x00007f3d2d2c96ad PyEval_EvalFrameEx (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x1a26ad)
> > >>>>     #16 0x00007f3d2d2c96ad PyEval_EvalFrameEx (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x1a26ad)
> > >>>>     #17 0x00007f3d2d2c96ad PyEval_EvalFrameEx (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x1a26ad)
> > >>>>     #18 0x00007f3d2d38b074 (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x264074)
> > >>>>     #19 0x00007f3d2d38b153 PyEval_EvalCodeEx (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x264153)
> > >>>>     #20 0x00007f3d2d21e558 (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0xf7558)
> > >>>>     #21 0x00007f3d2d2faa37 PyObject_Call (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x1d3a37)
> > >>>>     #22 0x00007f3d2d2fce1b _PyObject_CallMethodIdObjArgs (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x1d5e1b)
> > >>>>     #23 0x00007f3d2d32effa PyImport_ImportModuleLevelObject (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x207ffa)
> > >>>>     #24 0x00007f3d2d2cd248 (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x1a6248)
> > >>>>     #25 0x00007f3d2d198279 PyCFunction_Call (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x71279)
> > >>>>     #26 0x00007f3d2d2faa37 PyObject_Call (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x1d3a37)
> > >>>>     #27 0x00007f3d2d389b77 PyEval_CallObjectWithKeywords (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x262b77)
> > >>>>     #28 0x00007f3d2d2c57cb PyEval_EvalFrameEx (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x19e7cb)
> > >>>>     #29 0x00007f3d2d38b074 (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x264074)
> > >>>>     #30 0x00007f3d2d38b153 PyEval_EvalCodeEx (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x264153)
> > >>>>     #31 0x00007f3d2d2c145b PyEval_EvalCode (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x19a45b)
> > >>>>     #32 0x00007f3d2d2ce2cd (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x1a72cd)
> > >>>>     #33 0x00007f3d2d198259 PyCFunction_Call (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x71259)
> > >>>>     #34 0x00007f3d2d2c8ff2 PyEval_EvalFrameEx (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x1a1ff2)
> > >>>>     #35 0x00007f3d2d38b074 (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x264074)
> > >>>>     #36 0x00007f3d2d2c7adf PyEval_EvalFrameEx (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x1a0adf)
> > >>>>     #37 0x00007f3d2d2c96ad PyEval_EvalFrameEx (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x1a26ad)
> > >>>>     #38 0x00007f3d2d2c96ad PyEval_EvalFrameEx (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x1a26ad)
> > >>>>     #39 0x00007f3d2d2c96ad PyEval_EvalFrameEx (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x1a26ad)
> > >>>>     #40 0x00007f3d2d38b074 (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x264074)
> > >>>>     #41 0x00007f3d2d38b153 PyEval_EvalCodeEx (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x264153)
> > >>>>     #42 0x00007f3d2d21e558 (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0xf7558)
> > >>>>     #43 0x00007f3d2d2faa37 PyObject_Call (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x1d3a37)
> > >>>>     #44 0x00007f3d2d2fce1b _PyObject_CallMethodIdObjArgs (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x1d5e1b)
> > >>>>     #45 0x00007f3d2d32effa PyImport_ImportModuleLevelObject (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x207ffa)
> > >>>>     #46 0x00007f3d2d2cd248 (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x1a6248)
> > >>>>     #47 0x00007f3d2d198279 PyCFunction_Call (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x71279)
> > >>>>     #48 0x00007f3d2d2faa37 PyObject_Call (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x1d3a37)
> > >>>>     #49 0x00007f3d2d389b77 PyEval_CallObjectWithKeywords (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x262b77)
> > >>>>     #50 0x00007f3d2d2c57cb PyEval_EvalFrameEx (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x19e7cb)
> > >>>>     #51 0x00007f3d2d38b074 (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x264074)
> > >>>>     #52 0x00007f3d2d38b153 PyEval_EvalCodeEx (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x264153)
> > >>>>     #53 0x00007f3d2d2c145b PyEval_EvalCode (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x19a45b)
> > >>>>     #54 0x00007f3d2d2deb2f PyRun_StringFlags (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x1b7b2f)
> > >>>>     #55 0x00007f3d2d2dfb5b PyRun_SimpleStringFlags (/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0+0x1b8b5b)
> > >>>>     #56 0x00007f3d2ff6a1cc lldb_private::ScriptInterpreterPythonImpl::InitializePrivate() (/home/rjodin/work/dpu_tools3/build/lib/liblldb.so.9+0xd351cc)
> > >>>>     #57 0x00007f3d2ff6cf7a lldb_private::ScriptInterpreterPythonImpl::ScriptInterpreterPythonImpl(lldb_private::Debugger&) (/home/rjodin/work/dpu_tools3/build/lib/liblldb.so.9+0xd37f7a)
> > >>>>     #58 0x00007f3d2ff6d172 lldb_private::ScriptInterpreterPythonImpl::CreateInstance(lldb_private::Debugger&) (/home/rjodin/work/dpu_tools3/build/lib/liblldb.so.9+0xd38172)
> > >>>>     #59 0x00007f3d2fa9a692 lldb_private::PluginManager::GetScriptInterpreterForLanguage(lldb::ScriptLanguage, lldb_private::Debugger&) (/home/rjodin/work/dpu_tools3/build/lib/liblldb.so.9+0x865692)
> > >>>>     #60 0x00007f3d2fa52c6a lldb_private::Debugger::GetScriptInterpreter(bool) (/home/rjodin/work/dpu_tools3/build/lib/liblldb.so.9+0x81dc6a)
> > >>>>     #61 0x00007f3d2fb478dc lldb_private::CommandObjectScript::DoExecute(llvm::StringRef, lldb_private::CommandReturnObject&) (/home/rjodin/work/dpu_tools3/build/lib/liblldb.so.9+0x9128dc)
> > >>>>     #62 0x00007f3d2fb43165 lldb_private::CommandObjectRaw::Execute(char const*, lldb_private::CommandReturnObject&) (/home/rjodin/work/dpu_tools3/build/lib/liblldb.so.9+0x90e165)
> > >>>>     #63 0x00007f3d2fb40445 lldb_private::CommandInterpreter::HandleCommand(char const*, lldb_private::LazyBool, lldb_private::CommandReturnObject&, lldb_private::ExecutionContext*, bool, bool) (/home/rjodin/work/dpu_tools3/build/lib/liblldb.so.9+0x90b445)
> > >>>>     #64 0x00007f3d2fb41770 lldb_private::CommandInterpreter::IOHandlerInputComplete(lldb_private::IOHandler&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) (/home/rjodin/work/dpu_tools3/build/lib/liblldb.so.9+0x90c770)
> > >>>>     #65 0x00007f3d2fa85851 lldb_private::IOHandlerEditline::Run() (/home/rjodin/work/dpu_tools3/build/lib/liblldb.so.9+0x850851)
> > >>>>     #66 0x00007f3d2fa5277f lldb_private::Debugger::ExecuteIOHandlers() (/home/rjodin/work/dpu_tools3/build/lib/liblldb.so.9+0x81d77f)
> > >>>>     #67 0x00007f3d2fb3452f lldb_private::CommandInterpreter::RunCommandInterpreter(bool, bool, lldb_private::CommandInterpreterRunOptions&) (/home/rjodin/work/dpu_tools3/build/lib/liblldb.so.9+0x8ff52f)
> > >>>>     #68 0x00007f3d2f79a496 lldb::SBDebugger::RunCommandInterpreter(bool, bool) (/home/rjodin/work/dpu_tools3/build/lib/liblldb.so.9+0x565496)
> > >>>>     #69 0x0000564c6c55e757 Driver::MainLoop() (/home/rjodin/work/dpu_tools3/build/bin/lldb+0x6757)
> > >>>>     #70 0x0000564c6c55d51b main (/home/rjodin/work/dpu_tools3/build/bin/lldb+0x551b)
> > >>>>     #71 0x00007f3d2e6192e1 __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x202e1)
> > >>>>     #72 0x0000564c6c55d57a _start (/home/rjodin/work/dpu_tools3/build/bin/lldb+0x557a)
> > >>>>     Stack dump:
> > >>>>     0.      Program arguments: lldb
> > >>>>     1.      HandleCommand(command = "script")
> > >>>>     Erreur de segmentation
> > >>>>
> > >>>>
> > >>>> Thanks
> > >>>> --
> > >>>> *Romaric JODIN*
> > >>>> UPMEM
> > >>>> /Software Engineer/
> > >>>>
> > >>>>
> > >>>>
> > >>>> _______________________________________________
> > >>>> lldb-dev mailing list
> > >>>> lldb-dev at lists.llvm.org<mailto:lldb-dev at lists.llvm.org>
> > >>>> https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev
> > >>>>
> > >>>
> > >>
> > >> _______________________________________________
> > >> lldb-dev mailing list
> > >> lldb-dev at lists.llvm.org<mailto:lldb-dev at lists.llvm.org>
> > >> https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev
> >
_______________________________________________
lldb-dev mailing list
lldb-dev at lists.llvm.org<mailto:lldb-dev at lists.llvm.org>
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/lldb-dev/attachments/20191028/977c80be/attachment-0001.html>


More information about the lldb-dev mailing list