]> git.baikalelectronics.ru Git - kernel.git/commit
sched, nohz: Change rq->nr_running to always use wrappers
authorKirill Tkhai <tkhai@yandex.ru>
Thu, 8 May 2014 23:00:14 +0000 (03:00 +0400)
committerIngo Molnar <mingo@kernel.org>
Thu, 22 May 2014 09:16:33 +0000 (11:16 +0200)
commit1920dbfd931026c80de9712dd9ae75312632a0e9
tree2067c7c82f389c91c325d04797ced6b851ba1691
parent7d42c8ec37a163ad60606aebc2d5ac38e77498a8
sched, nohz: Change rq->nr_running to always use wrappers

Sometimes ->nr_running may cross 2 but interrupt is not being
sent to rq's cpu. In this case we don't reenable the timer.
Looks like this may be the reason for rare unexpected effects,
if nohz is enabled.

Patch replaces all places of direct changing of nr_running
and makes add_nr_running() caring about crossing border.

Signed-off-by: Kirill Tkhai <tkhai@yandex.ru>
Acked-by: Frederic Weisbecker <fweisbec@gmail.com>
Signed-off-by: Peter Zijlstra <peterz@infradead.org>
Link: http://lkml.kernel.org/r/20140508225830.2469.97461.stgit@localhost
Signed-off-by: Ingo Molnar <mingo@kernel.org>
kernel/sched/deadline.c
kernel/sched/fair.c
kernel/sched/rt.c
kernel/sched/sched.h
kernel/sched/stop_task.c