[testsfail] Process.* (memory leak in libhybris generated when probing android platforms)
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
| Mir |
Fix Released
|
High
|
Kevin DuBois | |
| 0.23 |
Fix Released
|
High
|
Kevin Dubois | |
| mir (Ubuntu) |
Undecided
|
Unassigned |
Bug Description
09:10:14 15: [ FAILED ] Process.
09:10:14 15: [ FAILED ] Process.
09:06:54 17: [ FAILED ] Process.
09:06:54 17: [ FAILED ] Process.
I can only imagine the build agent got no CPU for so long that wait_for_
Related branches
- Alan Griffiths: Disapprove on 2016-07-14
- Mir CI Bot: Needs Fixing (continuous-integration) on 2016-07-14
- Daniel van Vugt: Needs Information on 2016-07-13
-
Diff: 25 lines (+4/-2)1 file modifiedtests/integration-tests/process/test_process.cpp (+4/-2)
- Daniel van Vugt: Approve on 2016-07-15
- Mir CI Bot: Needs Fixing (continuous-integration) on 2016-07-14
- Cemil Azizoglu (community): Approve on 2016-07-14
- Brandon Schaefer (community): Approve on 2016-07-14
-
Diff: 39 lines (+12/-1)3 files modifiedcmake/MirCommon.cmake (+1/-0)
tests/privileged-tests/test_input_events.cpp (+1/-1)
tools/valgrind_suppressions_libhybris (+10/-0)
Alan Griffiths (alan-griffiths) wrote : | #1 |
Alan Griffiths (alan-griffiths) wrote : | #2 |
Alan Griffiths (alan-griffiths) wrote : | #3 |
Alan Griffiths (alan-griffiths) wrote : | #4 |
tags: | added: testsfail |
Kevin DuBois (kdub) wrote : | #5 |
iirc, Process* depends on the success of previous forks() (a bug in and of itself), but is not the root cause.
The cause seems to be a new libhybris release, which introduced a leak in the hw_get_module function. This function is used in platform probing, so it generates an error in valgrind.
unfortunately, valgrind seems to get confused about where this leak happens:
==8558==
==8558== 192 bytes in 1 blocks are definitely lost in loss record 246 of 271
==8558== at 0x4C2DB8F: malloc (in /usr/lib/
==8558== by 0xB56CE27: doc src
==8558== by 0xB56CFFB: doc src
==8558== by 0xB56C677: doc src
==8558== by 0xB77F59A: doc src
==8558== by 0xB77F97C: doc src
==8558== by 0xB77FC5E: doc src
==8558== by 0xB3697A8: doc src
==8558== by 0xAEB9030: std::_Tuple_
==8558== by 0x70469F: mir::graphics:
so I havent been able to come up with a suppression about it yet (which is the real fix)
Kevin DuBois (kdub) wrote : | #6 |
oh, also, I suspect the reason that this was not reproducible was that only X+O systems would have the new libhybris, and would be the only ones with the leak.
Changed in mir: | |
importance: | Undecided → High |
assignee: | nobody → Kevin DuBois (kdub) |
milestone: | none → 0.24.0 |
status: | New → In Progress |
Changed in mir: | |
status: | In Progress → Fix Committed |
milestone: | 0.24.0 → 0.25.0 |
summary: |
- [testsfail] Process.* + [testsfail] Process.* (memory leak in libhybris generated when probing + android platforms) |
Changed in mir: | |
milestone: | 0.25.0 → 0.24.0 |
no longer affects: | mir/0.24 |
Daniel van Vugt (vanvugt) wrote : | #7 |
Fix committed to lp:mir/0.23 at revision 3530, scheduled for release in Mir 0.23.5
Daniel van Vugt (vanvugt) wrote : | #8 |
This bug was fixed in the package mir - 0.23.5+
Changed in mir (Ubuntu): | |
status: | New → Fix Released |
Changed in mir: | |
status: | Fix Committed → Fix Released |
Here too: https:/ /mir-jenkins. ubuntu. com/job/ build-2- binpkg- mir/arch= amd64,compiler= clang,platform= mesa,release= vivid+overlay/ 1488/consoleFul l