Pthread_setschedparam failed due to operation not permitted

Hi all,

I’ve added below line into /etc/security/limits.conf in order to get permission to prioritize the thread.

 <username>    -     rtprio    98

Before nvidia-jetpack was installed, it worked perfectly.
But after I installed the nvidia-jetpack, the function pthread_setschedparam failed with the error "Failed to set schedule parameters: Operation not permitted"

In this case, if I change /proc/sys/kernel/sched_rt_runtime_us from default 950000 to -1, it will work. But this workaround is dangerous so I don’t want to use.

Why this issue comes with jetpack installed? Any patch to avoid this?

BTW, the environment is AGX Orin with L4T R35.4.1
Thank you.

Hi,
Please disable CONFIG_RT_GROUP_SCHED, rebuild/replace kernel image and try again.

Are there any side-effect after CONFIG_RT_GROUP_SCHED is disabled?

Hi all,

I found the alternative way of CONFIG_RT_GROUP_SCHED is to change the cgroup tasks.
After I manually add current shell PID ($$) into cgroup task, it works.

echo $$ | sudo tee /sys/fs/cgroup/cpu/tasks

Is it a bug? Why this happens only when JetPack installed?
Before JetPack is installed, the PID is automatically added into cgroup tasks if /etc/security/limits.conf is configured.
After JetPack is installed, the PID is NOT added into cgroup tasks.

Hi,
Probably some of our packages(probably CUDA or TensorRT) have conflict with it. We would need to check further. Your solution looks fine. Please adopt it and thanks for the sharing.