]> git.ipfire.org Git - thirdparty/util-linux.git/commit
chrt: follow nice setting, prefer sched_setscheduler()
authorKarel Zak <kzak@redhat.com>
Mon, 3 Oct 2016 09:02:35 +0000 (11:02 +0200)
committerKarel Zak <kzak@redhat.com>
Mon, 3 Oct 2016 09:02:35 +0000 (11:02 +0200)
commit88b60f0bdee6a4379d5579918eec919bec94089f
tree4aceb8d788e9d628b5f1b18fb7feba2ee4a4ee74
parentb5a58919a932954a643fae53e74dfd96d3c1ff9d
chrt: follow nice setting, prefer sched_setscheduler()

* do not reset 'nice' setting by sched_setattr(), if 'nice' setting
  is not zero then chrt ends with EPERM for non-root users:

  $ renice -n 5 -p $$; chrt -v -b 0 date
  12475 (process ID) old priority 0, new priority 5
  chrt: failed to set pid 0's policy: Operation not permitted

* it seems more elegant to always use old sched_setscheduler() API for
  non-deadline policies; in this case we do not need getpriority()
  to keep 'nice' unchanged.

Addresses: https://github.com/karelzak/util-linux/issues/359
Signed-off-by: Karel Zak <kzak@redhat.com>
schedutils/chrt.c