[PlanetCCRMA] /etc/modprobe.d/dist-alsa.conf patch to boot with high-res timer for ALSA seq.

Niels Mayer nielsmayer at gmail.com
Sat May 29 15:01:56 PDT 2010


Per the suggestion of Pedro Lopez-Cabanillas on LAU (
http://www.spinics.net/lists/linux-audio-users/msg69260.html )

> In my opinion, if you run some ALSA sequencer applications with a modern
> Linux/ALSA and your motherboard provides the HPET, the module snd-hrtimer
> should be loaded. It is the alternative to the RTC timer present in older
> machines.

You can apply this patch to standard ALSA config file
/etc/modprobe.d/dist-alsa.conf (module-init-tools) and get the desired
behavior.

///////   ///////   ///////   ///////   ///////   ///////   ///////

coggie-72-~> diff -c /etc/modprobe.d/dist-alsa.conf.~1~
/etc/modprobe.d/dist-alsa.conf
*** /etc/modprobe.d/dist-alsa.conf.~1~ 2009-10-20 21:25:39.000000000 -0700
--- /etc/modprobe.d/dist-alsa.conf 2010-05-29 14:34:42.000000000 -0700
***************
*** 6,9 ****
  #
  # Remove the following line if you don't want the sequencer.

! install snd-pcm /sbin/modprobe --ignore-install snd-pcm &&
/sbin/modprobe snd-seq
--- 6,33 ----
  #
  # Remove the following line if you don't want the sequencer.

! install snd-pcm /sbin/modprobe --ignore-install snd-pcm &&
/sbin/modprobe snd-hrtimer && /sbin/modprobe snd-seq
!
! ##NOTE 5/29/10: above, NPM added "&& /sbin/modprobe snd-hrtimer"
! ## (see https://bugzilla.redhat.com/show_bug.cgi?id=597354
! ##  and http://www.spinics.net/lists/linux-audio-users/msg69242.html
! ##  "Linux-Audio-User: Re: Is ALSA using hrtimer?" )
! ## before doing this, you get
! ## ROOT-coggie-60-~> cat /proc/asound/seq/timer
! ## Timer for queue 0 : system timer
! ##   Period time : 0.001000000
! ##   Skew : 65536 / 65536
! ## ROOT-coggie-61-~> cat /proc/asound/timers
! ## G0: system timer : 1000.000us (10000000 ticks)
! ##   Client sequencer queue 0 : running
! ## ...
! ## Afterwards (also need to start/stop jackd or otherwise reset snd-seq).
! ## ROOT-coggie-66-~> cat /proc/asound/seq/timer
! ## Timer for queue 0 : HR timer
! ##   Period time : 0.001000000
! ##   Skew : 65536 / 65536
! ## ROOT-coggie-67-~> cat /proc/asound/timers
! ## G0: system timer : 1000.000us (10000000 ticks)
! ## G3: HR timer : 0.001us (1000000000 ticks)
! ##   Client sequencer queue 0 : running
! ## ...

///////   ///////   ///////   ///////   ///////   ///////   ///////

-- Niels
http://nielsmayer.com

PS: Isn't the current behavior, using the archaic system timer, even
on modern systems, a Fedora "bug"?

PPS: Or is enabling the HRtimer something better handled by a
PlanetCCRMA post-configuration script/package (kinda like 'firstboot'
after installing a new kernel) alongside settings in
/etc/security/limits.conf etc ?



More information about the PlanetCCRMA mailing list