[Jack-Devel] Zombified process without any CPU load

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[Jack-Devel] Zombified process without any CPU load

yuri@rawbw.com
I am getting this error "Jack Error:  zombified - calling shutdown
handler" with default timeout of 500ms. Increasing timeout to 4000ms
helps, but it isn't clear why 500ms isn't sufficient.

Jack thread only connects with the actual client code through the
process() callback. I timed process(), it never takes longer than 5ms.

Given that the system has very low CPU load, why does the process become
zombified? And why other apps, like Ardour, don't suffer from this?


Client: newly written Jack backend for qTox.

jack-0.125.0 on FreeBSD 11.


Yuri

_______________________________________________
Jack-Devel mailing list
[hidden email]
http://lists.jackaudio.org/listinfo.cgi/jack-devel-jackaudio.org
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Zombified process without any CPU load

Hermann Meyer


Am 28.07.2017 um 04:58 schrieb Yuri:
> Jack thread only connects with the actual client code through the
> process() callback.

You need at least connect a shutdown callback

void
jack_shutdown (void *arg)
{
     // clean up your client
     exit (1);
}

     /* tell the JACK server to call `jack_shutdown()' if
        it ever shuts down, either entirely, or if it
        just decides to stop calling us.
     */

jack_on_shutdown (client, jack_shutdown, 0);
_______________________________________________
Jack-Devel mailing list
[hidden email]
http://lists.jackaudio.org/listinfo.cgi/jack-devel-jackaudio.org
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Zombified process without any CPU load

yuri@rawbw.com
On 07/27/2017 22:43, Hermann Meyer wrote:
Jack thread only connects with the actual client code through the process() callback.

You need at least connect a shutdown callback

void
jack_shutdown (void *arg)
{
    // clean up your client
    exit (1);
}



I do have shutdown callback. Instead of exit(1), I schedule a timer event and connect again.

The major problem is why does the process get zombified in the first place.


Yuri


_______________________________________________
Jack-Devel mailing list
[hidden email]
http://lists.jackaudio.org/listinfo.cgi/jack-devel-jackaudio.org
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Zombified process without any CPU load

Hermann Meyer


Am 28.07.2017 um 08:10 schrieb Yuri:

> On 07/27/2017 22:43, Hermann Meyer wrote:
>>> Jack thread only connects with the actual client code through the
>>> process() callback.
>>
>> You need at least connect a shutdown callback
>>
>> void
>> jack_shutdown (void *arg)
>> {
>>     // clean up your client
>>     exit (1);
>> }
>
>
>
> I do have shutdown callback. Instead of exit(1), I schedule a timer
> event and connect again.
>
> The major problem is why does the process get zombified in the first
> place.
>
>
> Yuri
>


Not unlikely a error in your code, but, without seeing it, hard to say. ;-)

Maybe, for example you refer somewhere to your jack_client_t* pointer
after shutdown, which isn't valid any more then, . . .
_______________________________________________
Jack-Devel mailing list
[hidden email]
http://lists.jackaudio.org/listinfo.cgi/jack-devel-jackaudio.org
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Zombified process without any CPU load

yuri@rawbw.com
On 07/27/2017 23:27, Hermann Meyer wrote:
>
> Not unlikely a error in your code, but, without seeing it, hard to
> say. ;-)
>
> Maybe, for example you refer somewhere to your jack_client_t* pointer
> after shutdown, which isn't valid any more then, . . .


But I am talking about the zombification problem that happens before
shutdown.


Yuri

_______________________________________________
Jack-Devel mailing list
[hidden email]
http://lists.jackaudio.org/listinfo.cgi/jack-devel-jackaudio.org
Loading...