You are here

Add new comment

Simon Lewis's picture

Hi Rui

Just out of interest I was able to assign different priorites to devices sharing the same IRQ with rtctl after deinstalling rtirq.

The hardwire irqs are now prioritised as follows.
<code>simon@simon-Precision-M4300:~$ rtctl show hardirq
31 85 FF [irq/9-acpi]
58 85 FF [irq/14-ata_piix]
59 85 FF [irq/15-ata_piix]
64 85 FF [irq/18-ata_piix]
68 85 FF [irq/22-ehci_hcd]
69 85 FF [irq/20-ehci_hcd]
70 85 FF [irq/20-uhci_hcd]
71 85 FF [irq/21-uhci_hcd]
72 85 FF [irq/20-uhci_hcd]
73 85 FF [irq/21-uhci_hcd]
74 85 FF [irq/22-uhci_hcd]
75 85 FF [irq/12-i8042]
76 85 FF [irq/1-i8042]
77 90 FF [irq/8-rtc0]
147 88 FF [irq/19-firewire]
176 85 FF [irq/45-nouveau]
435 89 FF [irq/19-yenta]
600 85 FF [irq/46-snd_hda_]
611 85 FF [irq/47-iwl3945]
1150 50 FF [irq/48-eth0]
simon@simon-Precision-M4300:~$ </code>

The rtgroups that I used to do this are as follows:

<code>kthreads:*:1:*:\[.*\]$
watchdog:f:99:*:\[watchdog.*\]
migration:f:99:*:\[migration\/.*\]
softirq:f:70:*:\[.*(softirq|sirq).*\]
softirq-net-tx:f:75:*:\[(softirq|sirq)-net-tx.*\]
softirq-net-rx:f:75:*:\[(softirq|sirq)-net-rx.*\]
softirq-sched:f:1:*:\[(softirq|sirq)-sched\/.*\]
rpciod:f:65:*:\[rpciod.*\]
lockd:f:65:*:\[lockd.*\]
nfsd:f:65:*:\[nfsd.*\]
hardirq:f:85:*:\[(irq|IRQ)[\-_/].*\]
cardctl:f:88:*:\[irq/19-firewire]
hostctl:f:89:*:\[irq/19-yenta]
timer:f:90:*:\[irq/8-rtc0]</code>

Format is: <groupname>:<sched>:<prio>:affinity:<regex>
sched 'f' is fifo otherwise '*' (leave alone) is cfs

The prcocess names that can be chosen can be found with:

<code>$ ps -eo cmd</code>

The synchronisation between ffado and jackd still keeps slipping due to xruns but the number of xruns has however dropped significantly.

I guess I need to tweak the settings of the rtgroups - I haven't found any suggestions using rtctl in audio production workstations...

Cheers, Simon