Zooming/Text functions cause 100% CPU Utilization & possible memory leak?

Bug #48887 reported by Jordan Erickson
This bug report is a duplicate of:  Bug #52274: Memory leak causing problems with dia. Edit Remove
4
Affects Status Importance Assigned to Milestone
pango1.0 (Ubuntu)
Invalid
Undecided
Ubuntu Desktop Bugs

Bug Description

Binary package hint: dia

First time using Dia after Dapper 6.06 LTS dist-upgrade, I opened an existing (as well as new) Dia drawing and proceeded to add a text box, as well as zoom to 200%. After a few random tasks within the drawing, my CPU utilization would reach 100% and stay there, causing extremely slow system response time. Upon attempting to 'kill -9' Dia process, it would become 'defunct'. For some reason, this would cause firefox-bin and gaim processes to get killed due to 'Out of Memory' errors (see below).

Here are some system logs that I assume are related:

---
[4296798.183000] oom-killer: gfp_mask=0x201d2, order=0
[4296798.183000] Mem-info:
[4296798.183000] DMA per-cpu:
[4296798.183000] cpu 0 hot: low 0, high 0, batch 1 used:0
[4296798.183000] cpu 0 cold: low 0, high 0, batch 1 used:0
[4296798.183000] DMA32 per-cpu: empty
[4296798.183000] Normal per-cpu:
[4296798.183000] cpu 0 hot: low 0, high 186, batch 31 used:20
[4296798.183000] cpu 0 cold: low 0, high 62, batch 15 used:5
[4296798.183000] HighMem per-cpu: empty
[4296798.183000] Free pages: 4392kB (0kB HighMem)
[4296798.183000] Active:61351 inactive:60454 dirty:0 writeback:0 unstable:0 free :1098 slab:2841 mapped:121243 pagetables:503
[4296798.183000] DMA free:2068kB min:88kB low:44kB high:88kB active:5684kB inact ive:5188kB present:16384kB pages_scanned:512 all_unreclaimable? no
[4296798.183000] lowmem_reserve[]: 0 0 495 495
[4296798.183000] DMA32 free:0kB min:0kB low:0kB high:0kB active:0kB inactive:0kB present:0kB pages_scanned:0 all_unreclaimable? no
[4296798.183000] lowmem_reserve[]: 0 0 495 495
[4296798.183000] Normal free:2324kB min:2804kB low:1400kB high:2804kB active:239 720kB inactive:236628kB present:507840kB pages_scanned:42293 all_unreclaimable? no
[4296798.183000] lowmem_reserve[]: 0 0 0 0
[4296798.183000] HighMem free:0kB min:128kB low:32kB high:64kB active:0kB inacti ve:0kB present:0kB pages_scanned:0 all_unreclaimable? no
[4296798.183000] lowmem_reserve[]: 0 0 0 0
[4296798.183000] DMA: 7*4kB 3*8kB 0*16kB 1*32kB 1*64kB 1*128kB 1*256kB 1*512kB 1 *1024kB 0*2048kB 0*4096kB = 2068kB
[4296798.183000] DMA32: empty
[4296798.183000] Normal: 173*4kB 28*8kB 8*16kB 0*32kB 0*64kB 0*128kB 1*256kB 0*5 12kB 1*1024kB 0*2048kB 0*4096kB = 2324kB
[4296798.183000] HighMem: empty
[4296798.183000] Swap cache: add 258559, delete 258559, find 7941/10868, race 0+ 0
[4296798.183000] Free swap = 0kB
[4296798.183000] Total swap = 498004kB
[4296798.183000] Free swap: 0kB
[4296798.186000] 131056 pages of RAM
[4296798.186000] 0 pages of HIGHMEM
[4296798.186000] 2150 reserved pages
[4296798.186000] 507 pages shared
[4296798.186000] 0 pages swap cached
[4296798.186000] 0 pages dirty
[4296798.186000] 0 pages writeback
[4296798.186000] 121243 pages mapped
[4296798.186000] 2841 pages slab
[4296798.186000] 503 pages pagetables
[4296798.186000] Out of Memory: Killed process 5402 (gaim).
[4296812.229000] oom-killer: gfp_mask=0x201d2, order=0
[4296812.229000] Mem-info:
[4296812.229000] DMA per-cpu:
[4296812.229000] cpu 0 hot: low 0, high 0, batch 1 used:0
[4296812.229000] cpu 0 cold: low 0, high 0, batch 1 used:0
[4296812.229000] DMA32 per-cpu: empty
[4296812.229000] Normal per-cpu:
[4296812.229000] cpu 0 hot: low 0, high 186, batch 31 used:29
[4296812.229000] cpu 0 cold: low 0, high 62, batch 15 used:19
[4296812.229000] HighMem per-cpu: empty
[4296812.229000] Free pages: 4356kB (0kB HighMem)
[4296812.229000] Active:61171 inactive:60714 dirty:0 writeback:0 unstable:0 free :1089 slab:2859 mapped:121676 pagetables:498
[4296812.229000] DMA free:2024kB min:88kB low:44kB high:88kB active:5780kB inact ive:5128kB present:16384kB pages_scanned:11369 all_unreclaimable? yes
[4296812.229000] lowmem_reserve[]: 0 0 495 495
[4296812.229000] DMA32 free:0kB min:0kB low:0kB high:0kB active:0kB inactive:0kB present:0kB pages_scanned:0 all_unreclaimable? no
[4296812.229000] lowmem_reserve[]: 0 0 495 495
[4296812.229000] Normal free:2332kB min:2804kB low:1400kB high:2804kB active:238 904kB inactive:237728kB present:507840kB pages_scanned:97296 all_unreclaimable? no
[4296812.229000] lowmem_reserve[]: 0 0 0 0
[4296812.229000] HighMem free:0kB min:128kB low:32kB high:64kB active:0kB inacti ve:0kB present:0kB pages_scanned:0 all_unreclaimable? no
[4296812.229000] lowmem_reserve[]: 0 0 0 0
[4296812.229000] DMA: 0*4kB 1*8kB 0*16kB 1*32kB 1*64kB 1*128kB 1*256kB 1*512kB 1 *1024kB 0*2048kB 0*4096kB = 2024kB
[4296812.229000] DMA32: empty
[4296812.229000] Normal: 223*4kB 14*8kB 3*16kB 0*32kB 0*64kB 0*128kB 1*256kB 0*5
12kB 1*1024kB 0*2048kB 0*4096kB = 2332kB
[4296812.229000] HighMem: empty
[4296812.229000] Swap cache: add 260015, delete 260015, find 7986/11011, race 0+ 0
[4296812.229000] Free swap = 0kB
[4296812.229000] Total swap = 498004kB
[4296812.229000] Free swap: 0kB
[4296812.232000] 131056 pages of RAM
[4296812.232000] 0 pages of HIGHMEM
[4296812.232000] 2150 reserved pages
[4296812.232000] 471 pages shared
[4296812.232000] 0 pages swap cached
[4296812.232000] 0 pages dirty
[4296812.232000] 0 pages writeback
[4296812.232000] 121676 pages mapped
[4296812.232000] 2859 pages slab
[4296812.232000] 498 pages pagetables
[4296812.232000] Out of Memory: Killed process 5412 (firefox-bin).
---

- Jordan

Revision history for this message
Jordan Erickson (lns) wrote :

This actually seems to only happen when an existing drawing is being edited (from the old version in Breezy?) and occurs for me usually when mouse-scrolling and clicking around/editing in a text box. Things become increasingly slower when I do this and eventually the system just grinds to a halt.

Revision history for this message
Klaus Stengel (proger2) wrote :

I experience the same problem. I did some analysis with valgrind and noticed that the problem isn't dia itself, but the text-layout library 'libpango'. On every redraw event some pieces of font information are gathered by that library, but won't be cleaned up again so that dia (and any other program that uses certain functions of libpango) takes more and more memory until it has to be killed because there is no more space left ( so called "memory leak"). This explains the OOMs the original poster experienced and why it only happens when text objects are involved.

Revision history for this message
Jordan Erickson (lns) wrote :

Is there any way we can progress on this bug? I rely on Dia to create network diagrams..I am not a programmer but if there is anything at all I can do please let me know! I really would like to be able to use it, and right now as the bug stands unconfirmed, after just a few minutes of using Dia my entire workstation grinds to a halt... :(

Revision history for this message
Klaus Stengel (proger2) wrote :

A patch is available in GNOME Bugzilla, but as you can see there, I'm still waiting for the confirmation that it works like expected:
http://bugzilla.gnome.org/show_bug.cgi?id=344766

Revision history for this message
Jordan Erickson (lns) wrote : Re: [Bug 48887] Re: Zooming/Text functions cause 100% CPU Utilization & possible memory leak?

Klaus, you absolutely rock. Thank you!! =) I feel so disabled as a
non-programmer, I wish I could troubleshoot things like that myself.
Thanks again!!

Jordan

Klaus Stengel wrote:
> A patch is available in GNOME Bugzilla, but as you can see there, I'm still waiting for the confirmation that it works like expected:
> http://bugzilla.gnome.org/show_bug.cgi?id=344766
>

--
Jordan Erickson
Owner, Logical Networking Solutions - "We'll make it work."
http://www.logicalnetworking.net
707-636-5678

Latest LNS Blogs - http://blogs.logicalnetworking.net

 LNS Technology Assurance contract customers!
 Best Buy "Destroyed" Hard Drive Found at Flea Market
 California Earthquake tracking site (did you feel it on Sat?)

Revision history for this message
Daniel Holbach (dholbach) wrote :

Marking as duplicate of bug 52274.

Changed in dia:
assignee: nobody → desktop-bugs
status: Unconfirmed → Rejected
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.