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

Bug #1203607 reported by Andrew Gaul on 2013-07-22
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)
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.

Related branches

Andrew Gaul (gaul) wrote :
Andrew Gaul (gaul) on 2013-07-22
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)
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!

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
Stephen M. Webb (bregma) wrote :

Fix Released in Unity Unity 7.1.0.

Changed in unity:
status: Fix Committed → Fix Released
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  Edit
Everyone can see this information.

Other bug subscribers