rcutorture: Add cond_resched() to forward-progress free-up loop
authorPaul E. McKenney <paulmck@linux.ibm.com>
Tue, 9 Apr 2019 17:08:18 +0000 (10:08 -0700)
committerPaul E. McKenney <paulmck@linux.ibm.com>
Tue, 28 May 2019 16:06:09 +0000 (09:06 -0700)
commit140e53f20b159722903f0c87358bcd809aa9767e
treedd46718fdaaa666ea8c527c40fd671e1675bd98f
parentdd064c35991435efc4da2a6c551601f6e80f2611
rcutorture: Add cond_resched() to forward-progress free-up loop

The rcu_torture_fwd_prog_cbfree() function frees callbacks used during
rcutorture's call_rcu() forward-progress test, but does so in a tight
loop.  This could cause problems given a very long list of callbacks to be
freed, and actual testing produces lists with as many as 25M callbacks.
This commit therefore adds a cond_resched() to this loop.  While in
the area, this commit also rearranges the lock releases to look a bit
more sane.

Signed-off-by: Paul E. McKenney <paulmck@linux.ibm.com>
kernel/rcu/rcutorture.c