aboutsummaryrefslogtreecommitdiffstats
path: root/scripts/gcc-plugins/gcc-generate-simple_ipa-pass.h
diff options
context:
space:
mode:
authorPeter Zijlstra <[email protected]>2020-09-24 11:50:42 +0000
committerPeter Zijlstra <[email protected]>2020-11-17 12:15:28 +0000
commitec618b84f6e15281cc3660664d34cd0dd2f2579e (patch)
treeaf7536d66f934bb1979bf9e9dd2052082ee9eaea /scripts/gcc-plugins/gcc-generate-simple_ipa-pass.h
parentsched: Fix data-race in wakeup (diff)
downloadkernel-ec618b84f6e15281cc3660664d34cd0dd2f2579e.tar.gz
kernel-ec618b84f6e15281cc3660664d34cd0dd2f2579e.zip
sched: Fix rq->nr_iowait ordering
schedule() ttwu() deactivate_task(); if (p->on_rq && ...) // false atomic_dec(&task_rq(p)->nr_iowait); if (prev->in_iowait) atomic_inc(&rq->nr_iowait); Allows nr_iowait to be decremented before it gets incremented, resulting in more dodgy IO-wait numbers than usual. Note that because we can now do ttwu_queue_wakelist() before p->on_cpu==0, we lose the natural ordering and have to further delay the decrement. Fixes: c6e7bd7afaeb ("sched/core: Optimize ttwu() spinning on p->on_cpu") Reported-by: Tejun Heo <[email protected]> Signed-off-by: Peter Zijlstra (Intel) <[email protected]> Acked-by: Mel Gorman <[email protected]> Link: https://lkml.kernel.org/r/[email protected]
Diffstat (limited to 'scripts/gcc-plugins/gcc-generate-simple_ipa-pass.h')
0 files changed, 0 insertions, 0 deletions