Acredito que, além do CAP_SYS_NICE, você também precisará do CAP_SYS_ADMIN. Eu não posso dizer com certeza, mas o kernel tem uma verificação de ioprio () que requer CAP_SYS_ADMIN & CAP_SYS_NICE para uma prioridade "em tempo real" como SCHED_RR.
Veja link
(Permissões necessárias para definir prioridades de E / S)
Eu tive o mesmo problema com qualquer chamada sched_setsched () retornando um EPERM quando tento alterar a prioridade de agendamento dentro de um contêiner. Também estou recebendo erro EPERM quando tento a mesma alteração do host para um processo no contêiner.
EDIT: Na verdade, estou errado sobre isso. Eu descubro como obter o SCHED_RR para trabalhar na minha configuração. A chamada para sched_setscheduler () estava errando com EPERM porque eu não tinha definido um orçamento em tempo real na pasta cgroups.
Control Group policy does not allow for a real-time scheduling policy to be set without allocating a run-time budget, which is not set by the provided configuration.