Merge lp://qastaging/~afrantzis/mir/valgrind-suppressions-armhf into lp://qastaging/mir
Status: | Merged |
---|---|
Approved by: | Alexandros Frantzis |
Approved revision: | no longer in the source branch. |
Merged at revision: | 1419 |
Proposed branch: | lp://qastaging/~afrantzis/mir/valgrind-suppressions-armhf |
Merge into: | lp://qastaging/mir |
Diff against target: |
371 lines (+166/-19) 6 files modified
CMakeLists.txt (+5/-1) cmake/MirCommon.cmake (+8/-4) cmake/src/mir/mir_discover_gtest_tests.cpp (+24/-10) include/test/mir_test_doubles/mock_hwc_composer_device_1.h (+2/-0) tests/unit-tests/test_udev_wrapper.cpp (+16/-4) tools/valgrind_suppressions_armhf (+111/-0) |
To merge this branch: | bzr merge lp://qastaging/~afrantzis/mir/valgrind-suppressions-armhf |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Alexandros Frantzis (community) | Abstain | ||
PS Jenkins bot (community) | continuous-integration | Approve | |
Daniel van Vugt | Approve | ||
Kevin DuBois (community) | Abstain | ||
Alan Griffiths | Approve | ||
Review via email: mp+207188@code.qastaging.launchpad.net |
Commit message
tests: Suppress spurious memory errors occuring when running the unit tests on armhf with valgrind
Description of the change
tests: Suppress spurious memory errors occuring when running the unit tests on armhf with valgrind
This MP adds and enables use of a valgrind suppression file for the mir_unit_tests on armhf. This should allow us to renable valgrind in CI armhf jobs (https:/
This MP also fixes a real memory error found in mir_unit_tests.
A concern I have with the suppression file is that it may be too fragile, i.e., we may need to amend it often as the stack changes. If it turns out that the cost of maintance is not acceptable, an alternative would be to enable an x86 Android build + valgrind unit tests, so at least we can continue to cover the Android build.
An exercise for later would be to investigate the errors we get on armhf/android when running the integration and acceptance tests, to enable running them under valgrind, too.
I too have concerns, but there's currently too much "noise" to detect "signal". This offers a way forward.
181 external_set = false; API_VERSION_ 1_1;
182 virtual_prepare = false;
183 virtual_set = false;
184 + fb_fence = -1;
185 + retire_fence = -1;
186
187 common.version = HWC_DEVICE_
This whole block of code uses assignment where initializer lists or in-class initializers would be better.