sdk icon indicating copy to clipboard operation
sdk copied to clipboard

[gardening] dwarf_stack_trace_invisible_functions_test went from flaky to RTE

Open dcharkes opened this issue 1 year ago • 2 comments

There are new test failures on [cfe] Add test for issue 53539...[cfe] Add test for issue 52542.

The tests

standalone/dwarf_stack_trace_invisible_functions_test RuntimeError (expected Pass)

are failing on configurations

vm-aot-linux-debug-simarm_x64

The release config vm-aot-linux-release-simarm_x64 seems to be working fine.

  • https://dart-current-results.web.app/#/filter=standalone/dwarf_stack_trace_invisible_functions_test&showAll

Log: https://dart-ci.appspot.com/log/vm-aot-linux-debug-simarm_x64/vm-aot-linux-debug-simarm_x64/1469/standalone/dwarf_stack_trace_invisible_functions_test

--- Command "vm_compile_to_kernel" (took 05.000602s):
DART_CONFIGURATION=DebugSIMARM_X64 /b/s/w/ir/pkg/vm/tool/gen_kernel --aot --platform=out/DebugSIMARM_X64/vm_platform_strong.dill -o /b/s/w/ir/out/DebugSIMARM_X64/generated_compilations/vm-aot-linux-debug-simarm_x64/tests_standalone_dwarf_stack_trace_invisible_functions_test/out.dill /b/s/w/ir/tests/standalone/dwarf_stack_trace_invisible_functions_test.dart -Dtest_runner.configuration=vm-aot-linux-debug-simarm_x64 --packages=/b/s/w/ir/.dart_tool/package_config.json -Ddart.vm.product=false --sound-null-safety

exit code:
0

--- Command "precompiler" (took 18.000506s):
DART_CONFIGURATION=DebugSIMARM_X64 out/DebugSIMARM_X64/gen_snapshot --snapshot-kind=app-aot-elf --elf=/b/s/w/ir/out/DebugSIMARM_X64/generated_compilations/vm-aot-linux-debug-simarm_x64/tests_standalone_dwarf_stack_trace_invisible_functions_test/out.aotsnapshot --loading-unit-manifest=/b/s/w/ir/out/DebugSIMARM_X64/generated_compilations/vm-aot-linux-debug-simarm_x64/tests_standalone_dwarf_stack_trace_invisible_functions_test/ignored.json --sound-null-safety --dwarf-stack-traces --save-debugging-info=/b/s/w/ir/out/DebugSIMARM_X64/generated_compilations/vm-aot-linux-debug-simarm_x64/tests_standalone_dwarf_stack_trace_invisible_functions_test/dwarf_invisible_functions.so -Dtest_runner.configuration=vm-aot-linux-debug-simarm_x64 --ignore-unrecognized-flags --packages=/b/s/w/ir/.dart_tool/package_config.json /b/s/w/ir/out/DebugSIMARM_X64/generated_compilations/vm-aot-linux-debug-simarm_x64/tests_standalone_dwarf_stack_trace_invisible_functions_test/out.dill

exit code:
0

--- Command "remove_kernel_file" (took 46ms):
DART_CONFIGURATION=DebugSIMARM_X64 rm /b/s/w/ir/out/DebugSIMARM_X64/generated_compilations/vm-aot-linux-debug-simarm_x64/tests_standalone_dwarf_stack_trace_invisible_functions_test/out.dill

exit code:
0

--- Command "vm" (took 08.000494s):
DART_CONFIGURATION=DebugSIMARM_X64 TEST_COMPILATION_DIR=/b/s/w/ir/out/DebugSIMARM_X64/generated_compilations/vm-aot-linux-debug-simarm_x64/tests_standalone_dwarf_stack_trace_invisible_functions_test out/DebugSIMARM/dart_precompiled_runtime --dwarf-stack-traces --save-debugging-info=/b/s/w/ir/out/DebugSIMARM_X64/generated_compilations/vm-aot-linux-debug-simarm_x64/tests_standalone_dwarf_stack_trace_invisible_functions_test/dwarf_invisible_functions.so --sound-null-safety -Dtest_runner.configuration=vm-aot-linux-debug-simarm_x64 --ignore-unrecognized-flags --packages=/b/s/w/ir/.dart_tool/package_config.json /b/s/w/ir/out/DebugSIMARM_X64/generated_compilations/vm-aot-linux-debug-simarm_x64/tests_standalone_dwarf_stack_trace_invisible_functions_test/out.aotsnapshot

exit code:
255

stdout:
Raw stack trace:
*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
pid: 109679, tid: -156763328, name DartWorker
os: linux arch: arm comp: no sim: yes
build_id: '12d2fb45091d6ec13d96a1a8c207942b'
isolate_dso_base: f7931000, vm_dso_base: f7931000
isolate_instructions: f79d8d40, vm_instructions: f79d1000
    #00 abs f7b16f4f virt 001e5f4f _kDartIsolateSnapshotInstructions+0x13e20f
    #01 abs f7b16f1b virt 001e5f1b _kDartIsolateSnapshotInstructions+0x13e1db
    #02 abs f7b16ee3 virt 001e5ee3 _kDartIsolateSnapshotInstructions+0x13e1a3
    #03 abs f7b16eab virt 001e5eab _kDartIsolateSnapshotInstructions+0x13e16b
    #04 abs f7b16fc3 virt 001e5fc3 _kDartIsolateSnapshotInstructions+0x13e283
    #05 abs f7b1715b virt 001e615b _kDartIsolateSnapshotInstructions+0x13e41b
    #06 abs f7b19807 virt 001e8807 _kDartIsolateSnapshotInstructions+0x140ac7
    #07 abs f7a81187 virt 00150187 _kDartIsolateSnapshotInstructions+0xa8447
    #08 abs f7b19b83 virt 001e8b83 _kDartIsolateSnapshotInstructions+0x140e43
    #09 abs f7a809ff virt 0014f9ff _kDartIsolateSnapshotInstructions+0xa7cbf

PCOffsets:
* PCOffset(InstructionsSection.isolate, 0x13e20f, linux, SIMARM)
* PCOffset(InstructionsSection.isolate, 0x13e1db, linux, SIMARM)
* PCOffset(InstructionsSection.isolate, 0x13e1a3, linux, SIMARM)
* PCOffset(InstructionsSection.isolate, 0x13e16b, linux, SIMARM)
* PCOffset(InstructionsSection.isolate, 0x13e283, linux, SIMARM)
* PCOffset(InstructionsSection.isolate, 0x13e41b, linux, SIMARM)
* PCOffset(InstructionsSection.isolate, 0x140ac7, linux, SIMARM)
* PCOffset(InstructionsSection.isolate, 0xa8447, linux, SIMARM)
* PCOffset(InstructionsSection.isolate, 0x140e43, linux, SIMARM)
* PCOffset(InstructionsSection.isolate, 0xa7cbf, linux, SIMARM)

Isolate start offset: 0xabd40
Virtual addresses from PCOffsets:
* 0x1e9f4f
* 0x1e9f1b
* 0x1e9ee3
* 0x1e9eab
* 0x1e9fc3
* 0x1ea15b
* 0x1ec807
* 0x154187
* 0x1ecb83
* 0x1539ff

DSO base address: 0xf7931000
Absolute isolate start address: 0xf79d8d40
Relocated absolute addresses:
* 0x1e5f4f
* 0x1e5f1b
* 0x1e5ee3
* 0x1e5eab
* 0x1e5fc3
* 0x1e615b
* 0x1e8807
* 0x150187
* 0x1e8b83
* 0x14f9ff

Explicit virtual addresses:
* 0x1e5f4f
* 0x1e5f1b
* 0x1e5ee3
* 0x1e5eab
* 0x1e5fc3
* 0x1e615b
* 0x1e8807
* 0x150187
* 0x1e8b83
* 0x14f9ff

stderr:
Unhandled exception:
Expect.deepEquals(expected: <1990479>, actual: <2006863>) fails.
*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
pid: 109679, tid: -137853184, name Dart_Initialize
os: linux arch: arm comp: no sim: yes
build_id: '12d2fb45091d6ec13d96a1a8c207942b'
isolate_dso_base: f7931000, vm_dso_base: f7931000
isolate_instructions: f79d8d40, vm_instructions: f79d1000
    #00 abs f7acbc7b virt 0019ac7b _kDartIsolateSnapshotInstructions+0xf2f3b
    #01 abs f7acc7bb virt 0019b7bb _kDartIsolateSnapshotInstructions+0xf3a7b
    #02 abs f7acc183 virt 0019b183 _kDartIsolateSnapshotInstructions+0xf3443
    #03 abs f7b143b7 virt 001e33b7 _kDartIsolateSnapshotInstructions+0x13b677
<asynchronous suspension>
    #04 abs f7b17137 virt 001e6137 _kDartIsolateSnapshotInstructions+0x13e3f7
<asynchronous suspension>

--- Re-run this test:
python3 tools/test.py -n vm-aot-linux-debug-simarm_x64 standalone/dwarf_stack_trace_invisible_functions_test

cc @alexmarkov this test was already flaking on the debug config and now started consistently failing.

It went from pass to flaky on seemingly unrelated commits last week: https://dart-ci.web.app/#showLatestFailures=false&test=standalone/dwarf_stack_trace_invisible_functions_test&configurations=vm-aot-linux-debug-simarm_x64.

The test passes on all other configs.

dcharkes avatar Nov 13 '23 11:11 dcharkes

Seems to fail in a number of other configurations also flaky (latest result RuntimeError expected Pass)vm-aot-linux-debug-simarm_x64 RuntimeError (expected Pass)vm-aot-linux-release-simarm_x64 RuntimeError (expected Pass)vm-aot-linux-release-x64 RuntimeError (expected Pass)vm-aot-mac-release-arm64 RuntimeError (expected Pass)vm-aot-mac-release-x64 RuntimeError (expected Pass)vm-aot-win-release-arm64 RuntimeError (expected Pass)vm-aot-win-release-x64

a-siva avatar Feb 16 '24 23:02 a-siva

Additional tests failing in configurations vm-aot-win-release-arm64 and vm-aot-win-release-x64

vm/dart/emit_aot_size_info_flag_test vm/dart/gen_snapshot_include_resolved_urls_test

a-siva avatar Feb 17 '24 00:02 a-siva

Flaked again https://ci.chromium.org/ui/p/dart/builders/ci.sandbox/vm-aot-linux-debug-simarm_x64/2152/overview and https://ci.chromium.org/ui/p/dart/builders/ci.sandbox/vm-aot-win-release-x64/2418/overview

aam avatar Feb 23 '24 20:02 aam

These tests are now consistently failing in AOT:

https://dart-current-results.web.app/#/filter=standalone/dwarf_stack_trace_obfuscate_test,standalone/dwarf_stack_trace_invisible_functions_test&showAll

Example log: https://dart-ci.appspot.com/log/any/vm-aot-linux-debug-x64/288/standalone/dwarf_stack_trace_invisible_functions_test

--- Command "vm" (took 470ms):
DART_CONFIGURATION=DebugX64 TEST_COMPILATION_DIR=/b/s/w/ir/out/DebugX64/generated_compilations/vm-aot-linux-debug-x64/tests_standalone_dwarf_stack_trace_invisible_functions_test out/DebugX64/dart_precompiled_runtime --dwarf-stack-traces --save-debugging-info=/b/s/w/ir/out/DebugX64/generated_compilations/vm-aot-linux-debug-x64/tests_standalone_dwarf_stack_trace_invisible_functions_test/dwarf_invisible_functions.so --sound-null-safety -Dtest_runner.configuration=vm-aot-linux-debug-x64 --ignore-unrecognized-flags --packages=/b/s/w/ir/.dart_tool/package_config.json /b/s/w/ir/out/DebugX64/generated_compilations/vm-aot-linux-debug-x64/tests_standalone_dwarf_stack_trace_invisible_functions_test/out.aotsnapshot

exit code:
255

stdout:
Raw stack trace:
*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
pid: 41680, tid: 139815503787776, name DartWorker
os: linux arch: x64 comp: no sim: no
build_id: '50a22d3d09379042ea49e002e75e732ffce177da'
isolate_dso_base: 7f2956500000, vm_dso_base: 7f2956500000
isolate_instructions: 7f29565089c0, vm_instructions: 7f2956501100
    #00 abs 00007f2956611893 _kDartIsolateSnapshotInstructions+0x108ed3
    #01 abs 00007f2956611862 _kDartIsolateSnapshotInstructions+0x108ea2
    #02 abs 00007f295661182e _kDartIsolateSnapshotInstructions+0x108e6e
    #03 abs 00007f29566117fc _kDartIsolateSnapshotInstructions+0x108e3c
    #04 abs 00007f2956611900 _kDartIsolateSnapshotInstructions+0x108f40
    #05 abs 00007f2956611a5a _kDartIsolateSnapshotInstructions+0x10909a
    #06 abs 00007f29566134ea _kDartIsolateSnapshotInstructions+0x10ab2a
    #07 abs 00007f295651e06a _kDartIsolateSnapshotInstructions+0x156aa
    #08 abs 00007f2956613804 _kDartIsolateSnapshotInstructions+0x10ae44
    #09 abs 00007f295651bb38 _kDartIsolateSnapshotInstructions+0x13178

PCOffsets:
* PCOffset(InstructionsSection.isolate, 0x108ed3, linux, X64)
* PCOffset(InstructionsSection.isolate, 0x108ea2, linux, X64)
* PCOffset(InstructionsSection.isolate, 0x108e6e, linux, X64)
* PCOffset(InstructionsSection.isolate, 0x108e3c, linux, X64)
* PCOffset(InstructionsSection.isolate, 0x108f40, linux, X64)
* PCOffset(InstructionsSection.isolate, 0x10909a, linux, X64)
* PCOffset(InstructionsSection.isolate, 0x10ab2a, linux, X64)
* PCOffset(InstructionsSection.isolate, 0x156aa, linux, X64)
* PCOffset(InstructionsSection.isolate, 0x10ae44, linux, X64)
* PCOffset(InstructionsSection.isolate, 0x13178, linux, X64)

Isolate start offset: 0xbb8c0
Virtual addresses from PCOffsets:
* 0x1c4793
* 0x1c4762
* 0x1c472e
* 0x1c46fc
* 0x1c4800
* 0x1c495a
* 0x1c63ea
* 0xd0f6a
* 0x1c6704
* 0xcea38

DSO base address: 0x7f2956500000
Absolute isolate start address: 0x7f29565089c0
Relocated absolute addresses:
* 0x111893
* 0x111862
* 0x11182e
* 0x1117fc
* 0x111900
* 0x111a5a
* 0x1134ea
* 0x1e06a
* 0x113804
* 0x1bb38


Call information for PC addresses:
For PC 0x1c4793:
  Calls corresponding to user or library code:
    bar (file:///b/s/w/ir/tests/standalone/dwarf_stack_trace_invisible_functions_test.dart:24:3)
    foo (file:///b/s/w/ir/tests/standalone/dwarf_stack_trace_invisible_functions_test.dart:30:3)
For PC 0x1c4762:
  Calls corresponding to user or library code:
    bazz (file:///b/s/w/ir/tests/standalone/dwarf_stack_trace_invisible_functions_test.dart:37:7)
For PC 0x1c472e:
  Calls corresponding to user or library code:
    A.add (file:///b/s/w/ir/tests/standalone/dwarf_stack_trace_invisible_functions_test.dart:45:5)
For PC 0x1c46fc:
  Calls corresponding to user or library code:
For PC 0x1c4800:
  Calls corresponding to user or library code:
    main (file:///b/s/w/ir/tests/standalone/dwarf_stack_trace_invisible_functions_test.dart:57:8)
For PC 0x1c495a:
  Calls corresponding to user or library code:
For PC 0x1c63ea:
  Calls corresponding to user or library code:
For PC 0xd0f6a:
  Calls corresponding to user or library code:
    _delayEntrypointInvocation.<anonymous closure> (dart:isolate-patch/isolate_patch.dart:297:19)
For PC 0x1c6704:
  Calls corresponding to user or library code:
For PC 0xcea38:
  Calls corresponding to user or library code:
    _RawReceivePort._handleMessage (dart:isolate-patch/isolate_patch.dart:184:12)

stderr:
Unhandled exception:
Expect.equals(expected: <23>, actual: <24>) fails.
*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
pid: 41680, tid: 139815521831936, name Dart_Initialize
os: linux arch: x64 comp: no sim: no
build_id: '50a22d3d09379042ea49e002e75e732ffce177da'
isolate_dso_base: 7f2956500000, vm_dso_base: 7f2956500000
isolate_instructions: 7f29565089c0, vm_instructions: 7f2956501100
    #00 abs 00007f29565e5d1d _kDartIsolateSnapshotInstructions+0xdd35d
    #01 abs 00007f295660deb5 _kDartIsolateSnapshotInstructions+0x1054f5
    #02 abs 00007f295660f1e4 _kDartIsolateSnapshotInstructions+0x106824
<asynchronous suspension>
    #03 abs 00007f2956611a1f _kDartIsolateSnapshotInstructions+0x10905f
<asynchronous suspension>

--- Re-run this test:
python3 tools/test.py -n vm-aot-linux-debug-x64 standalone/dwarf_stack_trace_invisible_functions_test

And the other test: https://dart-ci.appspot.com/log/any/vm-aot-linux-debug-x64/288/standalone/dwarf_stack_trace_obfuscate_test


--- Command "vm" (took 320ms):
DART_CONFIGURATION=DebugX64 TEST_COMPILATION_DIR=/b/s/w/ir/out/DebugX64/generated_compilations/vm-aot-linux-debug-x64/tests_standalone_dwarf_stack_trace_obfuscate_test out/DebugX64/dart_precompiled_runtime --dwarf-stack-traces --save-debugging-info=/b/s/w/ir/out/DebugX64/generated_compilations/vm-aot-linux-debug-x64/tests_standalone_dwarf_stack_trace_obfuscate_test/dwarf_obfuscate.so --obfuscate --sound-null-safety -Dtest_runner.configuration=vm-aot-linux-debug-x64 --ignore-unrecognized-flags --packages=/b/s/w/ir/.dart_tool/package_config.json /b/s/w/ir/out/DebugX64/generated_compilations/vm-aot-linux-debug-x64/tests_standalone_dwarf_stack_trace_obfuscate_test/out.aotsnapshot

exit code:
255

stdout:
Raw stack trace:
*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
pid: 39494, tid: 140557888255744, name DartWorker
os: linux arch: x64 comp: no sim: no
build_id: '4876e4d4828e78e9574013ca9563c8d1a8c31728'
isolate_dso_base: 7fd62fdce000, vm_dso_base: 7fd62fdce000
isolate_instructions: 7fd62fdd69c0, vm_instructions: 7fd62fdcf100
    #00 abs 00007fd62fedf6c3 _kDartIsolateSnapshotInstructions+0x108d03
    #01 abs 00007fd62fedf56e _kDartIsolateSnapshotInstructions+0x108bae
    #02 abs 00007fd62fedf6da _kDartIsolateSnapshotInstructions+0x108d1a
    #03 abs 00007fd62fee116a _kDartIsolateSnapshotInstructions+0x10a7aa
    #04 abs 00007fd62fdeb1aa _kDartIsolateSnapshotInstructions+0x147ea
    #05 abs 00007fd62fee1484 _kDartIsolateSnapshotInstructions+0x10aac4
    #06 abs 00007fd62fde8c78 _kDartIsolateSnapshotInstructions+0x122b8

PCOffsets:
* PCOffset(InstructionsSection.isolate, 0x108d03, linux, X64)
* PCOffset(InstructionsSection.isolate, 0x108bae, linux, X64)
* PCOffset(InstructionsSection.isolate, 0x108d1a, linux, X64)
* PCOffset(InstructionsSection.isolate, 0x10a7aa, linux, X64)
* PCOffset(InstructionsSection.isolate, 0x147ea, linux, X64)
* PCOffset(InstructionsSection.isolate, 0x10aac4, linux, X64)
* PCOffset(InstructionsSection.isolate, 0x122b8, linux, X64)

Isolate start offset: 0xb38c0
Virtual addresses from PCOffsets:
* 0x1bc5c3
* 0x1bc46e
* 0x1bc5da
* 0x1be06a
* 0xc80aa
* 0x1be384
* 0xc5b78

DSO base address: 0x7fd62fdce000
Absolute isolate start address: 0x7fd62fdd69c0
Relocated absolute addresses:
* 0x1116c3
* 0x11156e
* 0x1116da
* 0x11316a
* 0x1d1aa
* 0x113484
* 0x1ac78


Call information for PC addresses:
For PC 0x1bc5c3:
  Calls corresponding to user or library code:
    bar (file:///b/s/w/ir/tests/standalone/dwarf_stack_trace_obfuscate_test.dart:18:3)
    foo (file:///b/s/w/ir/tests/standalone/dwarf_stack_trace_obfuscate_test.dart:24:3)
For PC 0x1bc46e:
  Calls corresponding to user or library code:
    main (file:///b/s/w/ir/tests/standalone/dwarf_stack_trace_obfuscate_test.dart:30:5)
For PC 0x1bc5da:
  Calls corresponding to user or library code:
For PC 0x1be06a:
  Calls corresponding to user or library code:
For PC 0xc80aa:
  Calls corresponding to user or library code:
    _delayEntrypointInvocation.<anonymous closure> (dart:isolate-patch/isolate_patch.dart:297:19)
For PC 0x1be384:
  Calls corresponding to user or library code:
For PC 0xc5b78:
  Calls corresponding to user or library code:
    _RawReceivePort._handleMessage (dart:isolate-patch/isolate_patch.dart:184:12)

stderr:
Unhandled exception:
Expect.equals(expected: <17>, actual: <18>) fails.
*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
pid: 39494, tid: 140557906058240, name Dart_Initialize
os: linux arch: x64 comp: no sim: no
build_id: '4876e4d4828e78e9574013ca9563c8d1a8c31728'
isolate_dso_base: 7fd62fdce000, vm_dso_base: 7fd62fdce000
isolate_instructions: 7fd62fdd69c0, vm_instructions: 7fd62fdcf100
    #00 abs 00007fd62feb2775 _kDartIsolateSnapshotInstructions+0xdbdb5
    #01 abs 00007fd62fede095 _kDartIsolateSnapshotInstructions+0x1076d5
    #02 abs 00007fd62fedc400 _kDartIsolateSnapshotInstructions+0x105a40
<asynchronous suspension>
    #03 abs 00007fd62fedf68d _kDartIsolateSnapshotInstructions+0x108ccd
<asynchronous suspension>

--- Re-run this test:
python3 tools/test.py -n vm-aot-linux-debug-x64 standalone/dwarf_stack_trace_obfuscate_test

dcharkes avatar Feb 26 '24 11:02 dcharkes

@sstrickl It looks like we have an off-by-one error in the expected line in AOT in both these tests.

dcharkes avatar Feb 26 '24 11:02 dcharkes

Fixed the failures introduced ~2 weeks ago by ca9eb4af0f7 in 12e7895d2e4f.

sstrickl avatar Feb 27 '24 15:02 sstrickl