]> git.ipfire.org Git - thirdparty/man-pages.git/commitdiff
sched_setattr.2: Note that SCHED_FLAG_DL_OVERRUN SIGXCPU signal is process-directed
authorMichael Kerrisk <mtk.manpages@gmail.com>
Mon, 5 Nov 2018 14:41:14 +0000 (15:41 +0100)
committerMichael Kerrisk <mtk.manpages@gmail.com>
Wed, 6 Mar 2019 14:12:10 +0000 (15:12 +0100)
And further note that this is probably a bug.

Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
man2/sched_setattr.2

index 235d575205247128cfbb90d8e9f2c8a55e2f737d..806ab67c86847e75c21f29d0f83b27aed71a3ad3 100644 (file)
@@ -172,14 +172,29 @@ thread to reclaim bandwidth unused by other real-time thread.
 .TP
 .BR SCHED_FLAG_DL_OVERRUN " (since Linux 4.16)"
 .\" commit 34be39305a77b8b1ec9f279163c7cdb6cc719b91
-This flag allows a
+This flag allows an application to get informed about run-time overruns in
 .BR SCHED_DEADLINE
-thread to get informed about run-time overruns,
-which may be caused by (for example) coarse execution time accounting
+threads.
+Such overruns may be caused by (for example) coarse execution time accounting
 or incorrect parameter assignment.
 Notification takes the form of a 
 .B SIGXCPU
 signal which is generated on each overrun.
+.IP
+This
+.BR SIGXCPU
+signal is
+.I process-directed
+(see
+.BR signal (7))
+rather than thread-directed.
+This is probably a bug.
+On the one hand,
+.BR sched_setattr ()
+is being used to set a per-thread attribute.
+On the other hand, if the process-directed signal is delivered to
+a thread inside the process other than the one that had a run-time overrun,
+the application has no way of knowing which thread overran.
 .RE
 .TP
 .I sched_nice