I'm not able to reproduce a large leak. Running valgrind for a couple hours and cycling the wallpaper every 5 seconds resulted in: ==1448== LEAK SUMMARY: ==1448== definitely lost: 1,152 bytes in 3 blocks ==1448== indirectly lost: 10,728 bytes in 459 blocks ==1448== possibly lost: 6,522 bytes in 84 blocks ==1448== still reachable: 1,099,963 bytes in 11,510 blocks ==1448== suppressed: 980,722 bytes in 11,295 blocks
I see some spikes of memory usage in massif when a large animated gif is loaded since the gdk pixbuf loader pulls the entire animation into memory. While less than ideal since we don't display that animation, just the first frame, it is released when the wallpaper cycles again. There's no option in gdk to work around that. Valgrind's exp-dhat tool also shows the 319 MB as the most allocated when it loaded the large gif animation in another shorter run (max_live below). ==8253== ======== SUMMARY STATISTICS ======== ==8253== ==8253== guest_insns: 203,499,954,091 ==8253== ==8253== max_live: 319,440,644 in 28,195 blocks ==8253== ==8253== tot_alloc: 19,682,325,570 in 8,342,955 blocks ==8253== ==8253== insns per allocated byte: 10 Having said that, just because I don't see big leaks doesn't mean you're running down a code path I haven't in my testing so far. https://wiki.ubuntu.com/Valgrind provides the basics of installing valgrind for ubuntu. You'll need to install the debug symbol packages for xfdesktop and all it's dependencies or else you'll get a bunch of useless output like: by 0x81D9E2B: ??? (in /usr/lib64/libpangoft2-1.0.so.0.3600.2) by 0x81D893C: ??? (in /usr/lib64/libpangoft2-1.0.so.0.3600.2) by 0x84018DE: ??? (in /usr/lib64/libpango-1.0.so.0.3600.2) by 0x84045F5: ??? (in /usr/lib64/libpango-1.0.so.0.3600.2) by 0x8406537: ??? (in /usr/lib64/libpango-1.0.so.0.3600.2) instead of: 4 bytes in 1 blocks are still reachable in loss record 43 of 9,359 at 0x4C28710: malloc (vg_replace_malloc.c:291) by 0x9AF65E9: strdup (strdup.c:42) by 0x5D07DD8: IceRegisterForProtocolSetup (in /usr/lib64/libICE.so.6.3.0) by 0x5AF05D8: SmcOpenConnection (in /usr/lib64/libSM.so.6.0.1) by 0x5045C32: xfce_sm_client_connect (xfce-sm-client.c:1598) by 0x425B0E: xfdesktop_application_start (xfdesktop-application.c:643) by 0x42576D: cb_wait_for_window_manager_destroyed (xfdesktop-application.c:565) It may be a simple 'apt-get build-dep xfdesktop4' but your distribution maintainers would be the right people to ask. If you do want to test it, stop xfdesktop first 'xfdesktop -Q' then launch valgrind, once you've collected some data (let it run for a while) you'll need to kill xfdesktop cleanly or valgrind's output won't be accurate (xfdesktop -Q or ctrl+c on the command line). Once you have that feel free to attach valgrind's log. -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1295614 Title: xfdesktop leaking memory on wallpaper change (ubuntu 14.04 with xfce) To manage notifications about this bug go to: https://bugs.launchpad.net/xfdesktop/+bug/1295614/+subscriptions -- ubuntu-bugs mailing list [email protected] https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
