|
From: Stefan R. <st...@s5...> - 2011-04-18 20:21:05
|
On Apr 18 Luis Pablo Gasparotto wrote: > The strange thing is I'm able to do it with an EMU 0404 USB (which is > supposed to be more prone to xruns than a firewire interface) with 0 > xruns. The DMA from and to the USB device is entirely managed in the kernel. Linux FireWire sound drivers (FFADO) on the other hand manage a good deal of the DMAs by means of userspace threads. These threads depend on being run when its time for them, but there is no guarantee for that. There is no such guarantee for in-kernel threads either, not even for soft-IRQs/ kernel tasklets, but chances especially of soft-IRQs/ tasklets are better than those of userspace threads for the time being. > I get xruns in both 2 distros (Mandriva and > Fedora) so I guess it's an IRQ issue but I'm unable to follow this guide: > http://subversion.ffado.org/wiki/IrqPriorities Threaded IRQ handlers which can be prioritized are a feature of the -rt kernel patch. The other kernels don't have this feature. Starting with kernel 2.6.39, threaded IRQ handlers can optionally be enabled in the stock kernel too. I don't know though whether the chrt command has any effect on 2.6.39 IRQ handler threads. > Things get better (but not perfect) if I use the CCRMA RT kernel but I should be able > to do it with the regular kernel. Why do you think so? Linux is not a realtime kernel. PC hardware is not designed for low-latency realtime applications either. The FireWire bus is designed for it, but whether generic consumer-grade hardware lives up to it is another matter. However, either a kernel with the -rt patch (which still doesn't make Linux a realtime kernel in a stricter sense but helps) or a newer kernel (newer than the 2.6.35 of F 14 or 2.6.33 (?) of Mdv 2010.2) may work better for you. I currently run mainline 2.6.38.2 here. It seems I never get xruns with moderately sized buffers and with Timemachine running as the only jackd client --- not actually writing to disk, just sitting there listening and drawing its level meters. I do get occasional xruns when audacious2 plays an internet radio stream through jackd... -- Stefan Richter -=====-==-== -=-- =--=- http://arcgraph.de/sr/ |