Bug#323023: marked as done (libgtk2.0-0: Consumes enormous amounts of memory)

Debian Bug Tracking System owner at bugs.debian.org
Sun Oct 2 10:18:28 UTC 2005


Your message dated Sun, 2 Oct 2005 12:04:52 +0200
with message-id <20051002100452.GA8226 at bugs.debian.org>
and subject line False alarm
has caused the attached Bug report to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what I am
talking about this indicates a serious mail system misconfiguration
somewhere.  Please contact me immediately.)

Debian bug tracking system administrator
(administrator, Debian Bugs database)

--------------------------------------
Received: (at submit) by bugs.debian.org; 14 Aug 2005 06:59:28 +0000
>From k_igor_k at lycos.com Sat Aug 13 23:59:28 2005
Return-path: <k_igor_k at lycos.com>
Received: from mail.tor.primus.ca (smtp-01.primus.ca) [216.254.136.21] 
	by spohr.debian.org with esmtp (Exim 3.36 1 (Debian))
	id 1E4CSt-0003p2-00; Sat, 13 Aug 2005 23:59:28 -0700
Received: from dsl-207-112-10-146.tor.primus.ca ([207.112.10.146] helo=corum)
	by smtp-01.primus.ca with esmtpsa (TLSv1:AES256-SHA:256)
	(Exim 4.50)
	id 1E4CSq-0007Kh-58; Sun, 14 Aug 2005 02:59:26 -0400
Received: from igor by corum with local (Exim 4.52)
	id 1E4CSg-0007MW-1G; Sun, 14 Aug 2005 02:59:14 -0400
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
From: Igor Khavkine <k_igor_k at lycos.com>
To: Debian Bug Tracking System <submit at bugs.debian.org>
Subject: libgtk2.0-0: Consumes enormous amounts of memory
X-Mailer: reportbug 3.15
Date: Sun, 14 Aug 2005 02:59:13 -0400
Message-Id: <E1E4CSg-0007MW-1G at corum>
Delivered-To: submit at bugs.debian.org
X-Spam-Checker-Version: SpamAssassin 2.60-bugs.debian.org_2005_01_02 
	(1.212-2003-09-23-exp) on spohr.debian.org
X-Spam-Level: 
X-Spam-Status: No, hits=-8.0 required=4.0 tests=BAYES_00,HAS_PACKAGE 
	autolearn=no version=2.60-bugs.debian.org_2005_01_02

Package: libgtk2.0-0
Version: 2.6.9-1
Severity: important

When running any gtk2 app, the app's virtual memory usage goes up to
more than 500MB, stays there for a bit, then returns to normal, and
after that the app's window appears on the screen. I have 192MB of
physical RAM and 500MB of swap. The apps don't crash unless they can't
actually allocate that much memory. Incidentally, this renders the Gnome
desktop unusable for me, precisely for that reason.

I installed the libgtk2.0-0-dbg and libpango1.0-dbg packages and got a
backtrace from gnome-terminal during the peak of memory usage and the
culprit seems to be pango_read_line (same result from several similar
backtraces):

#0  pango_read_line (stream=0x8218a10, str=0x80ee160) at gstring.h:127
#1  0xb79f8572 in process_module_file (module_file=0x8218a10) at
modules.c:364
#2  0xb79f88d3 in read_modules () at modules.c:501
#3  0xb79f8b08 in build_map (info=0x821b108) at modules.c:589
#4  0xb79f7fe8 in pango_find_map (language=0x8416910,
engine_type_id=993, 
    render_type_id=994) at modules.c:146
#5  0xb79fc6a7 in get_lang_map (lang=0x19323e92) at pango-context.c:1017
#6  0xb79fc718 in itemize_state_update_for_new_run (state=0xbfffcff0)
    at pango-context.c:1033
#7  0xb79fc836 in itemize_state_process_run (state=0xbfffcff0)
    at pango-context.c:1074
#8  0xb79fcb18 in pango_itemize_with_base_dir (context=0xbfffcff0, 
    base_dir=422723218, text=0x8414dc8 "File", start_index=0, 
    length=422723217, attrs=0x19323e92, cached_iter=0x19323e92)
    at pango-context.c:1192
#9  0xb7a03f9f in pango_layout_check_lines (layout=0x8411bd8)
    at pango-layout.c:3262
#10 0xb7a02446 in pango_layout_get_extents_internal (layout=0x8411bd8, 
    ink_rect=0x0, logical_rect=0xbfffd2b4, line_extents=0x0)
    at pango-layout.c:2013
#11 0xb7a027b7 in pango_layout_get_extents (layout=0x19323e91, 
    ink_rect=0x19323e92, logical_rect=0x19323e92) at pango-layout.c:2178
#12 0xb7bd2b47 in gtk_label_size_request (widget=0x819fac0, 
---Type <return> to continue, or q <return> to quit---
    requisition=0x819fadc) at gtklabel.c:2014
#13 0xb7b1cdef in gtk_accel_label_size_request (widget=0x819fac0, 
    requisition=0x819fadc) at gtkaccellabel.c:281
#14 0xb78ce49f in g_cclosure_marshal_VOID__BOXED ()
   from /usr/lib/libgobject-2.0.so.0
#15 0xb78c1768 in g_cclosure_new_swap () from
/usr/lib/libgobject-2.0.so.0
#16 0xb78c1cce in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
#17 0xb78d09d6 in g_signal_stop_emission () from
/usr/lib/libgobject-2.0.so.0
#18 0xb78d25e7 in g_signal_emit_valist () from
/usr/lib/libgobject-2.0.so.0
#19 0xb78d5b74 in g_signal_emit_by_name () from
/usr/lib/libgobject-2.0.so.0
#20 0xb7c28dcc in do_size_request (widget=0x819fac0) at
gtksizegroup.c:496
#21 0xb7c29117 in _gtk_size_group_compute_requisition (widget=0x819fac0, 
    requisition=0xbfffd828) at gtksizegroup.c:683
#22 0xb7cbee85 in IA__gtk_widget_size_request (widget=0x819fac0, 
    requisition=0xbfffd828) at gtkwidget.c:2612
#23 0xb7bee33d in gtk_menu_item_size_request (widget=0x819b6e0, 
    requisition=0x819b6fc) at gtkmenuitem.c:521
#24 0xb78ce49f in g_cclosure_marshal_VOID__BOXED ()
   from /usr/lib/libgobject-2.0.so.0
#25 0xb78c1768 in g_cclosure_new_swap () from
/usr/lib/libgobject-2.0.so.0
#26 0xb78c1cce in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
#27 0xb78d09d6 in g_signal_stop_emission () from
/usr/lib/libgobject-2.0.so.0
#28 0xb78d25e7 in g_signal_emit_valist () from
/usr/lib/libgobject-2.0.so.0
---Type <return> to continue, or q <return> to quit---
#29 0xb78d5b74 in g_signal_emit_by_name () from
/usr/lib/libgobject-2.0.so.0
#30 0xb7c28dcc in do_size_request (widget=0x819b6e0) at
gtksizegroup.c:496
#31 0xb7c29117 in _gtk_size_group_compute_requisition (widget=0x819b6e0, 
    requisition=0xbfffdd4c) at gtksizegroup.c:683
#32 0xb7cbee85 in IA__gtk_widget_size_request (widget=0x819b6e0, 
    requisition=0xbfffdd4c) at gtkwidget.c:2612
#33 0xb7becd00 in gtk_menu_bar_size_request (widget=0x8106920, 
    requisition=0x810693c) at gtkmenubar.c:223
#34 0xb78ce49f in g_cclosure_marshal_VOID__BOXED ()
   from /usr/lib/libgobject-2.0.so.0
#35 0xb78c1768 in g_cclosure_new_swap () from
/usr/lib/libgobject-2.0.so.0
#36 0xb78c1cce in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
#37 0xb78d09d6 in g_signal_stop_emission () from
/usr/lib/libgobject-2.0.so.0
#38 0xb78d25e7 in g_signal_emit_valist () from
/usr/lib/libgobject-2.0.so.0
#39 0xb78d5b74 in g_signal_emit_by_name () from
/usr/lib/libgobject-2.0.so.0
#40 0xb7c28dcc in do_size_request (widget=0x8106920) at
gtksizegroup.c:496
#41 0xb7c29117 in _gtk_size_group_compute_requisition (widget=0x8106920, 
    requisition=0xbfffe278) at gtksizegroup.c:683
#42 0xb7cbee85 in IA__gtk_widget_size_request (widget=0x8106920, 
    requisition=0xbfffe278) at gtkwidget.c:2612
#43 0xb7cbad4e in gtk_vbox_size_request (widget=0x8197ff0, 
    requisition=0x819800c) at gtkvbox.c:122
#44 0xb78ce49f in g_cclosure_marshal_VOID__BOXED ()
---Type <return> to continue, or q <return> to quit---
   from /usr/lib/libgobject-2.0.so.0
#45 0xb78c1768 in g_cclosure_new_swap () from
/usr/lib/libgobject-2.0.so.0
#46 0xb78c1cce in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
#47 0xb78d09d6 in g_signal_stop_emission () from
/usr/lib/libgobject-2.0.so.0
#48 0xb78d25e7 in g_signal_emit_valist () from
/usr/lib/libgobject-2.0.so.0
#49 0xb78d5b74 in g_signal_emit_by_name () from
/usr/lib/libgobject-2.0.so.0
#50 0xb7c28dcc in do_size_request (widget=0x8197ff0) at
gtksizegroup.c:496
#51 0xb7c29117 in _gtk_size_group_compute_requisition (widget=0x8197ff0, 
    requisition=0xbfffe78c) at gtksizegroup.c:683
#52 0xb7cbee85 in IA__gtk_widget_size_request (widget=0x8197ff0, 
    requisition=0xbfffe78c) at gtkwidget.c:2612
#53 0xb7cce5cd in gtk_window_size_request (widget=0x818c858, 
    requisition=0x818c874) at gtkwindow.c:4203
#54 0xb78ce49f in g_cclosure_marshal_VOID__BOXED ()
   from /usr/lib/libgobject-2.0.so.0
#55 0xb78c1768 in g_cclosure_new_swap () from
/usr/lib/libgobject-2.0.so.0
#56 0xb78c1cce in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
#57 0xb78d09d6 in g_signal_stop_emission () from
/usr/lib/libgobject-2.0.so.0
#58 0xb78d25e7 in g_signal_emit_valist () from
/usr/lib/libgobject-2.0.so.0
#59 0xb78d5b74 in g_signal_emit_by_name () from
/usr/lib/libgobject-2.0.so.0
#60 0xb7c28dcc in do_size_request (widget=0x818c858) at
gtksizegroup.c:496
#61 0xb7c29117 in _gtk_size_group_compute_requisition (widget=0x818c858, 
    requisition=0xbfffecf4) at gtksizegroup.c:683
---Type <return> to continue, or q <return> to quit---
#62 0xb7cbee85 in IA__gtk_widget_size_request (widget=0x818c858, 
    requisition=0xbfffecf4) at gtkwidget.c:2612
#63 0xb7cd0df4 in gtk_window_realize (widget=0x818c858) at
gtkwindow.c:4006
#64 0xb78cdbda in g_cclosure_marshal_VOID__VOID ()
   from /usr/lib/libgobject-2.0.so.0
#65 0xb78c1768 in g_cclosure_new_swap () from
/usr/lib/libgobject-2.0.so.0
#66 0xb78c1cce in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
#67 0xb78d09d6 in g_signal_stop_emission () from
/usr/lib/libgobject-2.0.so.0
#68 0xb78d25e7 in g_signal_emit_valist () from
/usr/lib/libgobject-2.0.so.0
#69 0xb78d299e in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
#70 0xb7cc590e in IA__gtk_widget_realize (widget=0x818c858) at
gtkwidget.c:2286
#71 0xb7cc59c7 in IA__gtk_widget_realize (widget=0x8197ff0) at
gtkwidget.c:2282
#72 0xb7cc59c7 in IA__gtk_widget_realize (widget=0x8199fc0) at
gtkwidget.c:2282
#73 0xb7cc59c7 in IA__gtk_widget_realize (widget=0x840f9b0) at
gtkwidget.c:2282
#74 0xb7cc59c7 in IA__gtk_widget_realize (widget=0x81af2d0) at
gtkwidget.c:2282
#75 0x080748cc in terminal_window_set_active ()
#76 0x08074b8d in terminal_window_get_active ()
#77 0xb7be546f in _gtk_marshal_VOID__POINTER_UINT (closure=0x80c8380, 
    return_value=0x0, n_param_values=3, param_values=0xbffff51c, 
    invocation_hint=0xbffff42c, marshal_data=0x1) at
gtkmarshalers.c:2195
#78 0xb78c1cce in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
#79 0xb78d1568 in g_signal_stop_emission () from
/usr/lib/libgobject-2.0.so.0
#80 0xb78d25e7 in g_signal_emit_valist () from
/usr/lib/libgobject-2.0.so.0
---Type <return> to continue, or q <return> to quit---
#81 0xb78d299e in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
#82 0xb7bfa357 in gtk_notebook_switch_page (notebook=0x8199fc0,
page=Variable "page" is not available.
)
    at gtknotebook.c:3858
#83 0xb7bfc19d in IA__gtk_notebook_insert_page_menu (notebook=0x8199fc0, 
    child=0x840f9b0, tab_label=0x8411c38, menu_label=0x0, position=0)
    at gtknotebook.c:4386
#84 0xb7bfc7ad in IA__gtk_notebook_append_page (notebook=0x8199fc0, 
    child=0x840f9b0, tab_label=0x8411c38) at gtknotebook.c:4133
#85 0x08074049 in terminal_window_add_screen ()
#86 0x0805ea22 in terminal_app_new_terminal ()
#87 0x0805de23 in terminal_skey_do_popup ()
#88 0x0805e58d in main ()

Igor

-- System Information:
Debian Release: testing/unstable
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: i386 (i586)
Shell:  /bin/sh linked to /bin/dash
Kernel: Linux 2.6.10
Locale: LANG=C, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)

Versions of packages libgtk2.0-0 depends on:
ii  libatk1.0-0               1.10.1-2       The ATK accessibility toolkit
ii  libc6                     2.3.5-3        GNU C Library: Shared libraries an
ii  libfontconfig1            2.3.2-1        generic font configuration library
ii  libfreetype6              2.1.10-1       FreeType 2 font engine, shared lib
ii  libglib2.0-0              2.6.6-1        The GLib library of C routines
ii  libgtk2.0-bin             2.6.9-1        The programs for the GTK+ graphica
ii  libgtk2.0-common          2.6.9-1        Common files for the GTK+ graphica
ii  libjpeg62                 6b-10          The Independent JPEG Group's JPEG 
ii  libpango1.0-0             1.8.2-1        Layout and rendering of internatio
ii  libpng12-0                1.2.8rel-1     PNG library - runtime
ii  libtiff4                  3.7.3-1        Tag Image File Format (TIFF) libra
ii  libx11-6                  6.8.2.dfsg.1-5 X Window System protocol client li
ii  libxcursor1               1.1.3-1        X cursor management library
ii  libxext6                  6.8.2.dfsg.1-5 X Window System miscellaneous exte
ii  libxft2                   2.1.7-1        FreeType-based font drawing librar
ii  libxi6                    6.8.2.dfsg.1-5 X Window System Input extension li
ii  libxinerama1              6.8.2.dfsg.1-5 X Window System multi-head display
ii  libxrandr2                6.8.2.dfsg.1-5 X Window System Resize, Rotate and
ii  libxrender1               1:0.9.0-2      X Rendering Extension client libra
ii  xlibs                     6.8.2.dfsg.1-5 X Window System client libraries m
ii  zlib1g                    1:1.2.3-3      compression library - runtime

Versions of packages libgtk2.0-0 recommends:
ii  hicolor-icon-theme            0.8-1      default fallback theme for FreeDes

-- no debconf information

---------------------------------------
Received: (at 323023-done) by bugs.debian.org; 2 Oct 2005 10:04:53 +0000
>From lool at dooz.org Sun Oct 02 03:04:53 2005
Return-path: <lool at dooz.org>
Received: from smtp3-g19.free.fr [212.27.42.29] 
	by spohr.debian.org with esmtp (Exim 3.36 1 (Debian))
	id 1EM0iD-0001Ns-00; Sun, 02 Oct 2005 03:04:53 -0700
Received: from siemens.dooz.org (levallois.dooz.org [81.57.180.178])
	by smtp3-g19.free.fr (Postfix) with ESMTP id 504812657C;
	Sun,  2 Oct 2005 12:04:52 +0200 (CEST)
Received: by siemens.dooz.org (Postfix, from userid 1000)
	id 20474F505; Sun,  2 Oct 2005 12:04:52 +0200 (CEST)
Date: Sun, 2 Oct 2005 12:04:52 +0200
From: =?iso-8859-1?Q?Lo=EFc?= Minier <lool at dooz.org>
To: Igor Khavkine <k_igor_k at lycos.com>
Cc: 323023-done at bugs.debian.org
Subject: Re: False alarm
Message-ID: <20051002100452.GA8226 at bugs.debian.org>
References: <20050904040922.GA23440 at multiverse.dyn.dhs.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: inline
In-Reply-To: <20050904040922.GA23440 at multiverse.dyn.dhs.org>
Content-Transfer-Encoding: quoted-printable
Delivered-To: 323023-done at bugs.debian.org
X-Spam-Checker-Version: SpamAssassin 2.60-bugs.debian.org_2005_01_02 
	(1.212-2003-09-23-exp) on spohr.debian.org
X-Spam-Level: 
X-Spam-Status: No, hits=-3.0 required=4.0 tests=BAYES_00 autolearn=no 
	version=2.60-bugs.debian.org_2005_01_02

        HI,

On dim, sep 04, 2005, Igor Khavkine wrote:
> Since there was no response to the bug report, I decided to rumage
> through some sources to find the memory hog. It turns out that the
> problem was with my local configuration. Somehow, the file
> /etc/pango/pango.modules got corrupted and was padded with zeros to
> about 500MB in size. Which explains the enormous memory consumption,
> since this file is loaded in its entirety into memory when libpango is
> initialized. Running update-pango-modules fixed the problem.

 I'm more than happy that you could find the root cause of this issue, I
 doubt I would have tracked it down easily, thanks.

 I'm closing this bug.

   Cheers,
PS: you can close bugs by mailing the -done address.
--=20
Lo=EFc Minier <lool at dooz.org>




More information about the Pkg-gnome-maintainers mailing list