Bug 288619 - memory leak with 4.7.90
Summary: memory leak with 4.7.90
Status: RESOLVED DUPLICATE of bug 288675
Alias: None
Product: kmix
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: Fedora RPMs Linux
: NOR normal
Target Milestone: ---
Assignee: Christian Esken
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-12-10 00:53 UTC by T.C. Hollingsworth
Modified: 2013-02-02 14:39 UTC (History)
6 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
top.txt (41.77 KB, text/plain)
2011-12-18 19:20 UTC, Francesco Riosa
Details
gdb_thread_apply_all_bt.txt (8.11 KB, text/plain)
2011-12-18 19:25 UTC, Francesco Riosa
Details
gdb_step.txt (7.34 KB, text/plain)
2011-12-18 19:29 UTC, Francesco Riosa
Details
list.txt (5.87 KB, text/plain)
2011-12-18 19:31 UTC, Francesco Riosa
Details
lsof.txt (20.70 KB, text/plain)
2011-12-18 19:35 UTC, Francesco Riosa
Details

Note You need to log in before you can comment on or make changes to this bug.
Description T.C. Hollingsworth 2011-12-10 00:53:16 UTC
Version:           unspecified (using Devel) 
OS:                Linux

KMix seems to be leaking memory in 4.7.90 again. ksysguard is reporting kmix is using 144,188K at the moment.

Maybe a regression of https://bugs.kde.org/show_bug.cgi?id=237239 ?

Reproducible: Always

Steps to Reproduce:
1. Login to a KDE Session.
2. Wait several hours.

Actual Results:  
KMix uses a lot of memory

Expected Results:  
KMix uses a normal amount of memory

Also reported on the Fedora KDE list:
http://article.gmane.org/gmane.linux.redhat.fedora.kde/10721

I'll try and get something useful out of valgrind and get back to you.
Comment 1 Rex Dieter 2011-12-12 15:29:53 UTC
Not only memory, but I'm seeing it spike cpu after some time too, though I'm not entirely sure if that's for the same reasons.
Comment 2 Rex Dieter 2011-12-12 15:30:21 UTC
Oh, and quit/restart kmix usually fixes the problem for me.
Comment 3 Eelko Berkenpies 2011-12-13 09:48:15 UTC
I can also confirm this on Fedora 16 (x86_64) with KDE 4.7.90. Rex' work-around seems to temporarily solve it.
Comment 4 Niels Ole Salscheider 2011-12-14 08:48:32 UTC
For me, it uses about 0.5 GB of memory and causes 100% load on one core.

Gdb gives me the following backtrace:

(gdb) bt
#0  0x00007fc4e8f77c1b in QCoreApplication::removePostedEvents(QObject*, int) () from /usr/lib64/qt4/libQtCore.so.4
#1  0x00007fc4e811c77e in QWidget::~QWidget() () from /usr/lib64/qt4/libQtGui.so.4
#2  0x00007fc4d4b2964b in Oxygen::TransitionWidget::~TransitionWidget() () from /usr/lib64/kde4/plugins/styles/oxygen.so
#3  0x00007fc4e8f864c4 in QObjectPrivate::deleteChildren() () from /usr/lib64/qt4/libQtCore.so.4
#4  0x00007fc4e811c767 in QWidget::~QWidget() () from /usr/lib64/qt4/libQtGui.so.4
#5  0x00007fc4e84cdf49 in QLabel::~QLabel() () from /usr/lib64/qt4/libQtGui.so.4
#6  0x00007fc4e8f864c4 in QObjectPrivate::deleteChildren() () from /usr/lib64/qt4/libQtCore.so.4
#7  0x00007fc4e811c767 in QWidget::~QWidget() () from /usr/lib64/qt4/libQtGui.so.4
#8  0x00007fc4d50d2402 in MDWSlider::~MDWSlider() () from /usr/lib64/libkdeinit4_kmix.so
#9  0x00007fc4d50c8dc2 in ViewBase::setMixSet() () from /usr/lib64/libkdeinit4_kmix.so
#10 0x00007fc4d50c8faf in ViewBase::controlsReconfigured(QString const&) () from /usr/lib64/libkdeinit4_kmix.so
#11 0x00007fc4e8f87de1 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib64/qt4/libQtCore.so.4
#12 0x00007fc4d50e6a45 in Mixer::controlsReconfigured(QString const&) () from /usr/lib64/libkdeinit4_kmix.so
#13 0x00007fc4e8f87de1 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib64/qt4/libQtCore.so.4
#14 0x00007fc4d50a3cc5 in Mixer_Backend::controlsReconfigured(QString const&) () from /usr/lib64/libkdeinit4_kmix.so
#15 0x00007fc4e8f8ce9e in QObject::event(QEvent*) () from /usr/lib64/qt4/libQtCore.so.4
#16 0x00007fc4e80d0d94 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib64/qt4/libQtGui.so.4
#17 0x00007fc4e80d5bb3 in QApplication::notify(QObject*, QEvent*) () from /usr/lib64/qt4/libQtGui.so.4
#18 0x00007fc4e9d6e408 in KApplication::notify(QObject*, QEvent*) () from /usr/lib64/libkdeui.so.5
#19 0x00007fc4e8f73d6b in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib64/qt4/libQtCore.so.4
#20 0x00007fc4e8f77669 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib64/qt4/libQtCore.so.4
#21 0x00007fc4e8fa2b93 in postEventSourceDispatch(_GSource*, int (*)(void*), void*) () from /usr/lib64/qt4/libQtCore.so.4
#22 0x00007fc4e42e907c in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
#23 0x00007fc4e42e9870 in g_main_context_iterate.isra.21 () from /usr/lib64/libglib-2.0.so.0
#24 0x00007fc4e42e9a1b in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#25 0x00007fc4e8fa2f76 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#26 0x00007fc4e8174c86 in QGuiEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtGui.so.4
#27 0x00007fc4e8f72ab2 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#28 0x00007fc4e8f72d37 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#29 0x00007fc4e8f77965 in QCoreApplication::exec() () from /usr/lib64/qt4/libQtCore.so.4
#30 0x00007fc4d50bb2c2 in kdemain () from /usr/lib64/libkdeinit4_kmix.so
#31 0x0000000000408b14 in launch(int, char const*, char const*, char const*, int, char const*, bool, char const*, bool, char const*) ()
#32 0x0000000000409bd6 in handle_launcher_request ()
#33 0x000000000040a117 in handle_requests(int) ()
#34 0x0000000000405a2d in main ()
Comment 5 Francesco Riosa 2011-12-18 19:20:51 UTC
Created attachment 66873 [details]
top.txt

top -n1 -b
output
Comment 6 Francesco Riosa 2011-12-18 19:24:10 UTC
strace -ff -tt -o strace-fp  -p 30680

cat strace-fp.30700 
19:52:21.466746 restart_syscall(<... resuming interrupted call ...>

cat strace-fp.30680 
19:52:28.046873 brk(0x2f49e000)         = 0x2f49e000
19:52:36.282215 brk(0x2f4bf000)         = 0x2f4bf000
19:52:41.481291 brk(0x2f4e0000)         = 0x2f4e0000
19:52:50.664421 brk(0x2f501000)         = 0x2f501000
19:52:59.419566 brk(0x2f522000)         = 0x2f522000
19:53:08.618815 brk(0x2f543000)         = 0x2f543000
19:53:16.827222 brk(0x2f564000)         = 0x2f564000
19:53:22.151742 brk(0x2f585000)         = 0x2f585000
19:53:31.087321 brk(0x2f5a6000)         = 0x2f5a6000
19:53:39.879854 brk(0x2f5c7000)         = 0x2f5c7000
19:53:49.003561 brk(0x2f5e8000)         = 0x2f5e8000
19:53:56.980323 brk(0x2f609000)         = 0x2f609000
19:54:02.530867 brk(0x2f62a000)         = 0x2f62a000
19:54:11.435968 brk(0x2f64b000)         = 0x2f64b000
19:54:11.436066 brk(0x2f64a000)         = 0x2f64a000
19:54:20.419316 brk(0x2f66b000)         = 0x2f66b000
19:54:28.820030 brk(0x2f68c000)         = 0x2f68c000
19:54:33.882814 brk(0x2f6ad000)         = 0x2f6ad000
19:54:42.748763 brk(0x2f6ce000)         = 0x2f6ce000
19:54:51.697678 brk(0x2f6ef000)         = 0x2f6ef000
19:55:00.537083 brk(0x2f710000)         = 0x2f710000
19:55:08.689030 brk(0x2f731000)         = 0x2f731000
19:55:14.126074 brk(0x2f752000)         = 0x2f752000
19:55:22.936127 brk(0x2f773000)         = 0x2f773000
19:55:32.300234 brk(0x2f794000)         = 0x2f794000
19:55:41.022778 brk(0x2f7b5000)         = 0x2f7b5000
19:55:49.366487 brk(0x2f7d6000)         = 0x2f7d6000
19:55:54.843012 brk(0x2f7f7000)         = 0x2f7f7000
19:56:03.833807 brk(0x2f818000)         = 0x2f818000
19:56:03.833908 brk(0x2f817000)         = 0x2f817000
19:56:12.841516 brk(0x2f838000)         = 0x2f838000
19:56:21.137638 brk(0x2f859000)         = 0x2f859000
19:56:26.449290 brk(0x2f87a000)         = 0x2f87a000
19:56:35.510586 brk(0x2f89b000)         = 0x2f89b000
19:56:44.440113 brk(0x2f8bc000)         = 0x2f8bc000
19:56:53.574037 brk(0x2f8dd000)         = 0x2f8dd000
19:57:01.657641 brk(0x2f8fe000)         = 0x2f8fe000
Comment 7 Francesco Riosa 2011-12-18 19:25:56 UTC
Created attachment 66874 [details]
gdb_thread_apply_all_bt.txt

gdb> thread apply all bt

backtrace of the two running threads
Comment 8 Francesco Riosa 2011-12-18 19:29:37 UTC
Created attachment 66875 [details]
gdb_step.txt

gdb> step 

some iterations
Comment 9 Francesco Riosa 2011-12-18 19:31:40 UTC
Created attachment 66876 [details]
list.txt

gdb> list
gdb> up
gdb> list

source listing of the bottom of the bt stack
Comment 10 Francesco Riosa 2011-12-18 19:35:12 UTC
Created attachment 66877 [details]
lsof.txt

list of open files, notice that I've updated part of the system , so 

/usr/lib64/libjasper.so.1.0.0
/usr/lib64/libpulsecommon-1.1.so
/usr/lib64/libpulse-mainloop-glib.so.0.0.4
/usr/lib64/libpulse.so.0.13.5
/usr/lib64/libphonon.so.4.5.57

results as deleted
Comment 11 Francesco Riosa 2011-12-18 19:37:03 UTC
everything reported in the previous posts by me are referred to a gentoo system running up to date kde from git
Comment 12 Michael 2011-12-19 15:12:38 UTC
Marking that one as the Duplicate as Christian Esken already commented on the other one.

Thanks for reporting and all those informations :)

*** This bug has been marked as a duplicate of bug 288675 ***