rtprio + su - doesn't work

Chuck Swiger cswiger at mac.com
Fri Aug 22 17:04:06 UTC 2008

On Aug 22, 2008, at 6:28 AM, Wojciech Puchar wrote:
>>> tu run (at startup) asterisk PBX as user centrala with realtime  
>>> priority.
>>> asterisk is started, but without realtime priority.
>> Yes, you'd be running the su process with realtime priority.  :-)
> and su forks shell and asterisk - isn't it?

That's right.  RT priority isn't inherited by children processes, or  
so it seems.

[ ... ]
>>> Well, you have to run rtprio as root, or else make it setuid-root  
>>> (which probably isn't a great idea).  Presumably this thing has a  
>>> startup script which runs it, and it probably creates a PID file  
>>> under /var/run which you could use to adjust the priority during  
>>> system startup via:
>> rtprio 31 -`cat /var/run/asterix.pid`
> did this
> /usr/bin/su centrala -c \
> "/usr/local/sbin/asterisk -C /centrala/etc/asterisk.conf"
> /bin/sleep 5
> /usr/sbin/rtprio 31 -`cat /centrala/run/asterisk.pid`
> works fine, but looks like workaround for me not proper solution?
> am i wrong? thank you for explanation why it doesn't work directly

Very few people do anything with RT priorities, in part because Unix  
was designed to maximize workload throughput originally in a batch- 
processing context.  People who need hard realtime tend to use more  
specialized systems and hardware designed for realtime tasks (ie,  
bounded interrupt service times and the like)...


More information about the freebsd-questions mailing list