llvm / llvm-project

The LLVM Project is a collection of modular and reusable compiler and toolchain technologies.
http://llvm.org
Other
29.15k stars 12.03k forks source link

TestLldbGdbServer test_Hc_then_Csignal_signals_correct_thread_launch_llgs_dwarf fails occasionally #23302

Open llvmbot opened 9 years ago

llvmbot commented 9 years ago
Bugzilla Link 22928
Version unspecified
OS Linux
Reporter LLVM Bugzilla Contributor
CC @labath

Extended Description

Callstack attached

FAIL: test_Hc_then_Csignal_signals_correct_thread_launch_llgs_dwarf (TestLldbGdbServer.LldbGdbServerTestCase)

Traceback (most recent call last): File "/lldb-buildbot/lldbSlave/buildWorkingDir/llvm/tools/lldb/test/lldbtest.py", line 513, in wrapper return func(self, *args, *kwargs) File "/lldb-buildbot/lldbSlave/buildWorkingDir/llvm/tools/lldb/test/lldbtest.py", line 479, in wrapper return func(self, args, **kwargs) File "/lldb-buildbot/lldbSlave/buildWorkingDir/llvm/tools/lldb/test/tools/lldb-server/TestLldbGdbServer.py", line 885, in test_Hc_then_Csignal_signals_correct_thread_launch_llgs_dwarf self.Hc_then_Csignal_signals_correct_thread(signal.SIGSEGV) File "/lldb-buildbot/lldbSlave/buildWorkingDir/llvm/tools/lldb/test/tools/lldb-server/TestLldbGdbServer.py", line 786, in Hc_then_Csignal_signals_correct_thread context = self.expect_gdbremote_sequence() File "/lldb-buildbot/lldbSlave/buildWorkingDir/llvm/tools/lldb/test/tools/lldb-server/gdbremote_testcase.py", line 504, in expect_gdbremote_sequence return expect_lldb_gdbserver_replay(self, self.sock, self.test_sequence, timeout_seconds, self.logger) File "/lldb-buildbot/lldbSlave/buildWorkingDir/llvm/tools/lldb/test/tools/lldb-server/lldbgdbserverutils.py", line 240, in expect_lldb_gdbserver_replay context = sequence_entry.assert_match(asserter, content, context=context) File "/lldb-buildbot/lldbSlave/buildWorkingDir/llvm/tools/lldb/test/tools/lldb-server/lldbgdbserverutils.py", line 515, in assert_match self._assert_exact_payload_match(asserter, actual_packet) File "/lldb-buildbot/lldbSlave/buildWorkingDir/llvm/tools/lldb/test/tools/lldb-server/lldbgdbserverutils.py", line 474, in _assert_exact_payload_match assert_packets_equal(asserter, actual_packet, self.exact_payload) File "/lldb-buildbot/lldbSlave/buildWorkingDir/llvm/tools/lldb/test/tools/lldb-server/lldbgdbserverutils.py", line 151, in assert_packets_equal asserter.assertEqual(actual_stripped, expected_stripped) AssertionError: '$E08' != '$OK' Config=x86_64-clang

labath commented 9 years ago

I can't be 100% sure (I'd need to see the packet log, do you have the corresponding packets-*.log file?), but I've been seeing this error in another test case: TestGdbRemote_vCont.test_single_step_only_steps_one_instruction_with_Hc_vCont_s_llgs_dwarf.

There the problem seems to be that the target file gets deleted before llgs gets a chance to start it. It feels like a race in the test suite, but I haven't been able to get to the bottom of it.

llvmbot commented 9 years ago

This is very rare, less than 1/100 runs.