Skip to content

Commit abaf132

Browse files
paulmckrcuNeeraj Upadhyay
authored andcommitted
rcuscale: Make all writer tasks report upon hang
This commit causes all writer tasks to provide a brief report after a hang has been reported, spaced at one-second intervals. Signed-off-by: "Paul E. McKenney" <[email protected]> Signed-off-by: Neeraj Upadhyay <[email protected]>
1 parent 1137794 commit abaf132

File tree

1 file changed

+6
-0
lines changed

1 file changed

+6
-0
lines changed

kernel/rcu/rcuscale.c

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -483,6 +483,7 @@ rcu_scale_writer(void *arg)
483483
unsigned long jdone;
484484
long me = (long)arg;
485485
struct rcu_head *rhp = NULL;
486+
bool selfreport = false;
486487
bool started = false, done = false, alldone = false;
487488
u64 t;
488489
DEFINE_TORTURE_RANDOM(tr);
@@ -593,6 +594,11 @@ rcu_scale_writer(void *arg)
593594
cur_ops->stats();
594595
}
595596
}
597+
if (!selfreport && time_after(jiffies, jdone + HZ * (70 + me))) {
598+
pr_info("%s: Writer %ld self-report: started %d done %d/%d->%d i %d jdone %lu.\n",
599+
__func__, me, started, done, writer_done[me], atomic_read(&n_rcu_scale_writer_finished), i, jiffies - jdone);
600+
selfreport = true;
601+
}
596602
if (started && !alldone && i < MAX_MEAS - 1)
597603
i++;
598604
rcu_scale_wait_shutdown();

0 commit comments

Comments
 (0)