Bug 348841 - knotify (and kbiff) starts jackd with the flag -l only and creates zombies
Summary: knotify (and kbiff) starts jackd with the flag -l only and creates zombies
Status: RESOLVED DOWNSTREAM
Alias: None
Product: kdelibs
Classification: Frameworks and Libraries
Component: knotify (show other bugs)
Version: 4.14.0
Platform: FreeBSD Ports FreeBSD
: NOR normal
Target Milestone: ---
Assignee: Olivier Goffart
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-06-07 14:59 UTC by Matthias Apitz
Modified: 2015-06-25 15:56 UTC (History)
5 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Matthias Apitz 2015-06-07 14:59:58 UTC
on KDE4 startup knotify call "/usr/local/bin/jackd -l" which is meaningless because it only prints the default dir of jackd and does not start any service; the same is true for kbiff when mail arrives in the INBOX; to nail this down (or at least to proof it), I substituted /usr/local/bin/jackd with the following shell script:

#!/bin/sh                                                                                                                              
printf "new jackd call:\n" >> /tmp/jackd                                                                                               
echo $0 $* >> /tmp/jackd                                                                                                               
/usr/local/bin/jackd.bin $* &                                                                                                          
echo $! >> /tmp/jackd                                                                                                                  
                                                                                                                                       
and on KDE start or when a mail arrives the file /tmp/jackd shows:                                                                                     
                                                                                                                                       
                                                                                                                                       
new jackd call:                                                                                                                        
/usr/local/bin/jackd -l                                                                                                                
39343                                                                                                                                  
new jackd call:                                                                                                                        
/usr/local/bin/jackd -l                                                                                                                
39345                                                                                                                                  
new jackd call:                                                                                                                        
/usr/local/bin/jackd -l                                                                                                                
39347                                                                                                                                  
                                                                                                                                       
the PIDs of the zombies are always -1:                                                                                                 
                                                                                                                                       
39342  2  Z      0:00,01 <defunct>                                                                                                     
39344  2  Z      0:00,01 <defunct>                                                                                                     
39346  2  Z      0:00,01 <defunct>   

i.e. belong to the caller knotify or kbiff.

Reproducible: Always

Steps to Reproduce:
see above



this is with KDE 4.14.2 on FreeBSD 11-CURRENT
Comment 1 Christoph Feck 2015-06-10 00:14:40 UTC
Please ask in a forum of your distribution why jackd is started. KDE does not know anything about jackd.
Comment 2 Matthias Apitz 2015-06-10 05:29:01 UTC
it is not true the kdelibs does not know anything about jackd:
# find kde-runtime-4.14.2 -exec fgrep -H -C3 jackd {} \;
kde-runtime-4.14.2/phonon/kded-module/phononserver.cpp-    case PS::DeviceAccess::OssDriver:
kde-runtime-4.14.2/phonon/kded-module/phononserver.cpp-        return "oss";
kde-runtime-4.14.2/phonon/kded-module/phononserver.cpp-    case PS::DeviceAccess::JackdDriver:
kde-runtime-4.14.2/phonon/kded-module/phononserver.cpp:        return "jackd";
kde-runtime-4.14.2/phonon/kded-module/phononserver.cpp-    case PS::DeviceAccess::Video4LinuxDriver:
kde-runtime-4.14.2/phonon/kded-module/phononserver.cpp-        return "v4l2";
kde-runtime-4.14.2/phonon/kded-module/phononserver.cpp-    case PS::DeviceAccess::InvalidDriver:
Comment 3 Martin Klapetek 2015-06-10 08:56:59 UTC
> it is not true the kdelibs does not know anything about jackd

You did notice that you're grepping in kde-runtime and *not* in kdelibs, right? ;) I'll save you some time and tell you that grepping kdelibs indeed comes out empty.

Nevertheless, just because there is one single string found in your grep does not actually say that it's being started or anything.

It is entirely possible that your pulseaudio and/or alsa and/or gstreamer is configured to use jack. See this http://jackaudio.org/faq/gstreamer_via_jack.html for example and try it in reverse.

 If you don't need jack at all, just install it.

Otherwise yes, you should seek support from your distro, this is a configuration issue.
Comment 4 Martin Klapetek 2015-06-10 08:58:20 UTC
Additionally, run "kcmshell4 kcmnotify" and check Player Settings tab. It may be that you have jackd set as custom command there.