Merge lp:~albaguirre/mir/more-tsan-happiness into lp:mir
Proposed by
Alberto Aguirre
Status: | Merged |
---|---|
Approved by: | Alberto Aguirre |
Approved revision: | no longer in the source branch. |
Merged at revision: | 2690 |
Proposed branch: | lp:~albaguirre/mir/more-tsan-happiness |
Merge into: | lp:mir |
Diff against target: |
150 lines (+33/-14) 4 files modified
include/test/mir_test_framework/server_runner.h (+2/-1) src/client/surface_map.cpp (+25/-9) tests/mir_test_framework/async_server_runner.cpp (+1/-1) tests/mir_test_framework/server_runner.cpp (+5/-3) |
To merge this branch: | bzr merge lp:~albaguirre/mir/more-tsan-happiness |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
PS Jenkins bot (community) | continuous-integration | Approve | |
Alan Griffiths | Approve | ||
Review via email: mp+262456@code.launchpad.net |
Commit message
Fix potential data races and mutex locking order issues.
Avoid FD data race in AsyncServerRunner
Avoid data race on display_server pointer in ServerRunner
Avoid potential lock ordering issues in mir::client:
Description of the change
Fix potential data races and mutex locking order issues.
Avoid FD data race in AsyncServerRunner
Avoid data race on display_server pointer in ServerRunner
Avoid potential lock ordering issues in mir::client:
To post a comment you must log in.
29 + for (auto const& surface : surfaces) to_release. push_back( surface. second) ; to_release. push_back( info.second. stream) ;
30 + {
31 + surfaces_
32 + }
33 +
34 + for (auto const& info : streams)
35 + {
36 + if (info.second.owned)
37 + streams_
38 + }
39 + }
It might be slightly more efficient to std::move() the map than create a vector. But OK