Processo de lançamento com agendamento em tempo real sem root no WSL2

Processo de lançamento com agendamento em tempo real sem root no WSL2

Executando o Ubuntu 20.04 no WSL2, gostaria de poder usar o agendamento em tempo real como um audiomembro normal do grupo. Em última análise, isso é para JACK. Tudo funciona como root mas isso não é o ideal.

Eu tenho

$ cat /etc/security/limits.d/audio.conf
# Provided by the jackd package.
#
# Changes to this file will be preserved.
#
# If you want to enable/disable realtime permissions, run
#
#    dpkg-reconfigure -p high jackd

@audio   -  rtprio     95
@audio   -  memlock    unlimited
#@audio   -  nice      -19

Usando o verificador de configuração emhttps://github.com/raboof/realtimeconfigquickscanVejo que não consigo 'priorizar processos com chrt'. Então, para depurar o problema, estou tentando algo simples...

Com meu usuário normal eu tento

$ chrt -f 80 echo success
chrt: failed to set pid 0's policy: Operation not permitted

Mas como rooteu consigo

# chrt -f 80 echo success
success

Eu me perguntei se isso se devia ao agendamento do RT em grupo. Eu tenho

$ cat /proc/sys/kernel/sched_rt_period_us
1000000
$ cat /proc/sys/kernel/sched_rt_runtime_us
950000

que eu acho que são os valores padrão. As mesmas configurações funcionam bem em uma instalação nativa do Ubuntu 18.04 que estou executando em uma máquina diferente.

No entanto, vi alguns lugares sugerirem fazer

sysctl -w kernel.sched_rt_runtime_us=-1

para efetivamente desligá-lo. Mas isso não funcionou.

Quando comecei a seguir esse caminho, eu realmente não esperava que o JACK funcionasse no WSL2, mas o fato de o agendamento em tempo real funcionar como root me deixa esperançoso de que este seja um problema de configuração/permissões, e não uma limitação do WSL2. O que devo tentar a seguir?

informação relacionada