[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Discuss-gnuradio] Software stopping of runaway realtime processes?
From: |
Dan Halperin |
Subject: |
Re: [Discuss-gnuradio] Software stopping of runaway realtime processes? |
Date: |
Fri, 09 Feb 2007 14:50:16 -0800 |
User-agent: |
Thunderbird 1.5.0.9 (X11/20070103) |
Dan Halperin wrote:
> Eric Blossom wrote:
>
>> If they're not running as root (or holding CAP_SYS_NICE), the call
>> sched_setscheduler (the system call that enables realtime) will fail.
>>
>>
> They're not running as root, I just added the Ubuntu udev rules on the
> website. I never explicitly enabled the SYS_CAP_NICE, it just happened,
> and I can't figure out how to remove it.
Update: I installed lcap, and ran lcap 23, which disables CAP_SYS_NICE:
address@hidden:~# lcap
Current capabilities: 0xFF7FFEFF
0) *CAP_CHOWN 1) *CAP_DAC_OVERRIDE
2) *CAP_DAC_READ_SEARCH 3) *CAP_FOWNER
4) *CAP_FSETID 5) *CAP_KILL
6) *CAP_SETGID 7) *CAP_SETUID
8) CAP_SETPCAP 9) *CAP_LINUX_IMMUTABLE
10) *CAP_NET_BIND_SERVICE 11) *CAP_NET_BROADCAST
12) *CAP_NET_ADMIN 13) *CAP_NET_RAW
14) *CAP_IPC_LOCK 15) *CAP_IPC_OWNER
16) *CAP_SYS_MODULE 17) *CAP_SYS_RAWIO
18) *CAP_SYS_CHROOT 19) *CAP_SYS_PTRACE
20) *CAP_SYS_PACCT 21) *CAP_SYS_ADMIN
22) *CAP_SYS_BOOT 23) CAP_SYS_NICE
24) *CAP_SYS_RESOURCE 25) *CAP_SYS_TIME
26) *CAP_SYS_TTY_CONFIG 27) *CAP_MKNOD
28) *CAP_LEASE 29) *CAP_AUDIT_WRITE
30) *CAP_AUDIT_CONTROL
* = Capabilities currently allowed
If I as root attempt to set the priority of a process via nice, it fails:
address@hidden:~# nice -n -50 top
nice: cannot set niceness: Permission denied
The same thing happens to user processes.
However, if I run an application that calls the GNU Radio enable_runtime
function, that call succeeds and Python gets priority -50. Even though I
have disabled CAP_SYS_NICE system-wide. This happens even if I log out
all users and re-log in or do so remotely via ssh, do so with a user
that's not even in the wheel group, etc.
I can't think of what else to try...
-Dan