Re: [GIT PULL rcu/next] RCU commits for 4.9
From: Ingo Molnar
Date: Fri Sep 16 2016 - 03:09:48 EST
* Paul E. McKenney <paulmck@xxxxxxxxxxxxxxxxxx> wrote:
> Hello, Ingo,
>
> This series contains the following changes:
>
> 1. Documentation updates, again just some simple changes.
> Yes, I am getting behind on design-level updates. :-/
>
> http://lkml.kernel.org/g/20160822151413.GA6337@xxxxxxxxxxxxxxxxxx
>
> 2. Expedited grace-period changes, most notably avoiding having
> user threads drive expedited grace periods, using a workqueue
> instead.
>
> http://lkml.kernel.org/g/20160822152239.GA7153@xxxxxxxxxxxxxxxxxx
>
> 3. Miscellaneous fixes, including a performance fix for lists
> that was sent with the lists modifications (second URL below).
> I am holding the lists debug-enhancement modifications for the
> next merge window, as there doesn't seem to be much energy
> around providing fixes, and I cannot supply that energy for
> this merge window. (I will make time as needed during the next
> merge window.)
>
> http://lkml.kernel.org/g/20160822152956.GA8160@xxxxxxxxxxxxxxxxxx
> http://lkml.kernel.org/g/20160822154501.GA10364@xxxxxxxxxxxxxxxxxx
>
> 4. CPU hotplug updates, most notably providing exact CPU-online
> tracking for RCU. This will in turn allow removal of the
> checks supporting RCU's prior heuristic that was based on the
> assumption that CPUs would take no longer than one jiffy to
> come online.
>
> http://lkml.kernel.org/g/20160822153825.GA9242@xxxxxxxxxxxxxxxxxx
>
> 5. Torture-test updates.
>
> http://lkml.kernel.org/g/20160822155423.GA11367@xxxxxxxxxxxxxxxxxx
>
> All of these changes have been subjected to 0day Test Robot and -next
> testing, and are available in the git repository at:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu.git for-mingo
>
> for you to fetch changes up to d74b62bc3241af8ebf5141f5b12e89d9d7f341e1:
>
> Merge branches 'doc.2016.08.22c', 'exp.2016.08.22c', 'fixes.2016.09.14a', 'hotplug.2016.08.22c' and 'torture.2016.08.22c' into HEAD (2016-09-14 12:58:49 -0700)
>
> ----------------------------------------------------------------
> Chris Wilson (1):
> list: Expand list_first_entry_or_null()
>
> Ding Tianhong (1):
> rcu: Fix soft lockup for rcu_nocb_kthread
>
> Jisheng Zhang (1):
> rcu: Use rcu_gp_kthread_wake() to wake up grace period kthreads
>
> Paul E. McKenney (13):
> documentation: Record reason for rcu_head two-byte alignment
> rcu: Consolidate expedited grace period machinery
> rcu: Drive expedited grace periods from workqueue
> rcu: Stop disabling expedited RCU CPU stall warnings
> rcu: Make expedited RCU CPU stall warnings respond to controls
> rcu: Exclude RCU-offline CPUs from expedited grace periods
> rcu: Use RCU's online-CPU state for expedited IPI retry
> sched: Make wake_up_nohz_cpu() handle CPUs going offline
> rcu: Avoid redundant quiescent-state chasing
> rcu: Provide exact CPU-online tracking for RCU
> torture: Convert torture_shutdown() to hrtimer
> torture: Add task state to writer-task stall printk()s
> Merge branches 'doc.2016.08.22c', 'exp.2016.08.22c', 'fixes.2016.09.14a', 'hotplug.2016.08.22c' and 'torture.2016.08.22c' into HEAD
>
> Paul Gortmaker (1):
> rcu: Don't use modular infrastructure in non-modular code
>
> Sebastian Andrzej Siewior (2):
> cpu/hotplug: Get rid of CPU_STARTING reference
> rcutorture: Convert to hotplug state machine
>
> SeongJae Park (4):
> rcutorture: Remove outdated config option description
> rcutorture: Print out barrier error as document says
> rcuperf: Consistently insert space between flag and message
> torture: TOROUT_STRING(): Insert a space between flag and message
>
> .../RCU/Design/Requirements/Requirements.html | 22 ++++
> Documentation/RCU/torture.txt | 15 ---
> include/linux/list.h | 7 +-
> include/linux/rcupdate.h | 1 +
> include/linux/torture.h | 2 +-
> kernel/cpu.c | 1 +
> kernel/rcu/rcuperf.c | 7 +-
> kernel/rcu/rcutorture.c | 62 ++++-------
> kernel/rcu/tree.c | 44 ++++++--
> kernel/rcu/tree.h | 1 +
> kernel/rcu/tree_exp.h | 124 +++++++++++++--------
> kernel/rcu/tree_plugin.h | 1 +
> kernel/rcu/tree_trace.c | 7 +-
> kernel/rcu/update.c | 3 +-
> kernel/sched/core.c | 7 ++
> kernel/torture.c | 27 +++--
> 16 files changed, 193 insertions(+), 138 deletions(-)
Pulled, thanks a lot Paul!
Ingo