Bug 91497

Summary: Knotify crash after applying sound system configuration change
Product: [Unmaintained] arts Reporter: Sabourin Gilles <sabourin.gilles>
Component: knotifyAssignee: Stefan Westerfeld <stefan>
Status: RESOLVED FIXED    
Severity: crash CC: amisaka, danix, giovanni, hans.ullrich, nhrosen, olezhko234, pentagram.pentagram, rdieter, scain, thomasprincester, wolvverine, yann
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: openSUSE   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:
Attachments: Proposed patch
New patch

Description Sabourin Gilles 2004-10-17 08:51:09 UTC
Version:            (using KDE KDE 3.3.1)
Installed from:    SuSE RPMs
OS:                Linux

I updated to latest KDE 3.3.1-3 on SuSe 9.1 Pro. I am a skype and TeamSpeak user (chat clients) and I have usually to enable full duplex configuration of arts when using it.

Now, whenever I apply any change to sound system configuration, I get a Knotify crash with the informations below :

Using host libthread_db library "/lib/tls/libthread_db.so.1".
[Thread debugging using libthread_db enabled]
[New Thread 1095501024 (LWP 7446)]
[KCrash handler]
#7  0x41cb5956 in std::operator==<unsigned long, unsigned long&, unsigned long*> () from /opt/kde3/lib/libmcop.so.1
#8  0x41cabec7 in std::deque<unsigned long, std::allocator<unsigned long> >::empty () from /opt/kde3/lib/libmcop.so.1
#9  0x41c9ff9d in std::stack<unsigned long, std::deque<unsigned long, std::allocator<unsigned long> > >::empty () from /opt/kde3/lib/libmcop.so.1
#10 0x41c94e6f in Arts::Pool<Arts::Buffer>::allocSlot ()
   from /opt/kde3/lib/libmcop.so.1
#11 0x41c73861 in Arts::Dispatcher::createRequest ()
   from /opt/kde3/lib/libmcop.so.1
#12 0x41c7b780 in Arts::Object_stub::_lookupMethod ()
   from /opt/kde3/lib/libmcop.so.1
#13 0x41c7b948 in Arts::Object_stub::_lookupMethodFast ()
   from /opt/kde3/lib/libmcop.so.1
#14 0xbfffe600 in ?? ()
#15 0xbfffe660 in ?? ()
#16 0x08185880 in ?? ()
#17 0xbfffe660 in ?? ()
#18 0xbfffe650 in ?? ()
#19 0xbfffe670 in ?? ()
#20 0x0000004d in ?? ()
#21 0x41ce8c00 in vtable for Arts::MethodDef () from /opt/kde3/lib/libmcop.so.1
#22 0x0806f3d4 in ?? ()
#23 0x08163454 in ?? ()
#24 0x00000002 in ?? ()
#25 0x00000000 in ?? ()
#26 0x00000000 in ?? ()
#27 0x00000000 in ?? ()
#28 0x00000000 in ?? ()
#29 0x00000000 in ?? ()
#30 0x00000000 in ?? ()
#31 0xbfffe648 in ?? ()
#32 0x40e81910 in QRealMutexPrivate::unlock ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
Comment 1 Paul Sprakes 2004-10-18 14:53:17 UTC
Me too. I also get a knotify crash everytime i end my kde session
Comment 2 Daniel Bloemendal 2004-10-19 04:20:06 UTC
I can also reproduce this bug. It takes place in the same situation, when applying a change to the sound configuration.
Comment 3 Paul Sprakes 2004-10-19 11:43:25 UTC
*** Bug 91588 has been marked as a duplicate of this bug. ***
Comment 4 Martin Koller 2004-10-28 10:48:30 UTC
I have also knotify crashing often, especially when logging out of KDE.
Here is a bt:
Using host libthread_db library "/lib/libthread_db.so.1".
[Thread debugging using libthread_db enabled]
[New Thread 16384 (LWP 10189)]
[KCrash handler]
#4  Arts::Dispatcher::createRequest (this=0x0, requestID=@0xbffff0b8, 
    objectID=277, methodID=0) at stl_deque.h:212
#5  0x41c8f7c6 in Arts::Object_stub::_lookupMethod () at stl_iterator.h:726
#6  0x41c8f957 in Arts::Object_stub::_lookupMethodFast ()
    at stl_iterator.h:726
#7  0x41bb740d in Arts::SynthModule_stub::stop ()
   from /opt/kde3/lib/libartsflow_idl.so.1
#8  0x41bd9d91 in virtual thunk to Arts::SynthModule_stub::stop() ()
   from /opt/kde3/lib/libartsflow_idl.so.1
#9  0x41761af0 in KAudioManagerPlay::stop (this=0x4) at artsflow.h:2229
#10 0x4176139e in ~KAudioManagerPlay (this=0x8154100)
    at kaudiomanagerplay.cpp:36
#11 0x4090e509 in ~KNotify (this=0xbffff320) at knotify.cpp:251
#12 0x4090d897 in kdemain (argc=1, argv=0x80a8c88) at knotify.cpp:212
#13 0x0804d09d in launch (argc=1, _name=0x80a900c "knotify", 
    args=0x80a9014 "\001", cwd=0x0, envc=1, envs=0x0, reset_env=false, 
    tty=0x0, avoid_loops=false, startup_id_str=0x80502bd "0") at kinit.cpp:610
#14 0x0804e029 in handle_launcher_request (sock=8) at kinit.cpp:1174
#15 0x0804e5a3 in handle_requests (waitForPid=0) at kinit.cpp:1375
#16 0x0804f4bf in main (argc=2, argv=0xbffffaa4, envp=0xbffffab0)
    at kinit.cpp:1828
Comment 5 Tommi Tervo 2004-10-28 10:55:10 UTC
More debug info:

#3  0xb6206c03 in operator==<long unsigned int, long unsigned int&, long unsigned int*> (__x=@0x1c, __y=@0xc) at stl_deque.h:213
#4  0xb61feea6 in std::deque<unsigned long, std::allocator<unsigned long> >::empty (this=0x4) at stl_deque.h:907
#5  0xb61f4a3f in std::stack<unsigned long, std::deque<unsigned long, std::allocator<unsigned long> > >::empty (this=0x4) at stl_stack.h:145
#6  0xb61ebaa9 in Arts::Pool<Arts::Buffer>::allocSlot (this=0x4) at pool.h:63
#7  0xb61ce39e in Arts::Dispatcher::createRequest (this=0x0,
    requestID=@0xbffff2e0, objectID=60, methodID=0) at dispatcher.cc:489
#8  0xb61d60da in Arts::Object_stub::_lookupMethod (this=0x8191a48,
    methodDef=@0xbffff310) at object.cc:1285
#9  0xb61d63ad in Arts::Object_stub::_lookupMethodFast (this=0x8191a48,
    method=0xb622e2a0 "method:0000000f5f72656c6561736552656d6f74650000000005766f69640000000002", '0' <repeats 16 times>) at object.cc:1315
#10 0xb61d68e9 in Arts::Object_stub::_releaseRemote (this=0x8191a48)
    at object.cc:1388
#11 0xb61d588c in Arts::Object_stub::_release (this=0x8191a48)
    at object.cc:1158
#12 0xb688832f in Arts::Object::Pool::Dec (this=0x818c288) at reference.h:117
#13 0xb68883c7 in ~Object (this=0x818a430) at reference.h:146
#14 0xb6886d39 in ~Synth_AMAN_PLAY (this=0x818a430) at artsflow.h:2249
#15 0xb685f66f in ~PrivateData (this=0x818a430) at kaudiomanagerplay.cpp:37
#16 0xb685a1a6 in ~KAudioManagerPlay (this=0x818a388)
    at kaudiomanagerplay.cpp:37
#17 0xb68807ef in ~KNotify (this=0xbffff4c0) at knotify.cpp:246
#18 0xb6880158 in kdemain (argc=1, argv=0x80eda20) at knotify.cpp:210
#19 0x0804e2c5 in launch (argc=1, _name=0x80edfcc "knotify",
    args=0x80edfd4 "\001", cwd=0x0, envc=1, envs=0x80edfe5 "",
    reset_env=false, tty=0x0, avoid_loops=false, startup_id_str=0x8052f87 "0")
    at kinit.cpp:599
#20 0x0804f5d8 in handle_launcher_request (sock=8) at kinit.cpp:1163
#21 0x0804fccb in handle_requests (waitForPid=0) at kinit.cpp:1364
#22 0x08051335 in main (argc=3, argv=0xbffffd14, envp=0xbffffd24)
    at kinit.cpp:1817
Comment 6 Tommi Tervo 2004-11-01 10:58:28 UTC
*** Bug 92335 has been marked as a duplicate of this bug. ***
Comment 7 Tommi Tervo 2004-11-03 15:55:53 UTC
*** Bug 92633 has been marked as a duplicate of this bug. ***
Comment 8 Tommi Tervo 2004-11-08 11:50:41 UTC
*** Bug 92900 has been marked as a duplicate of this bug. ***
Comment 9 Paul Sprakes 2004-11-14 00:28:47 UTC
It seems to have cleared up for me with recent updates. Can anyone confirm?
Comment 10 Patrizio Bruno 2004-11-14 23:20:04 UTC
nope I'm using kde3.3 debian packages, so I still haven't any recent update.
Comment 11 Tommi Tervo 2004-12-01 14:02:54 UTC
*** Bug 94214 has been marked as a duplicate of this bug. ***
Comment 12 Christian Nolte 2004-12-06 13:29:09 UTC
Same problem here. I am using KDE 3.3.1-2.2 Red-Hat (Fedora Core3).
The following report occurs when disabling artsd completely:

-----------------
Using host libthread_db library "/lib/tls/libthread_db.so.1".
[Thread debugging using libthread_db enabled]
[New Thread -151128384 (LWP 3750)]
[KCrash handler]
#4  0x05f0d365 in Arts::Dispatcher::createRequest ()
   from /usr/lib/libmcop.so.1
#5  0x05f1123a in Arts::Object_stub::_lookupMethod ()
   from /usr/lib/libmcop.so.1
#6  0x05f12f81 in Arts::Object_stub::_lookupMethodFast ()
   from /usr/lib/libmcop.so.1
#7  0xfef216a0 in ?? ()
#8  0xfef21710 in ?? ()
#9  0x002c82a0 in ?? () from /usr/lib/libstdc++.so.6
#10 0xfef216d0 in ?? ()
#11 0xfef21720 in ?? ()
#12 0xfef21698 in ?? ()
#13 0x00bc9800 in __malloc_initialize_hook () from /lib/tls/libc.so.6
#14 0xfef216a0 in ?? ()
#15 0x00b05e21 in _int_free () from /lib/tls/libc.so.6
Comment 13 Allan Sandfeld 2004-12-06 13:49:02 UTC
Created attachment 8552 [details]
Proposed patch

I cannot reproduce the bug, but try and see if applying this patch in arts/mcop
helps.
Comment 14 Michael Nottebrock 2004-12-06 15:49:45 UTC
That fixes it for me.
Comment 15 Condor 2004-12-06 16:56:50 UTC
Does not fiexs for me, still crash.
Comment 16 Sabourin Gilles 2004-12-06 20:21:16 UTC
patched arts-1.3.1-0. Still have crash :

Using host libthread_db library "/lib/tls/libthread_db.so.1".
[Thread debugging using libthread_db enabled]
[New Thread 1095703040 (LWP 29489)]
[KCrash handler]
#7  0x41c36a70 in Arts::Dispatcher::createRequest ()
   from /opt/kde3/lib/libmcop.so.1
#8  0x41c36d34 in Arts::Object_stub::_lookupMethod ()
   from /opt/kde3/lib/libmcop.so.1
#9  0x41c3accb in Arts::Object_stub::_lookupMethodFast ()
   from /opt/kde3/lib/libmcop.so.1
#10 0x41c3b0d9 in Arts::Object_stub::_releaseRemote ()
   from /opt/kde3/lib/libmcop.so.1
#11 0x41c27f29 in Arts::Object_stub::_release ()
   from /opt/kde3/lib/libmcop.so.1
#12 0x4170c694 in KAudioManagerPlay::~KAudioManagerPlay ()
   from /opt/kde3/lib/libartskde.so.1
#13 0x40024698 in KNotify::~KNotify () from /opt/kde3/lib/kde3/knotify.so
#14 0x40025402 in kdemain () from /opt/kde3/lib/kde3/knotify.so
#15 0x0804e7a6 in launch ()
#16 0x0804fbdf in main ()
Comment 17 Michael Nottebrock 2004-12-07 06:31:50 UTC
Correction: The patch doesn't really work for me either. What happens is that after one crash, knotify puts Use Arts=false into knotifyrc. That stops the crashes, but also mutes system notifications (this is a bug/misfeature of knotify that's been annoying me for some time now).
Comment 18 Allan Sandfeld 2004-12-07 23:03:26 UTC
Created attachment 8571 [details]
New patch

Trying a different angle. It looks like the problem arrises because the
soundserver is deleted before the knotify object is, this then leads to
unpredictable behaviour. 

Here I've made knotify an object and now deletes it before the server. I still
need feedback because I cannot reproduce the crash.
Comment 19 Christian Nolte 2004-12-07 23:52:15 UTC
I know that this won't be of help but as i have stated to have the same problem, it is now gone... Without applying a patch at all.

First I thought it could have something to do with changing artsd-settings during playback with xmms or something. The worst thing was a complete system-lock when changing the sound output method from default to alsa, then setting full-duplex and quality to 16 Bit and then applying the whole thing.

So it seems that this bug is not reproduceable, perhaps it is a sound-driver issue?

The only thing what I had changed was setting artswrapper to suid root... But I don't think that this solves this problem.
Comment 20 Michael Nottebrock 2004-12-08 01:10:04 UTC
This seems to work, but it triggers a new problem: 

[lofi@kiste]:0:~ > cat .kde/share/config/knotifyrc
[StartProgress]
Arts Init=true
KNotify Init=true
Use Arts=true

[ Now I go into the sound system control, uncheck "Enable the sound system" and apply - no crash ]

[lofi@kiste]:0:~ > cat .kde/share/config/knotifyrc
[StartProgress]
Arts Init=false
KNotify Init=true
Use Arts=false

[ Now I check "Enable the sound system again and apply again ]

[lofi@kiste]:0:~ > cat .kde/share/config/knotifyrc
[StartProgress]
Arts Init=false
KNotify Init=true
Use Arts=false

[ When I quit KDE, there is no exit notification and upon next start there is 
no startup sound - or any system notification ]
Comment 21 Condor 2004-12-08 16:36:23 UTC
This patch fix problem, but no sound when start kde and when press Test MIDI or Test Sound no sound too.
Comment 22 Sabourin Gilles 2004-12-10 11:19:32 UTC
I have never heard any startup sound with KDE. I started to use SuSe 9.1 since may 2004. Same thing with SuSe 9.2.
Comment 23 Tobias Powalowski 2004-12-14 19:39:30 UTC
the patch fixed the problem with the gui thanks :)
Comment 24 Sabourin Gilles 2004-12-15 06:02:47 UTC
I have upgraded from KDE 3.3.1-3 to KDE 3.3.2 and I have noticed - not immediatly - no more knotify crash when applying a new sound configuration,
but also I have no more sound system notification => see bugs 94918
Comment 25 Allan Sandfeld 2004-12-15 12:02:50 UTC
*** Bug 94485 has been marked as a duplicate of this bug. ***
Comment 26 Allan Sandfeld 2004-12-15 12:04:28 UTC
CVS commit by carewolf: 

Don't crash when being restarted
BUG: 91497


  M +3 -2      knotify.cpp   1.95


--- kdelibs/arts/knotify/knotify.cpp  #1.94:1.95
@@ -89,5 +89,5 @@ public:
 // Yes, it's ugly to put this here, but this facilitates the cautious startup
 // procedure.
-KArtsServer *soundServer;
+KArtsServer *soundServer = 0;
 
 extern "C"{
@@ -204,5 +204,5 @@ KDE_EXPORT int kdemain(int argc, char **
 
     // start notify service
-    KNotify notify( useArts );
+    KNotify *notify = new KNotify( useArts );
 
     config.writeEntry( "KNotify Init", true );
@@ -214,4 +214,5 @@ KDE_EXPORT int kdemain(int argc, char **
 
     int ret = app.exec();
+    delete notify;
     delete soundServer;
     delete dispatcher;


Comment 27 Allan Sandfeld 2004-12-15 20:20:48 UTC
*** Bug 95217 has been marked as a duplicate of this bug. ***
Comment 28 Allan Sandfeld 2004-12-16 11:39:08 UTC
*** Bug 95254 has been marked as a duplicate of this bug. ***
Comment 29 Jacek Jablonski 2005-01-01 11:47:33 UTC
Tell me please, how to apply this patch? I don`t know how to do that?
Comment 30 Jacek Jablonski 2005-01-01 13:51:50 UTC
Hello!!! I am beginner, but I have the same problem. Can you explain me how to make this fragment of patch? What should I do?
RCS file: /home/kde/arts/mcop/object.cc,v
retrieving revision 1.60
diff -u -3 -p -b -r1.60 object.cc
--- object.cc	13 Oct 2003 19:59:41 -0000	1.60
+++ object.cc	6 Dec 2004 12:48:00 -0000
@@ -1282,6 +1282,7 @@
Comment 31 Stefan Gehn 2005-01-01 14:09:33 UTC
cd kdelibs/arts/knotify
patch -p0 < thepatch.patch

Of course you need to recompile kdelibs afterwards.
Comment 32 Tommi Tervo 2005-01-14 12:54:36 UTC
*** Bug 96547 has been marked as a duplicate of this bug. ***
Comment 33 Mike Stoddart 2005-01-21 23:45:07 UTC
I to am getting a crash with 3.3.2 built from source. When I try to apply changes after selecting a sound system audio device, I get the following traceback everytime:

This is on stock Fedora Core 2. I also get this error when KDE starts up, if it's related:

 error: Error while initializing the sound driver

Using host libthread_db library "/lib/tls/libthread_db.so.1".
[Thread debugging using libthread_db enabled]
[New Thread -150445376 (LWP 4240)]
[KCrash handler]
#4  0x016be673 in Arts::Dispatcher::createRequest ()
   from /home/mike/kde3.3.2/lib/libmcop.so.1
#5  0x016ca6fb in Arts::Object_stub::_lookupMethod ()
   from /home/mike/kde3.3.2/lib/libmcop.so.1
#6  0x016ca89a in Arts::Object_stub::_lookupMethodFast ()
   from /home/mike/kde3.3.2/lib/libmcop.so.1
#7  0x016cae31 in Arts::Object_stub::_releaseRemote ()
   from /home/mike/kde3.3.2/lib/libmcop.so.1
#8  0x016c9bc3 in Arts::Object_stub::_release ()
   from /home/mike/kde3.3.2/lib/libmcop.so.1
#9  0x008fb754 in KAudioManagerPlay::~KAudioManagerPlay ()
   from /home/mike/kde3.3.2/lib/libartskde.so.1
#10 0x003711e1 in KNotify::~KNotify ()
   from /home/mike/kde3.3.2/lib/kde3/knotify.so
#11 0x0037047a in kdemain () from /home/mike/kde3.3.2/lib/kde3/knotify.so
#12 0x0804cbba in launch ()
#13 0x0804dfca in handle_launcher_request ()
#14 0x0804e4d1 in handle_requests ()
#15 0x0804f495 in main ()
Comment 34 Tommi Tervo 2005-02-25 10:29:30 UTC
*** Bug 100120 has been marked as a duplicate of this bug. ***
Comment 35 Tommi Tervo 2005-03-29 15:51:22 UTC
*** Bug 102481 has been marked as a duplicate of this bug. ***
Comment 36 Tommi Tervo 2005-04-08 13:23:17 UTC
*** Bug 103476 has been marked as a duplicate of this bug. ***
Comment 37 John Saginario 2005-10-19 16:19:29 UTC
I'm new to all this, how do you apply this patch?