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 -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]