* Paul E. McKenney <[email protected]> wrote:

> Hello, Ingo,
> 
> This pull request contains a couple of fixes for RCU regressions:
> 
> 1.    Complete the work of commit dd56af42bd82 (rcu: Eliminate deadlock
>       between CPU hotplug and expedited grace periods), which was
>       intended to allow synchronize_sched_expedited() to be safely
>       used when holding locks acquired by CPU-hotplug notifiers.
>       This commit makes the put_online_cpus() avoid the deadlock
>       instead of just handling the get_online_cpus().
> 
> 2.    Complete the work of commit 35ce7f29a44a (rcu: Create rcuo
>       kthreads only for onlined CPUs), which was intended to allow
>       RCU to avoid allocating unneeded kthreads on systems where the
>       firmware says that there are more CPUs than are really present.
>       This commit makes rcu_barrier() aware of the mismatch, so that
>       it doesn't hang waiting for non-existent CPUs.  (And yes, I do
>       need to force this non-existent-CPU condition into my testing.)
> 
> Both of these changes have been tested by the submitters and have been
> exposed to -next testing.  These changes are needed to avoid system hangs,
> and these system hangs have actually occurred during mainline testing.
> 
> These changes are available in the git repository at:
> 
>   git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu.git 
> urgent-for-mingo
> 
> for you to fetch changes up to d7e29933969e5ca7c112ce1368a07911f4485dc2:
> 
>   rcu: Make rcu_barrier() understand about missing rcuo kthreads (2014-10-28 
> 13:24:13 -0700)
> 
> ----------------------------------------------------------------
> Paul E. McKenney (2):
>       rcu: More on deadlock between CPU hotplug and expedited grace periods
>       rcu: Make rcu_barrier() understand about missing rcuo kthreads
> 
>  include/trace/events/rcu.h | 18 +++++++++---------
>  kernel/cpu.c               | 14 +++++++++++++-
>  kernel/rcu/tree.c          | 15 ++++++++++-----
>  kernel/rcu/tree.h          |  1 +
>  kernel/rcu/tree_plugin.h   | 33 +++++++++++++++++++++++++++++++++
>  5 files changed, 66 insertions(+), 15 deletions(-)
> 

Pulled, thanks a lot Paul!

        Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to