signals connected in panel-service.c:on_entry_added never disconnected

Bug #1203607 reported by Andrew Gaul
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Unity
Fix Released
Medium
Andrew Gaul
5.0
Fix Committed
Medium
Andrew Gaul
unity (Ubuntu)
Fix Released
Undecided
Unassigned
Nominated for Precise by Stephen M. Webb

Bug Description

I have observed unity-panel-service on Ubuntu 12.04 consuming hundreds of MB of memory (RSS) after about a month of uptime. I ran ubuntu-panel-service 5.20.0 with G_SLICE=always-malloc using Valgrind with --leak-check=full --track-origins=yes --show-reachable=yes --num-callers=100 for a few hours and attached a leak report. Here is a suspect trace:

==25653== 155,736 bytes in 2,163 blocks are possibly lost in loss record 12,412 of 12,412
==25653== at 0x4C2A964: calloc (vg_replace_malloc.c:593)
==25653== by 0x68D8AE0: g_malloc0 (gmem.c:189)
==25653== by 0x60E7B18: g_closure_new_simple (gclosure.c:206)
==25653== by 0x60E907F: g_cclosure_new (gclosure.c:917)
==25653== by 0x61000CD: g_signal_connect_data (gsignal.c:2443)
==25653== by 0x40AC57: on_entry_added (panel-service.c:841)
==25653== by 0x60E8CA1: g_closure_invoke (gclosure.c:777)
==25653== by 0x60F9D70: signal_emit_unlocked_R (gsignal.c:3547)
==25653== by 0x6102098: g_signal_emit_valist (gsignal.c:3296)
==25653== by 0x6102241: g_signal_emit (gsignal.c:3352)
==25653== by 0x4E39734: indicator_object_set_visible (in /usr/lib/libindicator3.so.7.0.0)
==25653== by 0x15F2A844: ???
==25653== by 0x60E8CA1: g_closure_invoke (gclosure.c:777)
==25653== by 0x60F9D70: signal_emit_unlocked_R (gsignal.c:3547)
==25653== by 0x6102098: g_signal_emit_valist (gsignal.c:3296)
==25653== by 0x6102241: g_signal_emit (gsignal.c:3352)
==25653== by 0xA0A5DF6: ??? (in /usr/lib/x86_64-linux-gnu/libdbus-glib-1.so.2.2.2)
==25653== by 0x60E8CA1: g_closure_invoke (gclosure.c:777)
==25653== by 0x60F9D70: signal_emit_unlocked_R (gsignal.c:3547)
==25653== by 0x6102098: g_signal_emit_valist (gsignal.c:3296)
==25653== by 0x6102241: g_signal_emit (gsignal.c:3352)
==25653== by 0xA0A62FD: ??? (in /usr/lib/x86_64-linux-gnu/libdbus-glib-1.so.2.2.2)
==25653== by 0xA2C9AC5: dbus_connection_dispatch (in /lib/x86_64-linux-gnu/libdbus-1.so.3.5.8)
==25653== by 0xA09F434: ??? (in /usr/lib/x86_64-linux-gnu/libdbus-glib-1.so.2.2.2)
==25653== by 0x68D2D52: g_main_context_dispatch (gmain.c:2539)
==25653== by 0x68D309F: g_main_context_iterate.isra.23 (gmain.c:3146)
==25653== by 0x68D3499: g_main_loop_run (gmain.c:3340)
==25653== by 0x51BC42C: gtk_main (in /usr/lib/x86_64-linux-gnu/libgtk-3.so.0.400.2)
==25653== by 0x407EC1: main (panel-main.c:431)

I will submit a review request which addresses this. Note that there are other suspicious activity in the log outside the scope of this issue.

Tags: memory-leak

Related branches

Revision history for this message
Andrew Gaul (gaul) wrote :
Andrew Gaul (gaul)
summary: - signals added in panel-service.c:on_entry_added never disconnected
+ signals connected in panel-service.c:on_entry_added never disconnected
Changed in unity:
importance: Undecided → Medium
status: New → In Progress
milestone: none → 7.1.0
assignee: nobody → Andrew Gaul (gaul)
Revision history for this message
Christopher Townsend (townsend) wrote :

Hi Andrew,

Marco gave some instructions for getting this into the 5.0 branch for 12.04. Once you get that done and approved, we'll work on getting this in the 12.04 Unity SRU. We'll help you with that.

Thanks for your contributions!

Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :

Fix committed into lp:unity at revision None, scheduled for release in unity, milestone 7.1.0

Changed in unity:
status: In Progress → Fix Committed
Changed in unity (Ubuntu):
status: New → In Progress
status: In Progress → Fix Committed
Revision history for this message
Stephen M. Webb (bregma) wrote :

Fix Released in Unity Unity 7.1.0.

Changed in unity:
status: Fix Committed → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package unity - 7.1.0+13.10.20130729-0ubuntu1

---------------
unity (7.1.0+13.10.20130729-0ubuntu1) saucy; urgency=low

  [ Stephen M. Webb ]
  * upstream release 7.1.0

  [ Andrew Gaul ]
  * PanelService: Disconnect signals connected in panel-
    service.c:on_entry_added. (LP: #1203607)

  [ Chris Townsend ]
  * Change to using ellipsis instead of three dots for the "Installing"
    tooltip. (LP: #1203092)

  [ Andrea Azzarone ]
  * Add show_desktop_key film in unityshell plugin. (LP: #1204664)

  [ Marco Trevisan (Treviño) ]
  * TestPanelService: verify that the entry's label and icon are
    disconnected on removal.

  [ Ubuntu daily release ]
  * Automatic snapshot from revision 3443
 -- Ubuntu daily release <email address hidden> Mon, 29 Jul 2013 04:04:13 +0000

Changed in unity (Ubuntu):
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.