Re: [linux-audio-dev] ieee1394 deadlock on RT kernels

From: Lee Revell <rlrevell@email-addr-hidden-job.com>
Date: Mon Jun 26 2006 - 02:11:57 EEST

On Mon, 2006-06-26 at 01:08 +0200, Pieter Palmers wrote:
> Hi,
>
> We are experiencing 'soft' deadlocks when running our code (Freebob,
> i.e. userspace lib for firewire audio) on RT kernels. After a few
> seconds, I get a kernel panic message that signals a soft lockup.
>

Can we see the kernel panic message? ;-)

Lee

> The problems occur when an ISO stream (receive and/or transmit) is shut
> down in a SCHED_FIFO thread. More precisely when running the freebob
> jackd backend in real-time mode. And even more precise: they only seem
> to occur when jackd is shut down. There are no problems when jackd is
> run without RT scheduling.
>
> I havent been able to reproduce this with other test programs that are
> shutting down streams in a SCHED_FIFO thread.
>
> printk() debugging point to the tasklet_kill() call in
> ohci1349_unregister_iso_tasklet (drivers/ieee1394/ohci1394.c), that
> doesn't seem to return. For experiment, i've put a tasklet_disable
> before the tasklet_kill, and that causes the soft lockup to be due to
> the tasklet_disable.
>
> I would like to ask if anyone has a clue why this is happening. The only
> thing I can come up with is that jackd is stopped by a CTRL-C, and that
> the stream shutdown happens in signal handler context, which somehow
> interacts with the tasklet_kill. But I don't have the time now to dig
> into this, so for a change I ask for advice early instead of first
> banging my head against the wall for some days :).
>
> Thx,
>
> Pieter Palmers
>
>
Received on Mon Jun 26 04:15:03 2006

This archive was generated by hypermail 2.1.8 : Mon Jun 26 2006 - 04:15:03 EEST