You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
extend the process struct to represent scheduling attributes for a
process based on the sched_setattr(2) syscall.
Signed-off-by: Giuseppe Scrivano <[email protected]>
Copy file name to clipboardExpand all lines: config.md
+27Lines changed: 27 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -291,6 +291,33 @@ For Linux-based systems, the `process` object supports the following process-spe
291
291
292
292
This is a per-process setting, where as [`disableOOMKiller`](config-linux.md#memory) is scoped for a memory cgroup.
293
293
For more information on how these two settings work together, see [the memory cgroup documentation section 10. OOM Contol][cgroup-v1-memory_2].
294
+
***`scheduler`** (object, OPTIONAL) is an object describing the scheduler properties for the process. The `scheduler` contains the following properties:
295
+
296
+
***`policy`** (string, REQUIRED) represents the scheduling policy. A valid list of values is:
297
+
298
+
* `SCHED_OTHER`
299
+
* `SCHED_FIFO`
300
+
* `SCHED_RR`
301
+
* `SCHED_BATCH`
302
+
* `SCHED_ISO`
303
+
* `SCHED_IDLE`
304
+
* `SCHED_DEADLINE`
305
+
306
+
***`nice`** (int32, OPTIONAL) is the nice value for the process, affecting its priority. A lower nice value corresponds to a higher priority. If not set, the runtime must use the value 0.
307
+
***`priority`** (int32, OPTIONAL) represents the static priority of the process, used by real-time policies like SCHED_FIFO and SCHED_RR. If not set, the runtime must use the value 0.
308
+
***`flags`** (array of strings, OPTIONAL) is an array of strings representing scheduling flags. A valid list of values is:
309
+
310
+
*`SCHED_FLAG_RESET_ON_FORK`
311
+
*`SCHED_FLAG_RECLAIM`
312
+
*`SCHED_FLAG_DL_OVERRUN`
313
+
*`SCHED_FLAG_KEEP_POLICY`
314
+
*`SCHED_FLAG_KEEP_PARAMS`
315
+
*`SCHED_FLAG_UTIL_CLAMP_MIN`
316
+
*`SCHED_FLAG_UTIL_CLAMP_MAX`
317
+
318
+
***`runtime`** (uint64, OPTIONAL) represents the amount of time in nanoseconds during which the process is allowed to run in a given period, used by the deadline scheduler. If not set, the runtime must use the value 0.
319
+
***`deadline`** (uint64, OPTIONAL) represents the absolute deadline for the process to complete its execution, used by the deadline scheduler. If not set, the runtime must use the value 0.
320
+
***`period`** (uint64, OPTIONAL) represents the length of the period in nanoseconds used for determining the process runtime, used by the deadline scheduler. If not set, the runtime must use the value 0.
294
321
***`selinuxLabel`** (string, OPTIONAL) specifies the SELinux label for the process.
295
322
For more information about SELinux, see [SELinux documentation][selinux].
0 commit comments