Mir

memory leaks in unit tests on android

Bug #1253486 reported by Chris Gagnon
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Mir
Fix Released
Medium
Alexandros Frantzis
mir (Ubuntu)
Fix Released
Undecided
Unassigned

Bug Description

description:
memory leaks in unit tests on android

steps:
run unit tests with valgrind on armhf

expected results:
no leaks

actual results:
memory leaks

full logs at:
https://jenkins.qa.ubuntu.com/job/mir-team-mir-development-branch-trusty-armhf-ci/139/console

==23292== HEAP SUMMARY:
==23292== in use at exit: 2,393 bytes in 31 blocks
==23292== total heap usage: 1,022,708 allocs, 1,022,677 frees, 52,791,074 bytes allocated
==23292==
==23292== LEAK SUMMARY:
==23292== definitely lost: 160 bytes in 2 blocks
==23292== indirectly lost: 0 bytes in 0 blocks
==23292== possibly lost: 22 bytes in 1 blocks
==23292== still reachable: 2,211 bytes in 28 blocks
==23292== suppressed: 0 bytes in 0 blocks
==23292== Rerun with --leak-check=full to see details of leaked memory
==23292==
==23292== For counts of detected and suppressed errors, rerun with: -v
==23292== Use --track-origins=yes to see where uninitialised values come from
==23292== ERROR SUMMARY: 664 errors from 10 contexts (suppressed: 5 from 3)

Related branches

tags: added: testsfail
Changed in mir:
importance: Undecided → Medium
tags: added: qa-touch
Kevin DuBois (kdub)
Changed in mir:
status: New → In Progress
assignee: nobody → Kevin DuBois (kdub)
Revision history for this message
Kevin DuBois (kdub) wrote :

I see 712 bytes lost when running on nexus4, hmm.

anyways, cleanup up the output and a few valgrind complaints in lp:~kdub/mir/unit-test-cleanup.

Still have to hunt down the leaks... i see some leaks in OffscreenDisplayTest, but they do not account for all the leaks

Changed in mir:
milestone: none → 0.1.2
Changed in mir:
milestone: 0.1.2 → 0.1.3
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :

Fix committed into lp:~mir-team/mir/development-branch at revision None, scheduled for release in mir, milestone Unknown

Changed in mir:
status: In Progress → Fix Committed
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

The branch that landed was not a full fix for this bug.

Changed in mir:
status: Fix Committed → In Progress
Changed in mir:
milestone: 0.1.3 → 0.1.4
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Really in progress?

Changed in mir:
status: In Progress → Triaged
milestone: 0.1.4 → none
Revision history for this message
Alexandros Frantzis (afrantzis) wrote :

We still have some leaks when running the android unit tests on krillin:

==23491== HEAP SUMMARY:
==23491== in use at exit: 84,546 bytes in 926 blocks
==23491== total heap usage: 1,167,467 allocs, 1,166,541 frees, 209,004,700 bytes allocated
==23491==
==23491== LEAK SUMMARY:
==23491== definitely lost: 72 bytes in 3 blocks
==23491== indirectly lost: 61 bytes in 1 blocks
==23491== possibly lost: 3,792 bytes in 124 blocks
==23491== still reachable: 80,209 bytes in 793 blocks
==23491== suppressed: 0 bytes in 0 blocks

Note that running the android unit tests on the desktop doesn't produce any leaks.

Changed in mir:
assignee: Kevin DuBois (kdub) → Alexandros Frantzis (afrantzis)
Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

Fix committed into lp:mir at revision None, scheduled for release in mir, milestone 0.24.0

Changed in mir:
status: Triaged → Fix Committed
Changed in mir:
milestone: none → 0.24.0
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (5.7 KiB)

This bug was fixed in the package mir - 0.24.0+16.10.20160815.3-0ubuntu1

---------------
mir (0.24.0+16.10.20160815.3-0ubuntu1) yakkety; urgency=medium

  * New upstream release 0.24.0 (https://launchpad.net/mir/+milestone/0.24.0)
    - ABI summary:
      . mirclient ABI unchanged at 9
      . mirserver ABI bumped to 41
      . mircommon ABI unchanged at 6
      . mirplatform ABI bumped to 12
      . mirprotobuf ABI unchanged at 3
      . mirplatformgraphics ABI bumped to 10
      . mirclientplatform ABI unchanged at 5
      . mirinputplatform ABI unchanged at 5
    - Enhancements:
      . Added a new tool 'mirvanity' which can use a high speed video camera
        to measure client-to-screen latency.
      . Added (build-time) support for desktop full OpenGL servers (disabled
        by default in favor of GLESv2).
      . Introduced new buffer semantics (NBS) and enabled it by default.
      . Avoided using libmirserver in mir_demo_standalone_render_overlays,
        making bringup traces less cluttered.
      . Removed TilingWindowManager from example servers.
      . Added two new mir_*_performance_test tools that are run as part of
        'mir_performance_tests'.
      . Added pointer confinement to the client API.
      . Added new platform supporting software EGLStreams.
      . Added an input platform that the nested server can use.
      . Allow configuration of the application_not_responding_detector
      . Handle server-side keymapping using XKBMapper.
      . Remove the offscreen display.
      . Add callback option to notify shells that the server is about to stop.
      . Add logging for ANativeWindow events on Android.
    - Bugs fixed:
      . usage of std:call_once in mirclient causes TLS collisions with some
        android devices (LP: #1599867)
      . AltGr not working on external keyboards (LP: #1565236)
      . [regression] unity8 fails to start when built with 0.24 series (lp:mir)
        (LP: #1597717)
      . CI failure in MirSurfaceVisibilityEvent.exposed_received_when_surface_
        raised_over_occluding_surface [called twice - over-saturated and active]
        (LP: #1556045)
      . package-built mir_demo_server does not start on device (LP: #1577357)
      . During surface creation, first stream in spec becomes default stream.
        (LP: #1577967)
      . mouse is getting stuck on a phantom edge (LP: #1580774)
      . [testsfail] in MirSurfaceVisibilityEvent.exposed_received_when_surface_
        raised_over_occluding_surface [never called] (LP: #1581385)
      . [enhancement] Add support for full OpenGL compositing (LP: #1420581)
      . [testsfail] ServerSignal.terminate_handler_is_called_for_SIGINT|SIGTERM
        (LP: #1570353)
      . [testsfail] ClientLatency.triple_buffered_client_has_less_than_two_
        frames_latency (LP: #1576690)
      . [testsfail] NestedServer.when_monitor_plugged_in_client_is_notified_of_
        new_display_configuration (LP: #1576760)
      . mir server crashed in what(): drmModeMoveCursor failed (returned -13)
        (LP: #1579630)
      . mirtest-dev is hard to use as the objects used are compiled with LTO
        (LP: #1583536)
      . [testsfail] ClientLogging.repo...

Read more...

Changed in mir (Ubuntu):
status: New → Fix Released
Changed in mir:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.