rcutorture: Add grace period after CPU offline
authorPaul E. McKenney <paulmck@linux.ibm.com>
Mon, 10 Dec 2018 17:44:52 +0000 (09:44 -0800)
committerPaul E. McKenney <paulmck@linux.ibm.com>
Fri, 25 Jan 2019 23:37:10 +0000 (15:37 -0800)
commit3a6cb58f159e64241b2af9374acad41a70939349
treeada940f453392a61ee945b23974647841ee65700
parent0d8a9ea9764a0e34e17e3b80a2be3855de239d6e
rcutorture: Add grace period after CPU offline

Beyond a certain point in the CPU-hotplug offline process, timers get
stranded on the outgoing CPU, and won't fire until that CPU comes back
online, which might well be never.  This commit therefore adds a hook
in torture_onoff_init() that is invoked from torture_offline(), which
rcutorture uses to occasionally wait for a grace period.  This should
result in failures for RCU implementations that rely on stranded timers
eventually firing in the absence of the CPU coming back online.

Reported-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: Paul E. McKenney <paulmck@linux.ibm.com>
include/linux/torture.h
kernel/locking/locktorture.c
kernel/rcu/rcutorture.c
kernel/torture.c