diff options
author | Peter Zijlstra <[email protected]> | 2016-09-20 22:06:01 +0200 |
---|---|---|
committer | Ingo Molnar <[email protected]> | 2016-09-30 11:03:28 +0200 |
commit | 49bd21efe7fc84f9c82c8475b8ff6f8b865b1692 (patch) | |
tree | 93f1620565f6479e5dceb3d1133dba73390edebb /scripts | |
parent | b2bf6c314e3a9e227925240d92ecd6e9b0110170 (diff) |
sched/core: Fix set_user_nice()
Almost all scheduler functions update state with the following
pattern:
if (queued)
dequeue_task(rq, p, DEQUEUE_SAVE);
if (running)
put_prev_task(rq, p);
/* update state */
if (queued)
enqueue_task(rq, p, ENQUEUE_RESTORE);
if (running)
set_curr_task(rq, p);
set_user_nice() however misses the running part, cure this.
This was found by asserting we never enqueue 'current'.
Signed-off-by: Peter Zijlstra (Intel) <[email protected]>
Cc: Linus Torvalds <[email protected]>
Cc: Mike Galbraith <[email protected]>
Cc: Peter Zijlstra <[email protected]>
Cc: Thomas Gleixner <[email protected]>
Cc: [email protected]
Signed-off-by: Ingo Molnar <[email protected]>
Diffstat (limited to 'scripts')
0 files changed, 0 insertions, 0 deletions