Merge tag 'sched-urgent-2020-11-22' of git://git.kernel.org/pub/scm/linux/kernel...
authorLinus Torvalds <torvalds@linux-foundation.org>
Sun, 22 Nov 2020 21:26:07 +0000 (13:26 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Sun, 22 Nov 2020 21:26:07 +0000 (13:26 -0800)
commitf4b936f5d6fd0625a78a7b4b92e98739a2bdb6f7
tree963d7a558200bfa4d6e27521a4668bf40f21e4ee
parent48da33058975f3a3084390dbef6aecd9bda7db62
parent2279f540ea7d05f22d2f0c4224319330228586bc
Merge tag 'sched-urgent-2020-11-22' of git://git./linux/kernel/git/tip/tip

Pull scheduler fixes from Thomas Gleixner:
 "A couple of scheduler fixes:

   - Make the conditional update of the overutilized state work
     correctly by caching the relevant flags state before overwriting
     them and checking them afterwards.

   - Fix a data race in the wakeup path which caused loadavg on ARM64
     platforms to become a random number generator.

   - Fix the ordering of the iowaiter accounting operations so it can't
     be decremented before it is incremented.

   - Fix a bug in the deadline scheduler vs. priority inheritance when a
     non-deadline task A has inherited the parameters of a deadline task
     B and then blocks on a non-deadline task C.

     The second inheritance step used the static deadline parameters of
     task A, which are usually 0, instead of further propagating task
     B's parameters. The zero initialized parameters trigger a bug in
     the deadline scheduler"

* tag 'sched-urgent-2020-11-22' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  sched/deadline: Fix priority inheritance with multiple scheduling classes
  sched: Fix rq->nr_iowait ordering
  sched: Fix data-race in wakeup
  sched/fair: Fix overutilized update in enqueue_task_fair()
include/linux/sched.h
kernel/sched/deadline.c
kernel/sched/fair.c