Messages in this thread Patch in this message | | | From | Vincent Guittot <> | Subject | [PATCH v2 4/7] sched/core: Add permission checks for setting the latency_nice value | Date | Thu, 12 May 2022 18:35:31 +0200 |
| |
From: Parth Shah <parth@linux.ibm.com>
Since the latency_nice uses the similar infrastructure as NICE, use the already existing CAP_SYS_NICE security checks for the latency_nice. This should return -EPERM for the non-root user when trying to set the task latency_nice value to any lower than the current value.
Signed-off-by: Parth Shah <parth@linux.ibm.com> [rebase] Signed-off-by: Vincent Guittot <vincent.guittot@linaro.org> --- kernel/sched/core.c | 4 ++++ 1 file changed, 4 insertions(+)
diff --git a/kernel/sched/core.c b/kernel/sched/core.c index 036bd9ff66e9..2c0f782a9089 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -7340,6 +7340,10 @@ static int __sched_setscheduler(struct task_struct *p, return -EINVAL; if (attr->sched_latency_nice < MIN_LATENCY_NICE) return -EINVAL; + /* Use the same security checks as NICE */ + if (attr->sched_latency_nice < p->latency_nice && + !capable(CAP_SYS_NICE)) + return -EPERM; } if (pi) -- 2.17.1
| |