Merge branch 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull scheduler fixes from Ingo Molnar:
"Misc fixes: a documentation fix, a Sparse warning fix and a debugging
fix"

* 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
sched/debug: Fix task state recording/printout
sched/deadline: Don't use dubious signed bitfields
sched/deadline: Fix the description of runtime accounting in the documentation

+17 -10
+10 -3
Documentation/scheduler/sched-deadline.txt
··· 204 It does so by decrementing the runtime of the executing task Ti at a pace equal 205 to 206 207 - dq = -max{ Ui, (1 - Uinact) } dt 208 209 - where Uinact is the inactive utilization, computed as (this_bq - running_bw), 210 - and Ui is the bandwidth of task Ti. 211 212 213 Let's now see a trivial example of two deadline tasks with runtime equal
··· 204 It does so by decrementing the runtime of the executing task Ti at a pace equal 205 to 206 207 + dq = -max{ Ui / Umax, (1 - Uinact - Uextra) } dt 208 209 + where: 210 + 211 + - Ui is the bandwidth of task Ti; 212 + - Umax is the maximum reclaimable utilization (subjected to RT throttling 213 + limits); 214 + - Uinact is the (per runqueue) inactive utilization, computed as 215 + (this_bq - running_bw); 216 + - Uextra is the (per runqueue) extra reclaimable utilization 217 + (subjected to RT throttling limits). 218 219 220 Let's now see a trivial example of two deadline tasks with runtime equal
+4 -4
include/linux/sched.h
··· 473 * conditions between the inactive timer handler and the wakeup 474 * code. 475 */ 476 - int dl_throttled : 1; 477 - int dl_boosted : 1; 478 - int dl_yielded : 1; 479 - int dl_non_contending : 1; 480 481 /* 482 * Bandwidth enforcement timer. Each -deadline task has its
··· 473 * conditions between the inactive timer handler and the wakeup 474 * code. 475 */ 476 + unsigned int dl_throttled : 1; 477 + unsigned int dl_boosted : 1; 478 + unsigned int dl_yielded : 1; 479 + unsigned int dl_non_contending : 1; 480 481 /* 482 * Bandwidth enforcement timer. Each -deadline task has its
+3 -3
include/trace/events/sched.h
··· 116 * RUNNING (we will not have dequeued if state != RUNNING). 117 */ 118 if (preempt) 119 - return TASK_STATE_MAX; 120 121 - return task_state_index(p); 122 } 123 #endif /* CREATE_TRACE_POINTS */ 124 ··· 164 { 0x40, "P" }, { 0x80, "I" }) : 165 "R", 166 167 - __entry->prev_state & TASK_STATE_MAX ? "+" : "", 168 __entry->next_comm, __entry->next_pid, __entry->next_prio) 169 ); 170
··· 116 * RUNNING (we will not have dequeued if state != RUNNING). 117 */ 118 if (preempt) 119 + return TASK_REPORT_MAX; 120 121 + return 1 << task_state_index(p); 122 } 123 #endif /* CREATE_TRACE_POINTS */ 124 ··· 164 { 0x40, "P" }, { 0x80, "I" }) : 165 "R", 166 167 + __entry->prev_state & TASK_REPORT_MAX ? "+" : "", 168 __entry->next_comm, __entry->next_pid, __entry->next_prio) 169 ); 170