Mir

Merge lp:~albaguirre/mir/yet-more-tsan-ci-tweaks into lp:mir

Proposed by Alberto Aguirre
Status: Merged
Approved by: Alberto Aguirre
Approved revision: no longer in the source branch.
Merged at revision: 2753
Proposed branch: lp:~albaguirre/mir/yet-more-tsan-ci-tweaks
Merge into: lp:mir
Diff against target: 64 lines (+9/-9)
3 files modified
src/include/server/mir/display_server.h (+1/-1)
tests/unit-tests/graphics/mesa/kms/test_display.cpp (+6/-8)
tools/tsan-suppressions (+2/-0)
To merge this branch: bzr merge lp:~albaguirre/mir/yet-more-tsan-ci-tweaks
Reviewer Review Type Date Requested Status
Daniel van Vugt Approve
Cemil Azizoglu (community) Approve
PS Jenkins bot (community) continuous-integration Approve
Review via email: mp+265012@code.launchpad.net

Commit message

More tweaks to fix intermittent test failures in the TSan CI build job

Description of the change

More test tweaks to fix intermittent test failures in the TSan CI build job

To post a comment you must log in.
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Approve (continuous-integration)
Revision history for this message
Cemil Azizoglu (cemil-azizoglu) wrote :

41 - ASSERT_TRUE(mainloop_started->wait_for(std::chrono::milliseconds{100}));
42 + ASSERT_TRUE(mainloop_started.wait_for(10s));

Quite an increase.

review: Approve
Revision history for this message
Daniel van Vugt (vanvugt) :
review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'src/include/server/mir/display_server.h'
2--- src/include/server/mir/display_server.h 2015-02-22 07:46:25 +0000
3+++ src/include/server/mir/display_server.h 2015-07-16 15:40:26 +0000
4@@ -40,7 +40,7 @@
5
6 private:
7 struct Private;
8- std::unique_ptr<Private> p;
9+ std::unique_ptr<Private> const p;
10
11 DisplayServer() = delete;
12 DisplayServer(const DisplayServer&) = delete;
13
14=== modified file 'tests/unit-tests/graphics/mesa/kms/test_display.cpp'
15--- tests/unit-tests/graphics/mesa/kms/test_display.cpp 2015-07-10 22:38:49 +0000
16+++ tests/unit-tests/graphics/mesa/kms/test_display.cpp 2015-07-16 15:40:26 +0000
17@@ -726,6 +726,7 @@
18 TEST_F(MesaDisplayTest, drm_device_change_event_triggers_handler)
19 {
20 using namespace testing;
21+ using namespace std::chrono_literals;
22
23 auto display = create_display(create_platform());
24
25@@ -747,16 +748,13 @@
26 }
27 });
28
29- auto mainloop_started = std::make_shared<mt::Signal>();
30
31- auto fire_on_mainloop_start = ml.create_alarm([mainloop_started]()
32- {
33- mainloop_started->raise();
34- });
35- fire_on_mainloop_start->reschedule_in(std::chrono::milliseconds{0});
36+ int const owner{0};
37+ mt::Signal mainloop_started;
38+ ml.enqueue(&owner, [&] { mainloop_started.raise(); });
39
40 mt::AutoUnblockThread mainLoopThread([&ml]{ml.stop();}, [&ml]{ml.run();});
41- ASSERT_TRUE(mainloop_started->wait_for(std::chrono::milliseconds{100}));
42+ ASSERT_TRUE(mainloop_started.wait_for(10s));
43
44 auto const syspath = fake_devices.add_device("drm", "card2", NULL, {}, {"DEVTYPE", "drm_minor"});
45
46@@ -767,7 +765,7 @@
47 fake_devices.emit_device_changed(syspath);
48 }
49
50- done.wait_for(std::chrono::seconds{10});
51+ done.wait_for(20s);
52 EXPECT_EQ(expected_call_count, call_count);
53 }
54
55
56=== modified file 'tools/tsan-suppressions'
57--- tools/tsan-suppressions 2015-03-31 02:35:42 +0000
58+++ tools/tsan-suppressions 2015-07-16 15:40:26 +0000
59@@ -3,3 +3,5 @@
60 race:testing::internal::FunctionMockerBase
61 race:~posix_event
62 race:boost::asio::detail::posix_event::signal_and_unlock
63+#Suppress false positive when deleting main loop shared_ptr
64+race:std::__shared_ptr<mir::MainLoop, (__gnu_cxx::_Lock_policy)2>::operator->()

Subscribers

People subscribed via source and target branches