rcutorture: Dump grace-period state upon rtort_pipe_count incidents
authorPaul E. McKenney <paulmck@kernel.org>
Mon, 15 May 2023 16:18:20 +0000 (09:18 -0700)
committerPaul E. McKenney <paulmck@kernel.org>
Fri, 14 Jul 2023 22:04:09 +0000 (15:04 -0700)
The rtort_pipe_count WARN() indicates that grace periods were unable
to invoke all callbacks during a stutter_wait() interval.  But it is
sometimes helpful to have a bit more information as to why.  This commit
therefore invokes show_rcu_gp_kthreads() immediately before that WARN()
in order to dump out some relevant information.

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

index 147551c23baf03e273fcf0380678d8a5e3822a72..d291a1438c30e1f833b8766acabc9da0fd8b0bd5 100644 (file)
@@ -1581,6 +1581,7 @@ rcu_torture_writer(void *arg)
                                    rcu_access_pointer(rcu_torture_current) !=
                                    &rcu_tortures[i]) {
                                        tracing_off();
+                                       show_rcu_gp_kthreads();
                                        WARN(1, "%s: rtort_pipe_count: %d\n", __func__, rcu_tortures[i].rtort_pipe_count);
                                        rcu_ftrace_dump(DUMP_ALL);
                                }