[LAU] ALSA and RME Raydat troubleshooting

Guido Aulisi guido.aulisi at gmail.com
Tue Oct 21 17:42:16 UTC 2014


Il giorno mar, 21/10/2014 alle 18.15 +0200, Ralf Mardorf ha scritto:
> On Tue, 2014-10-21 at 17:52 +0200, Guido Aulisi wrote:
> > Threadirq works with vanilla kernels.
> > In the kernel docs:
> > 
> > threadirqs      [KNL]
> >  Force threading of all interrupt handlers except those
> >  marked explicitly IRQF_NO_THREAD.
> 
> But does it cause a noticeable improvement? Since you're using it the
> answer likely is, that it does ;). I'll test it :).
> 
Yes it does improve... of course you have to assign priorities and
rtirq does that for you. This is an example of process list for the
driver:

root 458 2 458 1 FF  109 16:24 ?        00:00:36 [irq/18-snd_hdsp]

> > It's not an RT kernel
> 
> Yes, but there are different increments of preemption available,
> depending on the settings when you compile a vanilla kernel ...or I'm
> mistaken? Are those settings only available for rt patched kernels?
> 
> [rocketmouse at archlinux ~]$ uname -r
> 3.16.4-1-ARCH
> [rocketmouse at archlinux ~]$ zgrep PREE /proc/config.gz
> CONFIG_TREE_PREEMPT_RCU=y
> CONFIG_PREEMPT_RCU=y
> CONFIG_PREEMPT_NOTIFIERS=y
> # CONFIG_PREEMPT_NONE is not set
> # CONFIG_PREEMPT_VOLUNTARY is not set
> CONFIG_PREEMPT=y
> CONFIG_PREEMPT_COUNT=y
> # CONFIG_DEBUG_PREEMPT is not set
> # CONFIG_PREEMPT_TRACER is not set
> [rocketmouse at archlinux ~]$ grep PREE /usr/src/linux-3.10.47-rt50-1-rt-lts/.config
> CONFIG_TREE_PREEMPT_RCU=y
> CONFIG_PREEMPT_RCU=y
> CONFIG_PREEMPT_NOTIFIERS=y
> CONFIG_PREEMPT=y
> CONFIG_PREEMPT_RT_BASE=y
> CONFIG_HAVE_PREEMPT_LAZY=y
> CONFIG_PREEMPT_LAZY=y
> # CONFIG_PREEMPT_NONE is not set
> # CONFIG_PREEMPT_VOLUNTARY is not set
> # CONFIG_PREEMPT__LL is not set
> # CONFIG_PREEMPT_RTB is not set
> CONFIG_PREEMPT_RT_FULL=y
> CONFIG_PREEMPT_COUNT=y
> # CONFIG_DEBUG_PREEMPT is not set
> # CONFIG_PREEMPT_TRACER is not set
> 
> Ok, full preempt seems to need the rt patch.
> Hm?
> http://stackoverflow.com/questions/21997122/linux-kernel-preemption-levels
> 
> _______________________________________________
> Linux-audio-user mailing list
> Linux-audio-user at lists.linuxaudio.org
> http://lists.linuxaudio.org/listinfo/linux-audio-user

These are the settings of my kernel:
# CONFIG_PREEMPT_RCU is not set
CONFIG_PREEMPT_NOTIFIERS=y
# CONFIG_PREEMPT_NONE is not set
CONFIG_PREEMPT_VOLUNTARY=y
# CONFIG_PREEMPT is not set

IMHO you don't need an RT kernel if you don't make massive use of soft
synths, because you can increase jack buffering and monitor using RME
internal mixer. I occasionally only use setBfree (I have some xruns, but
they didn't turn in some click noise), Zynaddsubfx, phasex. All other
sources are external.

Ciao
Guido



More information about the Linux-audio-user mailing list