[LAD] rtirq script is broken with 2.6.31

Robin Gareus robin at gareus.org
Fri Aug 7 13:01:17 UTC 2009


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Rui Nuno Capela wrote:
> Robin Gareus wrote:
>> Hi Rui et al,
>>
>> I just found that recent kernel development (merging IRQ threads into
>> mainline) breaks the "rtirq" setup script. Basically rtirq does nothing.
>>
>> [..]
>>
>> It looks like a new set of regexps for rtirq is in order ;)
>>
> 
> of course. it happens all the time the rt-preempt devs make their way it
> happened before it will happen again. world is turning :)

LOL.

> this issue on 2.6.31-rt has been already reported privately and i'll get
> to it as soon i get back home from vacation. meanwhile, it really looks
> like a regex trickery is all that's needed,

I'm not so sure, Since 2.6.31 it is also possible to raise the priority
not by IRQ number but by /device-driver/.

ie:
  PID CLS RTPRIO  NI PRI %CPU STAT COMMAND
 9092 FF      89   - 129  0.4 S<   irq/17-HDA Inte
 1447 FF      50   -  90  0.1 S<   irq/17-uhci_hcd
 9093 FF      50   -  90  0.0 S<   irq/17-ohci1394

..but of course that's also just regexp trickery ;)

Note that the kernel limits the IRQ process name to 15 chars.
"HDA Inte" won't read "HDA Intel" even when using `ps -w..`

But '/proc/interrupts' says:
 17:   17215454     873204   IO-APIC-fasteoi   uhci_hcd:usb3, HDA Intel,
ohci1394


> keeping in mind that
> backward compability with pre-2.6.31-rt kernels is in order (eg. i do
> still run on 2.56.29.5-rt22 for which the current rtirq script is
> perfect, of course)
> 
> as a quick suggestion, try this for instance (re. line 120):
>   PIDS=`ps -eo pid,comm | egrep "(IRQ.${IRQ}|irq\/${IRQ}\-.+)\$" | awk
> '{print $1}'`
>

That works, but raises all devices on a given IRQ-line and results in:
  PID CLS RTPRIO  NI PRI %CPU STAT COMMAND
 1447 FF      88   - 128  0.1 S<   irq/17-uhci_hcd
 9092 FF      87   - 127  0.4 S<   irq/17-HDA Inte
 9093 FF      86   - 126  0.0 S<   irq/17-ohci1394


>>  [..]
>>
>> Yes I'm also baffled at the high PIDs for IRQs. I hazard a guess that
>> those are a result of a suspend/resume cycle; and I'll check later if
>> the chrt settings do persist after a suspend/resume.

It looks like the guess was correct. The PIDs change after
suspend/resume and the chrt settings are retained here.

Take your time, and enjoy the holiday.
cheers,
robin
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)

iEYEARECAAYFAkp8JZwACgkQeVUk8U+VK0JOJgCfQzlByX1wdCIuaOO9QtNc+Zh+
9rUAnjrGfEO3rLDCkLMtcfyEWwGd323l
=KI14
-----END PGP SIGNATURE-----



More information about the Linux-audio-dev mailing list