浏览代码

rcu: Make expedited grace periods resolve stall-warning ties

Currently, if a grace period ends just as the stall-warning timeout
fires, an empty stall warning will be printed.  This is not helpful,
so this commit avoids these useless warnings by rechecking completion
after awakening in synchronize_sched_expedited_wait().

Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Paul E. McKenney 9 年之前
父节点
当前提交
73f36f9de8
共有 1 个文件被更改,包括 1 次插入1 次删除
  1. 1 1
      kernel/rcu/tree.c

+ 1 - 1
kernel/rcu/tree.c

@@ -3757,7 +3757,7 @@ static void synchronize_sched_expedited_wait(struct rcu_state *rsp)
 				rsp->expedited_wq,
 				rsp->expedited_wq,
 				sync_rcu_preempt_exp_done(rnp_root),
 				sync_rcu_preempt_exp_done(rnp_root),
 				jiffies_stall);
 				jiffies_stall);
-		if (ret > 0)
+		if (ret > 0 || sync_rcu_preempt_exp_done(rnp_root))
 			return;
 			return;
 		if (ret < 0) {
 		if (ret < 0) {
 			/* Hit a signal, disable CPU stall warnings. */
 			/* Hit a signal, disable CPU stall warnings. */