[Lldb-commits] [lldb] [lldb] Return *const* UnwindPlan pointers from FuncUnwinders (PR #133247)
Dmitry Vasilyev via lldb-commits
lldb-commits at lists.llvm.org
Thu Apr 3 01:37:17 PDT 2025
slydiman wrote:
`lldb-shell::ProcessMachCoreArch.test` is flake.
But the following tests are broken by this commit (segmentation fault):
1. `lldb-api::TestMiniDump.py`:
```
2 _lldb.cpython-312-x86_64-linux-gnu.so 0x0000751c11a3cd14
3 libc.so.6 0x0000751c18845330
4 _lldb.cpython-312-x86_64-linux-gnu.so 0x0000751c11459af7
5 _lldb.cpython-312-x86_64-linux-gnu.so 0x0000751c1145f215
6 _lldb.cpython-312-x86_64-linux-gnu.so 0x0000751c1145f9b3
7 _lldb.cpython-312-x86_64-linux-gnu.so 0x0000751c1143e18d
8 _lldb.cpython-312-x86_64-linux-gnu.so 0x0000751c1143ea75
9 _lldb.cpython-312-x86_64-linux-gnu.so 0x0000751c113ac4cb
10 _lldb.cpython-312-x86_64-linux-gnu.so 0x0000751c113ad37f
11 _lldb.cpython-312-x86_64-linux-gnu.so 0x0000751c113ad487
12 _lldb.cpython-312-x86_64-linux-gnu.so 0x0000751c113aed4e
13 _lldb.cpython-312-x86_64-linux-gnu.so 0x0000751c1140addf
14 _lldb.cpython-312-x86_64-linux-gnu.so 0x0000751c1180e278
15 _lldb.cpython-312-x86_64-linux-gnu.so 0x0000751c1138ba28
16 _lldb.cpython-312-x86_64-linux-gnu.so 0x0000751c1138bea3
17 _lldb.cpython-312-x86_64-linux-gnu.so 0x0000751c1138c3e3
18 _lldb.cpython-312-x86_64-linux-gnu.so 0x0000751c1125c17c
19 libc.so.6 0x0000751c1889caa4
20 libc.so.6 0x0000751c18929c3c
Fatal Python error: Segmentation fault
Thread 0x0000751c18b68080 (most recent call first):
File "/home/buildbot/worker/as-builder-9/lldb-remote-linux-ubuntu/build/local/lib/python3.12/dist-packages/lldb/__init__.py", line 11494 in LoadCore
File "/home/buildbot/worker/as-builder-9/lldb-remote-linux-ubuntu/llvm-project/lldb/test/API/functionalities/postmortem/minidump/TestMiniDump.py", line 43 in test_modules_in_mini_dump
File "/usr/lib/python3.12/unittest/case.py", line 589 in _callTestMethod
File "/usr/lib/python3.12/unittest/case.py", line 634 in run
File "/usr/lib/python3.12/unittest/case.py", line 690 in __call__
File "/usr/lib/python3.12/unittest/suite.py", line 122 in run
File "/usr/lib/python3.12/unittest/suite.py", line 84 in __call__
File "/usr/lib/python3.12/unittest/suite.py", line 122 in run
File "/usr/lib/python3.12/unittest/suite.py", line 84 in __call__
File "/usr/lib/python3.12/unittest/runner.py", line 240 in run
File "/home/buildbot/worker/as-builder-9/lldb-remote-linux-ubuntu/llvm-project/lldb/packages/Python/lldbsuite/test/dotest.py", line 1108 in run_suite
File "/home/buildbot/worker/as-builder-9/lldb-remote-linux-ubuntu/llvm-project/lldb/test/API/dotest.py", line 8 in <module>
Extension modules: lldb._lldb (total: 1)
```
2. `lldb-shell::broken-unwind.test`:
```
Program arguments: /home/buildbot/worker/as-builder-9/lldb-remote-linux-ubuntu/build/bin/lldb -O "platform select remote-linux" -O "platform connect connect://jetson-agx-2198.lab.llvm.org:1234" -O "platform shell mkdir -p /home/ubuntu/lldb-tests/shell/home/ubuntu/lldb-tests/shell/Minidump/Windows/broken-unwind.test" -O "platform settings -w /home/ubuntu/lldb-tests/shell/home/ubuntu/lldb-tests/shell/Minidump/Windows/broken-unwind.test" --no-lldbinit -S /home/buildbot/worker/as-builder-9/lldb-remote-linux-ubuntu/build/tools/lldb/test/Shell/lit-lldb-init-quiet -O "settings set target.exec-search-paths /home/buildbot/worker/as-builder-9/lldb-remote-linux-ubuntu/build/tools/lldb/test/Shell/Minidump/Windows/Output" -c /home/buildbot/worker/as-builder-9/lldb-remote-linux-ubuntu/build/tools/lldb/test/Shell/Minidump/Windows/Output/broken-unwind.dmp -o "image show-unwind -a 0xb1000" -o exit
#0 0x000063ebd3da85c2 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/home/buildbot/worker/as-builder-9/lldb-remote-linux-ubuntu/build/bin/lldb+0x395c2)
#1 0x000063ebd3da5d5f llvm::sys::RunSignalHandlers() (/home/buildbot/worker/as-builder-9/lldb-remote-linux-ubuntu/build/bin/lldb+0x36d5f)
#2 0x000063ebd3da5ea4 SignalHandler(int, siginfo_t*, void*) Signals.cpp:0:0
#3 0x00007cb82ca45330 (/lib/x86_64-linux-gnu/libc.so.6+0x45330)
#4 0x00007cb82ca9eb2c pthread_kill (/lib/x86_64-linux-gnu/libc.so.6+0x9eb2c)
#5 0x00007cb82ca4527e raise (/lib/x86_64-linux-gnu/libc.so.6+0x4527e)
#6 0x00007cb82e43a553 SignalHandler(int, siginfo_t*, void*) Signals.cpp:0:0
#7 0x00007cb82ca45330 (/lib/x86_64-linux-gnu/libc.so.6+0x45330)
#8 0x00007cb82de575b7 lldb_private::RegisterContextUnwind::ReadFrameAddress(lldb::RegisterKind, lldb_private::UnwindPlan::Row::FAValue const&, unsigned long&) (/home/buildbot/worker/as-builder-9/lldb-remote-linux-ubuntu/build/lib/liblldb.so.21.0git+0xc575b7)
#9 0x00007cb82de5ccd5 lldb_private::RegisterContextUnwind::InitializeZerothFrame() (/home/buildbot/worker/as-builder-9/lldb-remote-linux-ubuntu/build/lib/liblldb.so.21.0git+0xc5ccd5)
#10 0x00007cb82de5d473 lldb_private::RegisterContextUnwind::RegisterContextUnwind(lldb_private::Thread&, std::shared_ptr<lldb_private::RegisterContextUnwind> const&, lldb_private::SymbolContext&, unsigned int, lldb_private::UnwindLLDB&) (/home/buildbot/worker/as-builder-9/lldb-remote-linux-ubuntu/build/lib/liblldb.so.21.0git+0xc5d473)
#11 0x00007cb82de3bc4d lldb_private::UnwindLLDB::AddFirstFrame() (.part.0) UnwindLLDB.cpp:0:0
#12 0x00007cb82de3c535 lldb_private::UnwindLLDB::DoGetFrameInfoAtIndex(unsigned int, unsigned long&, unsigned long&, bool&) (/home/buildbot/worker/as-builder-9/lldb-remote-linux-ubuntu/build/lib/liblldb.so.21.0git+0xc3c535)
#13 0x00007cb82dda9f8b lldb_private::StackFrameList::FetchFramesUpTo(unsigned int, InterruptionControl) (/home/buildbot/worker/as-builder-9/lldb-remote-linux-ubuntu/build/lib/liblldb.so.21.0git+0xba9f8b)
#14 0x00007cb82ddaae3f lldb_private::StackFrameList::GetFramesUpTo(unsigned int, InterruptionControl) (/home/buildbot/worker/as-builder-9/lldb-remote-linux-ubuntu/build/lib/liblldb.so.21.0git+0xbaae3f)
#15 0x00007cb82ddaaf47 lldb_private::StackFrameList::GetFrameAtIndex(unsigned int) (/home/buildbot/worker/as-builder-9/lldb-remote-linux-ubuntu/build/lib/liblldb.so.21.0git+0xbaaf47)
#16 0x00007cb82ddac80e lldb_private::StackFrameList::SetDefaultFileAndLineToSelectedFrame() (/home/buildbot/worker/as-builder-9/lldb-remote-linux-ubuntu/build/lib/liblldb.so.21.0git+0xbac80e)
#17 0x00007cb82de0889f lldb_private::ThreadList::SetSelectedThreadByID(unsigned long, bool) (/home/buildbot/worker/as-builder-9/lldb-remote-linux-ubuntu/build/lib/liblldb.so.21.0git+0xc0889f)
#18 0x00007cb82dd8000e lldb_private::Process::HandleProcessStateChangedEvent(std::shared_ptr<lldb_private::Event> const&, lldb_private::Stream*, SelectMostRelevant, bool&) (/home/buildbot/worker/as-builder-9/lldb-remote-linux-ubuntu/build/lib/liblldb.so.21.0git+0xb8000e)
#19 0x00007cb82dd80480 lldb_private::Process::WaitForProcessToStop(lldb_private::Timeout<std::ratio<1l, 1000000l>> const&, std::shared_ptr<lldb_private::Event>*, bool, std::shared_ptr<lldb_private::Listener>, lldb_private::Stream*, bool, SelectMostRelevant) (/home/buildbot/worker/as-builder-9/lldb-remote-linux-ubuntu/build/lib/liblldb.so.21.0git+0xb80480)
#20 0x00007cb82dd833da lldb_private::Process::LoadCore() (/home/buildbot/worker/as-builder-9/lldb-remote-linux-ubuntu/build/lib/liblldb.so.21.0git+0xb833da)
#21 0x00007cb82efb09ba CommandObjectTargetCreate::DoExecute(lldb_private::Args&, lldb_private::CommandReturnObject&) (/home/buildbot/worker/as-builder-9/lldb-remote-linux-ubuntu/build/lib/liblldb.so.21.0git+0x1db09ba)
#22 0x00007cb82dc8414d lldb_private::CommandObjectParsed::Execute(char const*, lldb_private::CommandReturnObject&) (/home/buildbot/worker/as-builder-9/lldb-remote-linux-ubuntu/build/lib/liblldb.so.21.0git+0xa8414d)
#23 0x00007cb82dc7de69 lldb_private::CommandInterpreter::HandleCommand(char const*, lldb_private::LazyBool, lldb_private::CommandReturnObject&, bool) (/home/buildbot/worker/as-builder-9/lldb-remote-linux-ubuntu/build/lib/liblldb.so.21.0git+0xa7de69)
#24 0x00007cb82dc7e7b6 lldb_private::CommandInterpreter::IOHandlerInputComplete(lldb_private::IOHandler&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&) (/home/buildbot/worker/as-builder-9/lldb-remote-linux-ubuntu/build/lib/liblldb.so.21.0git+0xa7e7b6)
#25 0x00007cb82db83e5c lldb_private::IOHandlerEditline::Run() (/home/buildbot/worker/as-builder-9/lldb-remote-linux-ubuntu/build/lib/liblldb.so.21.0git+0x983e5c)
#26 0x00007cb82db50bc1 lldb_private::Debugger::RunIOHandlers() (/home/buildbot/worker/as-builder-9/lldb-remote-linux-ubuntu/build/lib/liblldb.so.21.0git+0x950bc1)
#27 0x00007cb82dc6ac16 lldb_private::CommandInterpreter::RunCommandInterpreter(lldb_private::CommandInterpreterRunOptions&) (/home/buildbot/worker/as-builder-9/lldb-remote-linux-ubuntu/build/lib/liblldb.so.21.0git+0xa6ac16)
#28 0x00007cb82d8d058c lldb::SBDebugger::RunCommandInterpreter(lldb::SBCommandInterpreterRunOptions const&) (/home/buildbot/worker/as-builder-9/lldb-remote-linux-ubuntu/build/lib/liblldb.so.21.0git+0x6d058c)
#29 0x000063ebd3d81793 Driver::MainLoop() (/home/buildbot/worker/as-builder-9/lldb-remote-linux-ubuntu/build/bin/lldb+0x12793)
#30 0x000063ebd3d7e874 main (/home/buildbot/worker/as-builder-9/lldb-remote-linux-ubuntu/build/bin/lldb+0xf874)
#31 0x00007cb82ca2a1ca (/lib/x86_64-linux-gnu/libc.so.6+0x2a1ca)
#32 0x00007cb82ca2a28b __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x2a28b)
#33 0x000063ebd3d7eb35 _start (/home/buildbot/worker/as-builder-9/lldb-remote-linux-ubuntu/build/bin/lldb+0xfb35)
/home/buildbot/worker/as-builder-9/lldb-remote-linux-ubuntu/build/tools/lldb/test/Shell/Minidump/Windows/Output/
broken-unwind.test.script: line 3: 3769789 Segmentation fault (core dumped)
/home/buildbot/worker/as-builder-9/lldb-remote-linux-ubuntu/build/bin/lldb -O "platform select remote-linux" -O "platform connect connect://jetson-agx-2198.lab.llvm.org:1234" -O "platform shell mkdir -p /home/ubuntu/lldb-tests/shell/home/ubuntu/lldb-tests/shell/Minidump/Windows/broken-unwind.test" -O "platform settings -w /home/ubuntu/lldb-tests/shell/home/ubuntu/lldb-tests/shell/Minidump/Windows/broken-unwind.test" --no-lldbinit -S /home/buildbot/worker/as-builder-9/lldb-remote-linux-ubuntu/build/tools/lldb/test/Shell/lit-lldb-init-quiet -O "settings set target.exec-search-paths /home/buildbot/worker/as-builder-9/lldb-remote-linux-ubuntu/build/tools/lldb/test/Shell/Minidump/Windows/Output" -c /home/buildbot/worker/as-builder-9/lldb-remote-linux-ubuntu/build/tools/lldb/test/Shell/Minidump/Windows/Output/broken-unwind.dmp -o "image show-unwind -a 0xb1000" -o exit
```
https://github.com/llvm/llvm-project/pull/133247
More information about the lldb-commits
mailing list