[Nottingham] Trouble compiling kernel on suse

Martin martin at ml1.co.uk
Sun Aug 8 21:40:57 UTC 2010

On 08/08/10 16:29, Graham Dicker wrote:
> On Sunday 08 August 2010 14:25:27 Martin wrote:
>> Mmmm... Best check that you have actually got installed all that you
>> need to have installed.
> I googled for how to build the kernel various places but I have so far found 
> none with an exhaustive list of prerequisites. I don't know how to check in 
> the absence of a prerequisite-checking target in the Makefile.

Check that you've got Gnu make and autoconf installed and then run them
from a terminal window. Watch for any errors or for anything listed as
not there.

I'll no doubt be recompiling a Gentoo kernel next week. You're welcome
to compare the output if you wish... Might have an old listing if you're

> Rosegarden complains that my timer resolution is too low. The current kernel 
> was compiled with a 250 Hz resolution and I am trying to compile the kernel to 
> provide something higher maybe 1000 Hz.


What does "System timer resolution is too low" mean?

If you see this message in an error dialog when Rosegarden starts up,
then you are probably using a Linux kernel that doesn't offer
sufficiently high-resolution system timers for MIDI use.

Rosegarden uses ALSA sequencer queue scheduling (inside the Linux
kernel) for its MIDI output. The sequencer queue can use a variety of
timing sources, of which the default is the kernel system timer. The
kernel system timer was 1000 Hz in Linux 2.6 kernels up to 2.6.12, but
as of 2.6.13 it's now 250 Hz in mainline kernels. This is not good
enough for good MIDI timing.

Your options are:

1. Switch the sequencer to use a different timing source (Settings →
Configure Rosegarden… → MIDI → Sequencer timing source). The best one in
theory is the RTC timer, which is only available if you have
snd-rtctimer loaded, but unfortunately that has a habit of totally
locking some systems running real-time kernels. Meanwhile, the PCM
timers only work if the JACK audio server is running, and suffer jitter
corresponding to the JACK buffer size.

2. Recompile your kernel with system timer set to 1000 Hz. Sadly there's
no way to change this without a recompile. It's the best solution though.

3. Switch to a different Linux distribution that provides a kernel more
appropriate for multimedia use.

4. Put up with the poorer timing of a 250 Hz timer (if you want to get
rid of the warning while continuing to use this timer, set the timer
source to “system timer” rather than ”(auto)”).

Hopefully future versions of Rosegarden and/or the Linux kernel will
provide better ways to solve this problem.

If you don't want to recompile your kernel and are running (K)Ubuntu,
you can choose a lowlatency kernel from the repository (search for it
with synaptic or your favorite tool). Install the new kernel and reboot.
This will solve the problem and remove the lag.

You could check the SUSE repositories to see if they already have a
1000Hz system timer or perhaps even a "Multimedia" or "Real Time" kernel
version that you can install.

You could check to see if there are any alternative timing sources that
Rosegarden can use. Is there a MIDI timing signal even?

Or, it's a case of roll-your-own!

Hope that helps a little.

Let us know how you get on,


Martin Lomas
martin at ml1.co.uk

More information about the Nottingham mailing list