Thread (89 messages) 89 messages, 6 authors, 2019-01-25

Re: [PATCH v6 01/16] sched/core: Allow sched_setattr() to use the current policy

From: Alessio Balsini <hidden>
Date: 2019-01-25 13:56:52
Also in: linux-pm, lkml

Hello Patrick,

What do you think about the following minor changes:

On Tue, Jan 15, 2019 at 10:14:58AM +0000, Patrick Bellasi wrote:
 /* SCHED_ISO: reserved but not implemented yet */
 #define SCHED_IDLE		5
 #define SCHED_DEADLINE		6
+/* Must be the last entry: used to sanity check attr.policy values */
I would remove this comment:
- the meaning of SCHED_POLICY_MAX is evident, and
- should we hint on how the value is used? That comment will be removed
  the next time SCHED_POLICY_MAX is used for something else.
  This is what should also happen to the comment of SETPARAM_POLICY:
  now sched_setparam() is no more the only code path accessing
  SETPARAM_POLICY.
+#define SCHED_POLICY_MAX	7
+#define SCHED_POLICY_MAX    SCHED_DEADLINE

This would make it compliant with the definition of MAX.
quoted hunk ↗ jump to hunk
--- a/kernel/sched/core.c
+++ b/kernel/sched/core.c
@@ -4560,8 +4560,17 @@ SYSCALL_DEFINE3(sched_setattr, pid_t, pid, struct sched_attr __user *, uattr,
 	if (retval)
 		return retval;
 
-	if ((int)attr.sched_policy < 0)
+	/*
+	 * A valid policy is always required from userspace, unless
+	 * SCHED_FLAG_KEEP_POLICY is set and the current policy
+	 * is enforced for this call.
+	 */
+	if (attr.sched_policy >= SCHED_POLICY_MAX &&
+	if (attr.sched_policy > SCHED_POLICY_MAX &&

In line with the previous update.
+	    !(attr.sched_flags & SCHED_FLAG_KEEP_POLICY)) {
 		return -EINVAL;
Thanks,
Alessio
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help