Re: [PATCH] fix boot-time hangs from PREEMPT_RCU and NO_HZ

From: Andrew Morton
Date: Fri Feb 29 2008 - 00:02:45 EST


On Thu, 28 Feb 2008 20:43:29 -0800 "Paul E. McKenney" <paulmck@xxxxxxxxxxxxxxxxxx> wrote:

> This is a repost of http://lkml.org/lkml/2008/2/2/11. It is needed in
> 2.6.25 in order to prevent boot-time hangs when running with PREEMPT_RCU
> and NO_HZ.
>
> Preemptible RCU can get stuck if a CPU goes idle and NO_HZ is set. The
> idle CPU will not progress the RCU through its grace period, so that
> any subsequent synchronize_rcu() invocations can hang until such time
> as a process starts running on the idle CPU. If no such process runs,
> subsequent synchronize_rcu() invocations will hang indefinitely, in turn
> hanging the system. Without this patch, one of Steve Rostedt's boxes
> hangs on boot when PREEMPT_RCU and NO_HZ are set. That same box boots
> fine with this patch.
>
> Note: This patch came directly from the -rt patch where it has been tested
> for several months.
>
> Andrew, could you please apply this?

I already have it, via git-sched. Presumably Ingo has it lined up for the
next sched-related merge.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/