Skip to content

Commit a756dc4

Browse files
committed
[lldb][test] Try a workaround for module cache test on Arm/AArch64 Linux
If this works it'll give me a clue for the underlying issue.
1 parent f72b654 commit a756dc4

File tree

1 file changed

+7
-4
lines changed

1 file changed

+7
-4
lines changed

lldb/test/API/python_api/global_module_cache/TestGlobalModuleCache.py

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -34,10 +34,6 @@ def copy_to_main(self, src, dst):
3434
# The rerun tests indicate rerunning on Windows doesn't really work, so
3535
# this one won't either.
3636
@skipIfWindows
37-
# On Arm and AArch64 Linux, this test attempts to pop a thread plan when
38-
# we only have the base plan remaining. Skip it until we can figure out
39-
# the bug this is exposing.
40-
@skipIf(oslist=["linux"], archs=["arm", "aarch64"])
4137
def test_OneTargetOneDebugger(self):
4238
self.do_test(True, True)
4339

@@ -104,6 +100,13 @@ def do_test(self, one_target, one_debugger):
104100
self.old_debugger = self.dbg
105101
self.dbg = new_debugger
106102
def cleanupDebugger(self):
103+
# On Arm and AArch64 Linux, it is suspected that destroying
104+
# the debugger first causes lldb to try to pop from an empty
105+
# thread plan stack. Try to prove this by killing the process
106+
# first.
107+
for i in range(self.dbg.GetNumTargets()):
108+
self.dbg.GetTargetAtIndex(i).GetProcess().Kill()
109+
107110
lldb.SBDebugger.Destroy(self.dbg)
108111
self.dbg = self.old_debugger
109112
self.old_debugger = None

0 commit comments

Comments
 (0)