Re: JACK rtprio=60, PipeWire rtprio=88: Why?

2024-02-15 Thread Wim Taymans
I think the main reason is that I was not aware of this policy and so we
chose some random numbers. The parameters are configurable at build time
and I can add these limits.

Wim

On Wed, Feb 14, 2024 at 7:30 PM Runiq via devel <
devel@lists.fedoraproject.org> wrote:

> Hey,
>
> I intend to pull the rtirq package [1] back into this decade and
> realized there's a discrepancy between the priorities of JACK and
> PipeWire realtime threads.
>
> JACK's is at 60, per the decision made in Fedora 17 [2]:
>
> ```
> $ ps -p 109009 -Lo tid,class,pri,rtprio,command
>
>  TID CLS PRI RTPRIO COMMAND
>   109009 TS   19  - jackd --realtime -dalsa -dhw:0 -r48000 -p512 -n2
>   109023 TS   19  - jackd --realtime -dalsa -dhw:0 -r48000 -p512 -n2
>   109024 TS   19  - jackd --realtime -dalsa -dhw:0 -r48000 -p512 -n2
>   109025 FF   60 20 jackd --realtime -dalsa -dhw:0 -r48000 -p512 -n2
>   109026 TS   19  - jackd --realtime -dalsa -dhw:0 -r48000 -p512 -n2
> ```
>
> Accordingly, the jackuser group rtprio limit is set to 70:
>
> ```
> # /etc/security/limits.d/95-jack.conf
> @jackuser - rtprio 70
> @jackuser - memlock 4194304
>
> @pulse-rt - rtprio 20
> @pulse-rt - nice -20
> ```
>
> On the other hand, PipeWire's realtime thread runs with prio 88:
>
> ```
> $ ps -p 4453 -Lo tid,class,pri,rtprio,command
>  TID CLS PRI RTPRIO COMMAND
> 4453 TS   30  - /usr/bin/pipewire
> 4460 FF  128 88 /usr/bin/pipewire
> ```
>
> And the group gets an rtprio limit of 95:
>
> ```
> # /etc/security/limits.d/25-pw-rlimits.conf
> @pipewire   - rtprio  95
> @pipewire   - nice-19
> @pipewire   - memlock 4194304
> ```
>
> Is there a reason for this discrepancy? Apart from the already mentioned
> email acknowledging the policy change in Fedora 17 [2], I couldn't find
> anything else about that. Since both Pipewire and JACK fill similar
> roles, I would have expected them to both have similar rtprio values.
>
> I've also posted this to Ask Fedora [3].
>
> Best regards,
> Patrice
>
> [1] https://src.fedoraproject.org/rpms/rtirq
> [2]
> https://cm-mail.stanford.edu/pipermail/planetccrma/2012-May/018018.html
> [3] https://discussion.fedoraproject.org/t/105188
> --
> ___
> devel mailing list -- devel@lists.fedoraproject.org
> To unsubscribe send an email to devel-le...@lists.fedoraproject.org
> Fedora Code of Conduct:
> https://docs.fedoraproject.org/en-US/project/code-of-conduct/
> List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
> List Archives:
> https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org
> Do not reply to spam, report it:
> https://pagure.io/fedora-infrastructure/new_issue
>
--
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue


JACK rtprio=60, PipeWire rtprio=88: Why?

2024-02-14 Thread Runiq via devel

Hey,

I intend to pull the rtirq package [1] back into this decade and 
realized there's a discrepancy between the priorities of JACK and 
PipeWire realtime threads.


JACK's is at 60, per the decision made in Fedora 17 [2]:

```
$ ps -p 109009 -Lo tid,class,pri,rtprio,command 


TID CLS PRI RTPRIO COMMAND
 109009 TS   19  - jackd --realtime -dalsa -dhw:0 -r48000 -p512 -n2
 109023 TS   19  - jackd --realtime -dalsa -dhw:0 -r48000 -p512 -n2
 109024 TS   19  - jackd --realtime -dalsa -dhw:0 -r48000 -p512 -n2
 109025 FF   60 20 jackd --realtime -dalsa -dhw:0 -r48000 -p512 -n2
 109026 TS   19  - jackd --realtime -dalsa -dhw:0 -r48000 -p512 -n2
```

Accordingly, the jackuser group rtprio limit is set to 70:

```
# /etc/security/limits.d/95-jack.conf
@jackuser - rtprio 70
@jackuser - memlock 4194304

@pulse-rt - rtprio 20
@pulse-rt - nice -20
```

On the other hand, PipeWire's realtime thread runs with prio 88:

```
$ ps -p 4453 -Lo tid,class,pri,rtprio,command
TID CLS PRI RTPRIO COMMAND
   4453 TS   30  - /usr/bin/pipewire
   4460 FF  128 88 /usr/bin/pipewire
```

And the group gets an rtprio limit of 95:

```
# /etc/security/limits.d/25-pw-rlimits.conf
@pipewire   - rtprio  95
@pipewire   - nice-19
@pipewire   - memlock 4194304
```

Is there a reason for this discrepancy? Apart from the already mentioned 
email acknowledging the policy change in Fedora 17 [2], I couldn't find 
anything else about that. Since both Pipewire and JACK fill similar 
roles, I would have expected them to both have similar rtprio values.


I've also posted this to Ask Fedora [3].

Best regards,
Patrice

[1] https://src.fedoraproject.org/rpms/rtirq
[2] https://cm-mail.stanford.edu/pipermail/planetccrma/2012-May/018018.html
[3] https://discussion.fedoraproject.org/t/105188
--
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue