llvm / llvm/llvm-project

lldb's TestThreadJump.py is flakey on Windows on Arm

Open
#201,068 4 comments 0 reactions 0 assignees View on GitHub
lldb platform:windows test-suite
Dominant language
LLVM
Stars
40.5k
Forks
18.7k
PR merge metrics
PR metrics pending

Description

For example:
https://github.com/llvm/llvm-project/pull/201019#issuecomment-4599368236
https://lab.llvm.org/buildbot/#/builders/141/builds/19138

```
FAIL: lldb-api :: functionalities/thread/jump/TestThreadJump.py (735 of 2539)
******************** TEST 'lldb-api :: functionalities/thread/jump/TestThreadJump.py' FAILED ********************
Script:
--
C:/Users/tcwg/scoop/apps/python/current/python.exe C:/Users/tcwg/llvm-worker/lldb-aarch64-windows/llvm-project/lldb\test\API\dotest.py -u CXXFLAGS -u CFLAGS --env LLVM_LIBS_DIR=C:/Users/tcwg/llvm-worker/lldb-aarch64-windows/build/./lib --env LLVM_INCLUDE_DIR=C:/Users/tcwg/llvm-worker/lldb-aarch64-windows/build/include --env LLVM_TOOLS_DIR=C:/Users/tcwg/llvm-worker/lldb-aarch64-windows/build/./bin --triple aarch64-pc-windows-msvc --build-dir C:/Users/tcwg/llvm-worker/lldb-aarch64-windows/build/lldb-test-build.noindex --lldb-module-cache-dir C:/Users/tcwg/llvm-worker/lldb-aarch64-windows/build/lldb-test-build.noindex/module-cache-lldb\lldb-api --clang-module-cache-dir C:/Users/tcwg/llvm-worker/lldb-aarch64-windows/build/lldb-test-build.noindex/module-cache-clang\lldb-api --executable C:/Users/tcwg/llvm-worker/lldb-aarch64-windows/build/./bin/lldb.exe --compiler C:/Users/tcwg/llvm-worker/lldb-aarch64-windows/build/./bin/clang.exe --dsymutil C:/Users/tcwg/llvm-worker/lldb-aarch64-windows/build/./bin/dsymutil.exe --make C:/Users/tcwg/scoop/shims/make.exe --llvm-tools-dir C:/Users/tcwg/llvm-worker/lldb-aarch64-windows/build/./bin --lldb-obj-root C:/Users/tcwg/llvm-worker/lldb-aarch64-windows/build/tools/lldb --lldb-libs-dir C:/Users/tcwg/llvm-worker/lldb-aarch64-windows/build/./lib --cmake-build-type Release --skip-category=watchpoint --env LLDB_LAUNCH_FLAG_USE_PIPES=1 C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\test\API\functionalities\thread\jump -p TestThreadJump.py
--
Exit Code: 1

Command Output (stdout):
--
lldb version 23.0.0git (https://github.com/llvm/llvm-project.git revision 9547e0f5960bb1021112c5a373217c209b6b4014)
clang revision 9547e0f5960bb1021112c5a373217c209b6b4014
llvm revision 9547e0f5960bb1021112c5a373217c209b6b4014
Skipping the following test categories: watchpoint, libc++, libstdcxx, dwo, dsym, gmodules, debugserver, objc, fork, pexpect

--
Command Output (stderr):
--
UNSUPPORTED: LLDB (C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\build\bin\clang.exe-aarch64) :: test_dsym (TestThreadJump.ThreadJumpTestCase.test_dsym) (test case does not fall in any category of interest for this run)

FAIL: LLDB (C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\build\bin\clang.exe-aarch64) :: test_dwarf (TestThreadJump.ThreadJumpTestCase.test_dwarf)

Log Files:

- C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\build\lldb-test-build.noindex\functionalities\thread\jump\TestThreadJump\Failure_test_dwarf.log

UNSUPPORTED: LLDB (C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\build\bin\clang.exe-aarch64) :: test_dwo (TestThreadJump.ThreadJumpTestCase.test_dwo) (test case does not fall in any category of interest for this run)

UNSUPPORTED: LLDB (C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\build\bin\clang.exe-aarch64) :: test_jump_offset_dsym (TestThreadJump.ThreadJumpTestCase.test_jump_offset_dsym) (test case does not fall in any category of interest for this run)

PASS: LLDB (C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\build\bin\clang.exe-aarch64) :: test_jump_offset_dwarf (TestThreadJump.ThreadJumpTestCase.test_jump_offset_dwarf)

UNSUPPORTED: LLDB (C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\build\bin\clang.exe-aarch64) :: test_jump_offset_dwo (TestThreadJump.ThreadJumpTestCase.test_jump_offset_dwo) (test case does not fall in any category of interest for this run)

======================================================================

FAIL: test_dwarf (TestThreadJump.ThreadJumpTestCase.test_dwarf)
```
Not much to go on, but I do know it's been doing this for a while.

Contributor guide

Open the contributing guide

Research direction

Start with lldb/test/API/functionalities/thread/jump/TestThreadJump.py and reproduce the Windows on Arm failure using the command shown in the issue. Read Failure_test_dwarf.log and compare test_dwarf with the passing test_jump_offset_dwarf. Done means test_dwarf no longer flakes on the reported configuration.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
compilers, testing
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.