unity8 leaking memory on idle phone
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
QtMir |
Triaged
|
Critical
|
Gerry Boland | ||
qtmir (Ubuntu) |
Triaged
|
Critical
|
Gerry Boland | ||
unity8 (Ubuntu) |
Confirmed
|
Critical
|
Gerry Boland |
Bug Description
I've found that on an idle phone, unity8 is very slowly consuming more heap at around 1K every 15-20 minutes. I ran my analysis over 12 hours and found that there are brk()s occurring roughly every 10 minutes and the heap is just increasing in size and never shrinking, indicating a small memory leak.
gdb shows:
(gdb) where
#0 __brk (addr=0x31fa000) at ../ports/
#1 0xb6298826 in __GI___sbrk (increment=135168) at sbrk.c:53
#2 0xb626209a in __GI___
at morecore.c:47
#3 0xb625f1e2 in sysmalloc (av=0xb62f54e8 <main_arena>, nb=72)
at malloc.c:2462
#4 _int_malloc (av=av@
at malloc.c:3800
#5 0xb6260576 in __GI___libc_malloc (bytes=64) at malloc.c:2891
#6 0xb636d0f4 in operator new(unsigned int) ()
from /usr/lib/
#7 0xa92c2b42 in core::dbus:
#8 0xa92c2cc0 in core::dbus:
from /usr/lib/
#9 0xa9356a98 in core::dbus:
from /usr/lib/
#10 0xa9374608 in core::dbus:
from /usr/lib/
#11 0xa937484c in core::dbus:
s::Properties::Get, core::dbus:
from /usr/lib/
#12 0xa9374a98 in core::dbus:
#13 0xa93c6f66 in AalMediaPlayerS
from /usr/lib/
#14 0xaaae6332 in QMediaPlayer:
from /usr/lib/
#15 0xb65ac518 in QMetaProperty:
from /usr/lib/
#16 0xaaaba3e2 in ?? () from /usr/lib/
Backtrace stopped: previous frame identical to this frame (corrupt stack?)
and also:
(gdb) where
#0 __brk (addr=0x31d9000) at ../ports/
#1 0xb6298826 in __GI___sbrk (increment=135168) at sbrk.c:53
#2 0xb626209a in __GI___
at morecore.c:47
#3 0xb625f1e2 in sysmalloc (av=0xb62f54e8 <main_arena>, nb=128)
at malloc.c:2462
#4 _int_malloc (av=av@
at malloc.c:3800
#5 0xb6260576 in __GI___libc_malloc (bytes=120) at malloc.c:2891
#6 0xb636d0f4 in operator new(unsigned int) ()
from /usr/lib/
#7 0xb3f13224 in mir::scene:
#8 0xad14caba in qtmir::
from /usr/lib/
#9 0xb65c4274 in QMetaObject:
from /usr/lib/
#10 0xb65cca36 in QTimer:
from /usr/lib/
#11 0xb65c4eca in QObject:
from /usr/lib/
#12 0xb65a4f92 in QCoreApplicatio
---Type <return> to continue, or q <return> to quit---
from /usr/lib/
#13 0xb65a4d88 in QCoreApplicatio
from /usr/lib/
#14 0xb65de45a in QTimerInfoList:
from /usr/lib/
#15 0xb65de70c in ?? () from /usr/lib/
#16 0xb5dbbf50 in g_main_
from /lib/arm-
#17 0xb5dbc0fc in ?? () from /lib/arm-
tags: | added: rtm14 touch-2014-10-30 |
Changed in unity8 (Ubuntu): | |
importance: | Undecided → High |
Changed in qtmir (Ubuntu): | |
importance: | Undecided → High |
Changed in unity8: | |
importance: | Undecided → High |
no longer affects: | unity8 |
Changed in qtmir: | |
importance: | Undecided → High |
Changed in qtmir: | |
assignee: | nobody → Gerry Boland (gerboland) |
Changed in qtmir (Ubuntu): | |
assignee: | nobody → Gerry Boland (gerboland) |
Changed in unity8 (Ubuntu): | |
assignee: | nobody → Gerry Boland (gerboland) |
no longer affects: | media-hub (Ubuntu) |
Changed in qtmir: | |
importance: | High → Critical |
Changed in qtmir (Ubuntu): | |
importance: | High → Critical |
Changed in unity8 (Ubuntu): | |
importance: | High → Critical |
Changed in qtmir (Ubuntu): | |
status: | New → Triaged |
Changed in qtmir: | |
status: | New → Triaged |
Wouldn't it be much easier running something like valgrind-massif to know where the problem is?