Adjust TestConcurrentEvents.py test running for Linux.

Related to this bug:
http://llvm.org/bugs/show_bug.cgi?id=16714

On TOT lldb svn r202507, I found several of the tests disabled within
TestConcurrentEvents.py to run fine, and several of them to fail 100%
of the time on my system (25 out of 25 times).

This changes the following tests for Linux:

Enables (these all work consistently):
* test_many_watchpoints_dwarf
* test_signal_watch_break_dwarf (line 250)
* test_signal_watch_break_dwarf (line 260 - same named test?)
* test_crash_with_watchpoint_dwarf
* test_crash_with_watchpoint_breakpoint_signal_dwarf
* test_delayed_crash_with_breakpoint_watchpoint_dwarf

Marks as expected failure (these all fail consistently):
* test_many_watchpoints_dwarf
* test_watch_break_dwarf
* test_delay_watch_break_dwarf
* test_watch_break_dwarf_delay
* test_signal_watch_dwarf
* test_delay_signal_watch_dwarf
* test_signal_delay_watch_dwarf
* test_two_breakpoints_one_watchpoint_dwarf
* test_breakpoints_delayed_breakpoint_one_watchpoint_dwarf
* test_two_watchpoint_threads_dwarf
* test_watchpoint_with_delay_watchpoint_threads_dwarf
* test_two_watchpoints_one_breakpoint_dwarf
* test_two_watchpoints_one_delay_breakpoint_dwarf
* test_watchpoint_delay_watchpoint_one_breakpoint_dwarf
* test_two_watchpoints_one_signal_dwarf
* test_signal_watch_break_dwarf

llvm-svn: 202511
This commit is contained in:
Todd Fiala 2014-02-28 16:50:05 +00:00
parent 11ac853774
commit 9ce4a73c89
1 changed files with 16 additions and 21 deletions

View File

@ -37,8 +37,8 @@ class ConcurrentEventsTestCase(TestBase):
self.buildDwarf(dictionary=self.getBuildFlags()) self.buildDwarf(dictionary=self.getBuildFlags())
self.do_thread_actions(num_breakpoint_threads=100) self.do_thread_actions(num_breakpoint_threads=100)
@skipIfLinux # llvm.org/pr16714 - LLDB sometimes crashes when setting watchpoints in multithreaded programs
@unittest2.skipIf(TestBase.skipLongRunningTest(), "Skip this long running test") @unittest2.skipIf(TestBase.skipLongRunningTest(), "Skip this long running test")
@expectedFailureLinux('llvm.org/pr16714')
@dwarf_test @dwarf_test
def test_many_watchpoints_dwarf(self): def test_many_watchpoints_dwarf(self):
"""Test 100 watchpoints from 100 threads.""" """Test 100 watchpoints from 100 threads."""
@ -87,7 +87,7 @@ class ConcurrentEventsTestCase(TestBase):
# #
@dwarf_test @dwarf_test
@skipIfRemoteDueToDeadlock @skipIfRemoteDueToDeadlock
@skipIfLinux # llvm.org/pr16714 - LLDB sometimes crashes when setting watchpoints in multithreaded programs @expectedFailureLinux('llvm.org/pr16714')
def test_watch_break_dwarf(self): def test_watch_break_dwarf(self):
"""Test watchpoint and a breakpoint in multiple threads.""" """Test watchpoint and a breakpoint in multiple threads."""
self.buildDwarf(dictionary=self.getBuildFlags()) self.buildDwarf(dictionary=self.getBuildFlags())
@ -95,7 +95,7 @@ class ConcurrentEventsTestCase(TestBase):
@dwarf_test @dwarf_test
@skipIfRemoteDueToDeadlock @skipIfRemoteDueToDeadlock
@skipIfLinux # llvm.org/pr16714 - LLDB sometimes crashes when setting watchpoints in multithreaded programs @expectedFailureLinux('llvm.org/pr16714')
def test_delay_watch_break_dwarf(self): def test_delay_watch_break_dwarf(self):
"""Test (1-second delay) watchpoint and a breakpoint in multiple threads.""" """Test (1-second delay) watchpoint and a breakpoint in multiple threads."""
self.buildDwarf(dictionary=self.getBuildFlags()) self.buildDwarf(dictionary=self.getBuildFlags())
@ -103,7 +103,7 @@ class ConcurrentEventsTestCase(TestBase):
@dwarf_test @dwarf_test
@skipIfRemoteDueToDeadlock @skipIfRemoteDueToDeadlock
@skipIfLinux # llvm.org/pr16714 - LLDB sometimes crashes when setting watchpoints in multithreaded programs @expectedFailureLinux('llvm.org/pr16714')
def test_watch_break_dwarf_delay(self): def test_watch_break_dwarf_delay(self):
"""Test watchpoint and a (1 second delay) breakpoint in multiple threads.""" """Test watchpoint and a (1 second delay) breakpoint in multiple threads."""
self.buildDwarf(dictionary=self.getBuildFlags()) self.buildDwarf(dictionary=self.getBuildFlags())
@ -114,7 +114,7 @@ class ConcurrentEventsTestCase(TestBase):
# #
@dwarf_test @dwarf_test
@skipIfRemoteDueToDeadlock @skipIfRemoteDueToDeadlock
@skipIfLinux # llvm.org/pr16714 - LLDB sometimes crashes when setting watchpoints in multithreaded programs @expectedFailureLinux('llvm.org/pr16714')
def test_signal_watch_dwarf(self): def test_signal_watch_dwarf(self):
"""Test a watchpoint and a signal in multiple threads.""" """Test a watchpoint and a signal in multiple threads."""
self.buildDwarf(dictionary=self.getBuildFlags()) self.buildDwarf(dictionary=self.getBuildFlags())
@ -122,7 +122,7 @@ class ConcurrentEventsTestCase(TestBase):
@dwarf_test @dwarf_test
@skipIfRemoteDueToDeadlock @skipIfRemoteDueToDeadlock
@skipIfLinux # llvm.org/pr16714 - LLDB sometimes crashes when setting watchpoints in multithreaded programs @expectedFailureLinux('llvm.org/pr16714')
def test_delay_signal_watch_dwarf(self): def test_delay_signal_watch_dwarf(self):
"""Test a watchpoint and a (1 second delay) signal in multiple threads.""" """Test a watchpoint and a (1 second delay) signal in multiple threads."""
self.buildDwarf(dictionary=self.getBuildFlags()) self.buildDwarf(dictionary=self.getBuildFlags())
@ -130,7 +130,7 @@ class ConcurrentEventsTestCase(TestBase):
@dwarf_test @dwarf_test
@skipIfRemoteDueToDeadlock @skipIfRemoteDueToDeadlock
@skipIfLinux # llvm.org/pr16714 - LLDB sometimes crashes when setting watchpoints in multithreaded programs @expectedFailureLinux('llvm.org/pr16714')
def test_signal_delay_watch_dwarf(self): def test_signal_delay_watch_dwarf(self):
"""Test a (1 second delay) watchpoint and a signal in multiple threads.""" """Test a (1 second delay) watchpoint and a signal in multiple threads."""
self.buildDwarf(dictionary=self.getBuildFlags()) self.buildDwarf(dictionary=self.getBuildFlags())
@ -175,7 +175,7 @@ class ConcurrentEventsTestCase(TestBase):
@dwarf_test @dwarf_test
@skipIfRemoteDueToDeadlock @skipIfRemoteDueToDeadlock
@skipIfLinux # llvm.org/pr16714 - LLDB sometimes crashes when setting watchpoints in multithreaded programs @expectedFailureLinux('llvm.org/pr16714')
def test_two_breakpoints_one_watchpoint_dwarf(self): def test_two_breakpoints_one_watchpoint_dwarf(self):
"""Test two threads that trigger a breakpoint and one watchpoint thread. """ """Test two threads that trigger a breakpoint and one watchpoint thread. """
self.buildDwarf(dictionary=self.getBuildFlags()) self.buildDwarf(dictionary=self.getBuildFlags())
@ -183,7 +183,7 @@ class ConcurrentEventsTestCase(TestBase):
@dwarf_test @dwarf_test
@skipIfRemoteDueToDeadlock @skipIfRemoteDueToDeadlock
@skipIfLinux # llvm.org/pr16714 - LLDB sometimes crashes when setting watchpoints in multithreaded programs @expectedFailureLinux('llvm.org/pr16714')
def test_breakpoints_delayed_breakpoint_one_watchpoint_dwarf(self): def test_breakpoints_delayed_breakpoint_one_watchpoint_dwarf(self):
"""Test a breakpoint, a delayed breakpoint, and one watchpoint thread. """ """Test a breakpoint, a delayed breakpoint, and one watchpoint thread. """
self.buildDwarf(dictionary=self.getBuildFlags()) self.buildDwarf(dictionary=self.getBuildFlags())
@ -196,7 +196,7 @@ class ConcurrentEventsTestCase(TestBase):
# #
@dwarf_test @dwarf_test
@skipIfRemoteDueToDeadlock @skipIfRemoteDueToDeadlock
@skipIfLinux # llvm.org/pr16714 - LLDB sometimes crashes when setting watchpoints in multithreaded programs @expectedFailureLinux('llvm.org/pr16714')
def test_two_watchpoint_threads_dwarf(self): def test_two_watchpoint_threads_dwarf(self):
"""Test two threads that trigger a watchpoint. """ """Test two threads that trigger a watchpoint. """
self.buildDwarf(dictionary=self.getBuildFlags()) self.buildDwarf(dictionary=self.getBuildFlags())
@ -204,7 +204,7 @@ class ConcurrentEventsTestCase(TestBase):
@dwarf_test @dwarf_test
@skipIfRemoteDueToDeadlock @skipIfRemoteDueToDeadlock
@skipIfLinux # llvm.org/pr16714 - LLDB sometimes crashes when setting watchpoints in multithreaded programs @expectedFailureLinux('llvm.org/pr16714')
def test_watchpoint_with_delay_waychpoint_threads_dwarf(self): def test_watchpoint_with_delay_waychpoint_threads_dwarf(self):
"""Test two threads that trigger a watchpoint where one thread has a 1 second delay. """ """Test two threads that trigger a watchpoint where one thread has a 1 second delay. """
self.buildDwarf(dictionary=self.getBuildFlags()) self.buildDwarf(dictionary=self.getBuildFlags())
@ -213,7 +213,7 @@ class ConcurrentEventsTestCase(TestBase):
@dwarf_test @dwarf_test
@skipIfRemoteDueToDeadlock @skipIfRemoteDueToDeadlock
@skipIfLinux # llvm.org/pr16714 - LLDB sometimes crashes when setting watchpoints in multithreaded programs @expectedFailureLinux('llvm.org/pr16714')
def test_two_watchpoints_one_breakpoint_dwarf(self): def test_two_watchpoints_one_breakpoint_dwarf(self):
"""Test two threads that trigger a watchpoint and one breakpoint thread. """ """Test two threads that trigger a watchpoint and one breakpoint thread. """
self.buildDwarf(dictionary=self.getBuildFlags()) self.buildDwarf(dictionary=self.getBuildFlags())
@ -221,7 +221,7 @@ class ConcurrentEventsTestCase(TestBase):
@dwarf_test @dwarf_test
@skipIfRemoteDueToDeadlock @skipIfRemoteDueToDeadlock
@skipIfLinux # llvm.org/pr16714 - LLDB sometimes crashes when setting watchpoints in multithreaded programs @expectedFailureLinux('llvm.org/pr16714')
def test_two_watchpoints_one_delay_breakpoint_dwarf(self): def test_two_watchpoints_one_delay_breakpoint_dwarf(self):
"""Test two threads that trigger a watchpoint and one (1 second delay) breakpoint thread. """ """Test two threads that trigger a watchpoint and one (1 second delay) breakpoint thread. """
self.buildDwarf(dictionary=self.getBuildFlags()) self.buildDwarf(dictionary=self.getBuildFlags())
@ -229,7 +229,7 @@ class ConcurrentEventsTestCase(TestBase):
@dwarf_test @dwarf_test
@skipIfRemoteDueToDeadlock @skipIfRemoteDueToDeadlock
@skipIfLinux # llvm.org/pr16714 - LLDB sometimes crashes when setting watchpoints in multithreaded programs @expectedFailureLinux('llvm.org/pr16714')
def test_watchpoint_delay_watchpoint_one_breakpoint_dwarf(self): def test_watchpoint_delay_watchpoint_one_breakpoint_dwarf(self):
"""Test two threads that trigger a watchpoint (one with a 1 second delay) and one breakpoint thread. """ """Test two threads that trigger a watchpoint (one with a 1 second delay) and one breakpoint thread. """
self.buildDwarf(dictionary=self.getBuildFlags()) self.buildDwarf(dictionary=self.getBuildFlags())
@ -239,7 +239,7 @@ class ConcurrentEventsTestCase(TestBase):
@dwarf_test @dwarf_test
@skipIfRemoteDueToDeadlock @skipIfRemoteDueToDeadlock
@skipIfLinux # llvm.org/pr16714 - LLDB sometimes crashes when setting watchpoints in multithreaded programs @expectedFailureLinux('llvm.org/pr16714')
def test_two_watchpoints_one_signal_dwarf(self): def test_two_watchpoints_one_signal_dwarf(self):
"""Test two threads that trigger a watchpoint and one signal thread. """ """Test two threads that trigger a watchpoint and one signal thread. """
self.buildDwarf(dictionary=self.getBuildFlags()) self.buildDwarf(dictionary=self.getBuildFlags())
@ -250,7 +250,6 @@ class ConcurrentEventsTestCase(TestBase):
# #
@dwarf_test @dwarf_test
@skipIfRemoteDueToDeadlock @skipIfRemoteDueToDeadlock
@skipIfLinux # llvm.org/pr16714 - LLDB sometimes crashes when setting watchpoints in multithreaded programs
def test_signal_watch_break_dwarf(self): def test_signal_watch_break_dwarf(self):
"""Test a signal/watchpoint/breakpoint in multiple threads.""" """Test a signal/watchpoint/breakpoint in multiple threads."""
self.buildDwarf(dictionary=self.getBuildFlags()) self.buildDwarf(dictionary=self.getBuildFlags())
@ -260,7 +259,6 @@ class ConcurrentEventsTestCase(TestBase):
@dwarf_test @dwarf_test
@skipIfRemoteDueToDeadlock @skipIfRemoteDueToDeadlock
@skipIfLinux # llvm.org/pr16714 - LLDB sometimes crashes when setting watchpoints in multithreaded programs
def test_signal_watch_break_dwarf(self): def test_signal_watch_break_dwarf(self):
"""Test one signal thread with 5 watchpoint and breakpoint threads.""" """Test one signal thread with 5 watchpoint and breakpoint threads."""
self.buildDwarf(dictionary=self.getBuildFlags()) self.buildDwarf(dictionary=self.getBuildFlags())
@ -270,7 +268,7 @@ class ConcurrentEventsTestCase(TestBase):
@dwarf_test @dwarf_test
@skipIfRemoteDueToDeadlock @skipIfRemoteDueToDeadlock
@skipIfLinux # llvm.org/pr16714 - LLDB sometimes crashes when setting watchpoints in multithreaded programs @expectedFailureLinux('llvm.org/pr16714')
def test_signal_watch_break_dwarf(self): def test_signal_watch_break_dwarf(self):
"""Test with 5 watchpoint and breakpoint threads.""" """Test with 5 watchpoint and breakpoint threads."""
self.buildDwarf(dictionary=self.getBuildFlags()) self.buildDwarf(dictionary=self.getBuildFlags())
@ -289,7 +287,6 @@ class ConcurrentEventsTestCase(TestBase):
@dwarf_test @dwarf_test
@skipIfRemoteDueToDeadlock @skipIfRemoteDueToDeadlock
@skipIfLinux # llvm.org/pr16714 - LLDB sometimes crashes when setting watchpoints in multithreaded programs
def test_crash_with_watchpoint_dwarf(self): def test_crash_with_watchpoint_dwarf(self):
""" Test a thread that crashes while another thread hits a watchpoint.""" """ Test a thread that crashes while another thread hits a watchpoint."""
self.buildDwarf(dictionary=self.getBuildFlags()) self.buildDwarf(dictionary=self.getBuildFlags())
@ -303,7 +300,6 @@ class ConcurrentEventsTestCase(TestBase):
@dwarf_test @dwarf_test
@skipIfRemoteDueToDeadlock @skipIfRemoteDueToDeadlock
@skipIfLinux # llvm.org/pr16714 - LLDB sometimes crashes when setting watchpoints in multithreaded programs
def test_crash_with_watchpoint_breakpoint_signal_dwarf(self): def test_crash_with_watchpoint_breakpoint_signal_dwarf(self):
""" Test a thread that crashes while other threads generate a signal and hit a watchpoint and breakpoint. """ """ Test a thread that crashes while other threads generate a signal and hit a watchpoint and breakpoint. """
self.buildDwarf(dictionary=self.getBuildFlags()) self.buildDwarf(dictionary=self.getBuildFlags())
@ -314,7 +310,6 @@ class ConcurrentEventsTestCase(TestBase):
@dwarf_test @dwarf_test
@skipIfRemoteDueToDeadlock @skipIfRemoteDueToDeadlock
@skipIfLinux # llvm.org/pr16714 - LLDB sometimes crashes when setting watchpoints in multithreaded programs
def test_delayed_crash_with_breakpoint_watchpoint_dwarf(self): def test_delayed_crash_with_breakpoint_watchpoint_dwarf(self):
""" Test a thread with a delayed crash while other threads hit a watchpoint and a breakpoint. """ """ Test a thread with a delayed crash while other threads hit a watchpoint and a breakpoint. """
self.buildDwarf(dictionary=self.getBuildFlags()) self.buildDwarf(dictionary=self.getBuildFlags())