]> git.karo-electronics.de Git - karo-tx-linux.git/commit
rcu: Provide OOM handler to motivate lazy RCU callbacks
authorPaul E. McKenney <paul.mckenney@linaro.org>
Tue, 12 Jun 2012 00:39:43 +0000 (17:39 -0700)
committerPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Fri, 6 Jul 2012 13:01:50 +0000 (06:01 -0700)
commit8732d57a8ce079472f9813fc93b89b7a37d74eb6
tree5cfdefb2468debe3b9108a816b9dcf66172e7b2d
parenta96434baaef14b6adb3ecc3074a16961be02336d
rcu: Provide OOM handler to motivate lazy RCU callbacks

In kernels built with CONFIG_RCU_FAST_NO_HZ=y, CPUs can accumulate a
large number of lazy callbacks, which as the name implies will be slow
to be invoked.  This can be a problem on small-memory systems, where the
default 6-second sleep for CPUs having only lazy RCU callbacks could well
be fatal.  This commit therefore installs an OOM hander that ensures that
every CPU with non-lazy callbacks has at least one non-lazy callback,
in turn ensuring timely advancement for these callbacks.

Signed-off-by: Paul E. McKenney <paul.mckenney@linaro.org>
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
kernel/rcutree.h
kernel/rcutree_plugin.h