Re: [Jackit-devel] Re: Real-Time Preemption, -RT-2.6.10-rc2-mm3-V0.7.31-19

Jack O'Quin
2004-12-02T17:07:13Z

Florian Schmidt <mista.tapas@gmx.net> writes:

> I suppose instead of catching the signal the user might just monitor the
> syslog. I'm not sure there's printk's triggered by thisalready , but i'm
> sure if not, ingo might add them. So a trivial patch for jackd would
> probably look like this:
>
> --- libjack/client.c.orig 2004-12-02 17:55:04.000000000 +0100
> +++ libjack/client.c 2004-12-02 17:56:23.000000000 +0100
> @@ -1238,6 +1238,9 @@
> if (control->sync_cb)
> jack_call_sync_client (client);
>
> + // enable atomicity check for RP kernels
> + gettimeofday(1,1);
> +
> if (control->process) {
> if (control->process (control->nframes,
> control->process_arg)
> @@ -1247,7 +1250,10 @@
> } else {
> control->state = Finished;
> }
> -
> +
> + // disable atomicity check
> + gettimeofday(0,1);
> +
> if (control->timebase_cb)
> jack_call_timebase_master (client);
>

The sync_cb and timebase_cb callbacks actually need to be RT-safe,
too. ;-)

Is printk() guaranteed not to wait inside the kernel? I am not
familiar with its internal implementation.
--
joq