Re: [LAD] rtirq script is broken with 2.6.31

From: Rui Nuno Capela <rncbc@email-addr-hidden>
Date: Thu Aug 06 2009 - 23:35:50 EEST

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.
>
> The command to get the PID
> PIDS=`ps -eo pid,comm | egrep "IRQ.${IRQ}\$" | awk '{print $1}'`
> (rtirq line 120) does no longer work since the IRQ process names have
> changed.
>
> I've quickly changed it to
> PIDS=`ps -eo pid,comm | egrep "irq\/${IRQ}-" | awk '{print $1}'`
> and it sets the priorities again, but that's not correct since it also
> raises priority of other drivers on the same IRQ..
>
> Similarly `rtirq status` returns nothing. I've checked with:
> `ps -ewo pid,class,rtprio,ni,pri,pcpu,stat,comm --sort -rtprio`
> instead.
>
> 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 :)

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, 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}'`

>
> This is
> Linux soyuz 2.6.31-rc5-rt1.1 #1 SMP PREEMPT RT Wed Aug 5 23:06:21 CEST
> 2009 i686 GNU/Linux
>
> # ps -eo pid,comm | grep -i irq
> 4 sirq-high/0
> 5 sirq-timer/0
> 6 sirq-net-tx/0
> 7 sirq-net-rx/0
> 8 sirq-block/0
> 9 sirq-tasklet/0
> 10 sirq-sched/0
> 11 sirq-hrtimer/0
> 12 sirq-rcu/0
> 149 irq/9-acpi
> 495 irq/14-ata_piix
> 496 irq/15-ata_piix
> 506 irq/16-yenta
> 526 irq/12-i8042
> 527 irq/1-i8042
> 1418 irq/8-rtc0
> 1428 irq/19-ehci_hcd
> 1446 irq/16-uhci_hcd
> 1447 irq/17-uhci_hcd
> 1450 irq/18-uhci_hcd
> 1452 irq/19-uhci_hcd
> 1544 irq/29-iwl3945
> 22591 sirq-high/1
> 22592 sirq-timer/1
> 22593 sirq-net-tx/1
> 22594 sirq-net-rx/1
> 22595 sirq-block/1
> 22596 sirq-tasklet/1
> 22597 sirq-sched/1
> 22598 sirq-hrtimer/1
> 22599 sirq-rcu/1
> 22609 irq/17-HDA Inte
> 22610 irq/17-ohci1394
> 22952 irq/16-i915@email-addr-hidden
> 22968 irq/28-eth1
>
> 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.
>
> so long,
> robin

cheers

-- 
rncbc aka Rui Nuno Capela
rncbc@email-addr-hidden
_______________________________________________
Linux-audio-dev mailing list
Linux-audio-dev@email-addr-hidden
http://lists.linuxaudio.org/mailman/listinfo/linux-audio-dev
Received on Fri Aug 7 00:15:06 2009

This archive was generated by hypermail 2.1.8 : Fri Aug 07 2009 - 00:15:06 EEST