aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorClaudio Scordino <claudio@evidence.eu.com>2018-04-03 03:42:42 -0400
committerIngo Molnar <mingo@kernel.org>2018-05-14 03:12:27 -0400
commitbb4e30a48045c9cc16c4efe447489542750397cc (patch)
tree45438e51ce6e67a097fce532354011cec671e34f
parent943d355d7feef380e15a95892be3dff1095ef54b (diff)
sched/deadline/Documentation: Add overrun signal and GRUB-PA documentation
Signed-off-by: Claudio Scordino <claudio@evidence.eu.com> Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Cc: Jonathan Corbet <corbet@lwn.net> Cc: Juri Lelli <juri.lelli@redhat.com> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Luca Abeni <luca.abeni@santannapisa.it> Cc: Mike Galbraith <efault@gmx.de> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: linux-kernel@vger.kernel.org Link: http://lkml.kernel.org/r/1522741362-4542-1-git-send-email-claudio@evidence.eu.com Signed-off-by: Ingo Molnar <mingo@kernel.org>
-rw-r--r--Documentation/scheduler/sched-deadline.txt25
1 files changed, 24 insertions, 1 deletions
diff --git a/Documentation/scheduler/sched-deadline.txt b/Documentation/scheduler/sched-deadline.txt
index 8ce78f82ae23..b14e03ff3528 100644
--- a/Documentation/scheduler/sched-deadline.txt
+++ b/Documentation/scheduler/sched-deadline.txt
@@ -49,7 +49,7 @@ CONTENTS
492.1 Main algorithm 492.1 Main algorithm
50------------------ 50------------------
51 51
52 SCHED_DEADLINE uses three parameters, named "runtime", "period", and 52 SCHED_DEADLINE [18] uses three parameters, named "runtime", "period", and
53 "deadline", to schedule tasks. A SCHED_DEADLINE task should receive 53 "deadline", to schedule tasks. A SCHED_DEADLINE task should receive
54 "runtime" microseconds of execution time every "period" microseconds, and 54 "runtime" microseconds of execution time every "period" microseconds, and
55 these "runtime" microseconds are available within "deadline" microseconds 55 these "runtime" microseconds are available within "deadline" microseconds
@@ -117,6 +117,10 @@ CONTENTS
117 scheduling deadline = scheduling deadline + period 117 scheduling deadline = scheduling deadline + period
118 remaining runtime = remaining runtime + runtime 118 remaining runtime = remaining runtime + runtime
119 119
120 The SCHED_FLAG_DL_OVERRUN flag in sched_attr's sched_flags field allows a task
121 to get informed about runtime overruns through the delivery of SIGXCPU
122 signals.
123
120 124
1212.2 Bandwidth reclaiming 1252.2 Bandwidth reclaiming
122------------------------ 126------------------------
@@ -279,6 +283,19 @@ CONTENTS
279 running_bw is incremented. 283 running_bw is incremented.
280 284
281 285
2862.3 Energy-aware scheduling
287------------------------
288
289 When cpufreq's schedutil governor is selected, SCHED_DEADLINE implements the
290 GRUB-PA [19] algorithm, reducing the CPU operating frequency to the minimum
291 value that still allows to meet the deadlines. This behavior is currently
292 implemented only for ARM architectures.
293
294 A particular care must be taken in case the time needed for changing frequency
295 is of the same order of magnitude of the reservation period. In such cases,
296 setting a fixed CPU frequency results in a lower amount of deadline misses.
297
298
2823. Scheduling Real-Time Tasks 2993. Scheduling Real-Time Tasks
283============================= 300=============================
284 301
@@ -505,6 +522,12 @@ CONTENTS
505 17 - L. Abeni, G. Lipari, A. Parri, Y. Sun, Multicore CPU reclaiming: parallel 522 17 - L. Abeni, G. Lipari, A. Parri, Y. Sun, Multicore CPU reclaiming: parallel
506 or sequential?. In Proceedings of the 31st Annual ACM Symposium on Applied 523 or sequential?. In Proceedings of the 31st Annual ACM Symposium on Applied
507 Computing, 2016. 524 Computing, 2016.
525 18 - J. Lelli, C. Scordino, L. Abeni, D. Faggioli, Deadline scheduling in the
526 Linux kernel, Software: Practice and Experience, 46(6): 821-839, June
527 2016.
528 19 - C. Scordino, L. Abeni, J. Lelli, Energy-Aware Real-Time Scheduling in
529 the Linux Kernel, 33rd ACM/SIGAPP Symposium On Applied Computing (SAC
530 2018), Pau, France, April 2018.
508 531
509 532
5104. Bandwidth management 5334. Bandwidth management