Commit 6f81bd6a authored by Paul E. McKenney's avatar Paul E. McKenney
Browse files

rcutorture: Print message before invoking ->cb_barrier()



The various ->cb_barrier() functions, for example, rcu_barrier(),
sometimes cause rcutorture hangs.  But currently, the last console
message is the unenlightening "Stopping rcu_torture_stats".  This commit
therefore prints a message of the form "rcu_torture_cleanup: Invoking
rcu_barrier+0x0/0x1e0()" to help point people in the right direction.

Signed-off-by: default avatarPaul E. McKenney <paulmck@kernel.org>
parent da123016
Loading
Loading
Loading
Loading
+6 −2
Original line number Diff line number Diff line
@@ -2905,8 +2905,10 @@ rcu_torture_cleanup(void)
	int i;

	if (torture_cleanup_begin()) {
		if (cur_ops->cb_barrier != NULL)
		if (cur_ops->cb_barrier != NULL) {
			pr_info("%s: Invoking %pS().\n", __func__, cur_ops->cb_barrier);
			cur_ops->cb_barrier();
		}
		return;
	}
	if (!cur_ops) {
@@ -2961,8 +2963,10 @@ rcu_torture_cleanup(void)
	 * Wait for all RCU callbacks to fire, then do torture-type-specific
	 * cleanup operations.
	 */
	if (cur_ops->cb_barrier != NULL)
	if (cur_ops->cb_barrier != NULL) {
		pr_info("%s: Invoking %pS().\n", __func__, cur_ops->cb_barrier);
		cur_ops->cb_barrier();
	}
	if (cur_ops->cleanup != NULL)
		cur_ops->cleanup();