diff --git a/man7/sched.7 b/man7/sched.7 index 70c30adbd..9b06ed693 100644 --- a/man7/sched.7 +++ b/man7/sched.7 @@ -813,10 +813,6 @@ The allowed range is from +19 (low priority) to \-20 (high priority). .BR write (2) to fail with the error .BR EINVAL .) -The setting has the same effect as modifying the nice level via -.BR getpriority (2). -(For a discussion of the nice value, see -.BR getpriority (2).) .\" FIXME . .\" Because of a bug introduced in Linux 4.7 .\" (commit 2159197d66770ec01f75c93fb11dc66df81fd45b made changes @@ -829,31 +825,21 @@ The setting has the same effect as modifying the nice level via .\" A patch was posted on 23 Nov 2016 .\" ("sched/autogroup: Fix 64bit kernel nice adjustment"; .\" check later to see in which kernel version it lands. -.\" -.\" FIXME How do the nice value of a process and the nice value of -.\" an autogroup interact? Which has priority? -.\" -.\" It *appears* that the autogroup nice value is used for CPU distribution -.\" between task groups, and that the process nice value has no effect there. -.\" (I.e., suppose two autogroups each contain a CPU-bound process, -.\" with one process having nice==0 and the other having nice==19. -.\" It appears that they each get 50% of the CPU.) -.\" It appears that the process nice value has effect only with respect to -.\" scheduling relative to other processes in the *same* autogroup. -.\" Is this correct? + +The autogroup nice setting has the same meaning as the process nice value, +but applies to distribution of CPU cycles to the autogroup as a whole, +based on the relative nice values of other autogroups. +For a process inside an autogroup, the CPU cycles that it receives +will be a product of the autogroup's nice value +(compared to other autogroups) +and the process's nice value +(compared to other processes in the same autogroup. The use of the .BR cgroups (7) CPU controller to place processes in cgroups other than the root CPU cgroup overrides the effect of autogrouping. -In a nonroot autogroup, -the effect of autogroup nice value and the process nice value are additive - -Autogroup nice level affects SCHED_OTHER, SCHED_BATCH, and SCHED_IDLE, but -not RT policies. - - The autogroup feature groups only processes scheduled under non-real-time policies .RB ( SCHED_OTHER ,