rcu/nocb: Print segment lengths in show_rcu_nocb_gp_state()
authorPaul E. McKenney <paulmck@kernel.org>
Wed, 8 Jan 2025 19:08:42 +0000 (11:08 -0800)
committerBoqun Feng <boqun.feng@gmail.com>
Wed, 5 Mar 2025 02:44:28 +0000 (18:44 -0800)
commit69381f38284f107e5e55bff7e51ecd1ef7e3ced8
treed5f6d46a3f7ccf0449b81253d4b1fff512861f63
parent23c22d91561dd555d07381fb1f567539769c2ea0
rcu/nocb: Print segment lengths in show_rcu_nocb_gp_state()

Analysis of an rcutorture callback-based forward-progress test failure was
hampered by the lack of ->cblist segment lengths.  This commit therefore
adds this information, so that what would have been ".W85620.N." (there
are some callbacks waiting for grace period sequence number 85620 and
some number more that have not yet been assigned to a grace period)
now prints as ".W2(85620).N6." (there are 2 callbacks waiting for grace
period 85620 and 6 not yet assigned to a grace period).  Note that
"D" (done), "N" (next and not yet assigned to a grace period, and "B"
(bypass, also not yet assigned to a grace period) have just the number
of callbacks without the parenthesized grace-period sequence number.

In contrast, "W" (waiting for the current grace period) and "R" (ready
to wait for the next grace period to start) both have parenthesized
grace-period sequence numbers.

Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
Signed-off-by: Boqun Feng <boqun.feng@gmail.com>
kernel/rcu/tree_nocb.h