[BUG+PATCH] RT-Preempt: IRQ threads running at prio 0 SCHED_OTHER

From: Remy Bohmer
Date: Tue Dec 19 2006 - 15:56:38 EST


Hello Ingo,

I am using your yum-distributed kernel 2.6.19.1-rt15, and
unfortunately I experienced very worse latencies.
It turned out that ALL the IRQ threads were all running at prio 0, SCHED_OTHER.

Looking at the current code in kernel/irq/manage.c, the goal was to
put them at MAX_RT_PRIO, but the call to sys_sched_setscheduler()
fails with EINVAL. I have attached a patch to set them to
(MAX_RT_PRIO-1). This works.

Further I believe that each application of the RT-kernel requires a
different configuration of these thread-priorities and I prefer to
reconfigure these prios from userland during boot. As these
threadnames contain whitespaces in its name, they make the
shell-scripts unnecessary complex that I use to reconfigure the thread
priorities.
So, I would prefer a slight modification of the names: The attached
patch also changes the names from [IRQ nn] to [IRQ-nn]. I hope that
you agree with me here. (If not, I stick to do this patch each time
myself ;-) )

Kind Regards,

Remy Böhmer

Attachment: fix-kernel-irq-thread-prio.patch
Description: Binary data