[PlanetCCRMA] Fwd: jack2

Fernando Lopez-Lezcano nando at ccrma.Stanford.EDU
Mon Apr 19 13:21:23 PDT 2010


On Mon, 2010-04-19 at 12:46 -0700, Niels Mayer wrote:
> I figured out what happened with qjackctl&&jack
> when /etc/security/limits.conf got set like this:
> 
> 
>         ## Automatically appended by jack-audio-connection-kit
>         @jackuser - rtprio 20
>         @jackuser - memlock 4194304
>         ## Automatically appended by jack-audio-connection-kit
>         @pulse-rt - rtprio 20
>         @pulse-rt - nice -20
>         ## Automatically appended by the Planet CCRMA
>         jack-audio-connection-kit
>         * - rtprio 99
>         * - memlock 4194304
>         * - nice -10
> 
> 
> What happened: I didn't notice /etc/security/limits.conf.rpmnew had
> been installed, perhaps in deinstalling F12's
> jack-audio-connection-kit, or from upgrading to CCRMA's. The rpmnew
> removed the "Automatically appended by jack-audio-connection-kit"
> sections; had CCRMA's jack been installed "on top" of the RPMNEW, the
> spurious "rtprio 20" and "nice -20" would never had been there, only
> the the 'Automatically appended by the Planet CCRMA
> jack-audio-connection-kit' section.
> 
> 
> The upshot is that this strange combination of settings would cause
> jack to emit errors like:
> 
> 
>         Cannot use real-time scheduling (RR/60)(1: Operation not
>         permitted)
>         AcquireSelfRealTime error

Yes, I see. That is to be expected as the Planet CCRMA jack's rt
priority is tuned to the realtime kernels and the priority structure of
rtirq (it's a long story). 

The Planet CCRMA jack runs at rt priority 60 instead of 10 (if I
remember correctly) in the Fedora jack. 

This is an unresolved "compatibility" issue between Planet CCRMA vs.
Fedora and/or running the "normal" kernel vs. the "realtime" kernel.
Some discussion and an explanation of the issue is part of this ticket
in Fedora's bugzilla:

  https://bugzilla.redhat.com/show_bug.cgi?id=542288

In the next package for Planet CCRMA's jack I will have the realtime
settings in a different file which is much better and will not get
overwritten by anything else. 

-- Fernando


> And may also be to blame for the lockup problem I experienced on this
> machine, IMHO in conjuction w/ pulseaudio libs locking up, perhaps
> because they were running at "rtprio 20" and "nice -20" vs jack's 60:
> thus my earlier hypothesis....
> 
> 
> ......................................
> 
> 
> Rebooting with a "fixed" /etc/security/limits.conf
>  (with /etc/groups:jackuser set to include the user running jack)
> containing:
> 
> 
>         @jackuser - rtprio 99
>         @jackuser - memlock 4194304
>         @jackuser - nice -10
> 
> 
> Makes jack work correctly, and without error output "Cannot use
> real-time scheduling (RR/60)" in log output (despite the "RT"
> indicator flashing in qjackctl).
> 
> 
> With the above limits.conf, my jack log ends up looking like this:
> 
> 
>         11:38:13.962 JACK is starting...
>         11:38:13.962 /usr/bin/jackd -dalsa -dhw:M66 -r44100 -p256 -n2
>         -Xseq -zs -H -M
>         11:38:13.976 JACK was started with PID=3415.
>         11:38:14.346 ALSA connection change.
>         11:38:14.347 ALSA connection graph change.
>         no message buffer overruns
>         no message buffer overruns
>         jackdmp 1.9.4
>         Copyright 2001-2005 Paul Davis and others.
>         Copyright 2004-2009 Grame.
>         jackdmp comes with ABSOLUTELY NO WARRANTY
>         This is free software, and you are welcome to redistribute it
>         under certain conditions; see the file COPYING for details
>         JACK server starting in realtime mode with priority 60
>         audio_reservation_init
>         Acquire audio card Audio1
>         creating alsa driver ... hw:M66|hw:M66|256|2|44100|0|0|hwmon|
>         hwmeter|-|32bit
>         Using ALSA driver ICE1712 running on card 1 - M Audio Delta 66
>         at 0xec00, irq 19
>         configuring for 44100Hz, period = 256 frames (5.8 ms), buffer
>         = 2 periods
>         ALSA: final selected sample format for capture: 32bit integer
>         little-endian
>         ALSA: use 2 periods for capture
>         ALSA: final selected sample format for playback: 32bit integer
>         little-endian
>         ALSA: use 2 periods for playback
>         11:38:15.236 ALSA connection graph change.
>         port created: Midi-Through:midi/playback_1
>         port created: Midi-Through:midi/capture_1
>         port created: MT4:midi/playback_1
>         port created: MT4:midi/capture_1
>         port created: MT4:midi/playback_2
>         port created: MT4:midi/capture_2
>         port created: MT4:midi/playback_3
>         port created: MT4:midi/capture_3
>         port created: MT4:midi/capture_4
>         port created: MT4:midi/capture_5
>         port created: DJ-Console-(WE):midi/playback_1
>         port created: DJ-Console-(WE):midi/capture_1
> 
> 
> ...........................
> 
> 
> -- Niels 
> http://nielsmayer.com
> _______________________________________________




More information about the PlanetCCRMA mailing list