Re: [GIT PULL rcu/next] RCU commits for 5.1
From: Ingo Molnar
Date: Wed Feb 13 2019 - 02:39:39 EST
* Paul E. McKenney <paulmck@xxxxxxxxxxxxx> wrote:
> Hello, Ingo,
>
> This pull request contains the following changes:
>
> 1. Additional cleanups after RCU flavor consolidation.
>
> http://lkml.kernel.org/r/20190109211830.GA30595@xxxxxxxxxxxxx
>
> 2. Grace-period forward-progress cleanups and improvements.
>
> http://lkml.kernel.org/r/20190109212816.GA32282@xxxxxxxxxxxxx
>
> 3. Documentation updates.
>
> http://lkml.kernel.org/r/20190109213302.GA1723@xxxxxxxxxxxxx
>
> 4. Miscellaneous fixes.
>
> http://lkml.kernel.org/r/20190109214115.GA2835@xxxxxxxxxxxxx
>
> 5. spin_is_locked() conversions to lockdep.
>
> http://lkml.kernel.org/r/20190109222120.GA13904@xxxxxxxxxxxxx
>
> 6. SPDX changes to RCU source and header files.
>
> http://lkml.kernel.org/r/20190207141700.GA11106@xxxxxxxxxxxxx
>
> 7. SRCU updates.
>
> http://lkml.kernel.org/r/20190109214506.GA4747@xxxxxxxxxxxxx
>
> 8. Torture-test updates, including nolibc updates and moving
> nolibc to tools/include.
>
> http://lkml.kernel.org/r/20190109214944.GA5610@xxxxxxxxxxxxx
>
> 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 e7ffb4eb9a6d89678e7f62461737899f88dab64e
>
> for you to fetch changes up to e7ffb4eb9a6d89678e7f62461737899f88dab64e:
>
> Merge branches 'doc.2019.01.26a', 'fixes.2019.01.26a', 'sil.2019.01.26a', 'spdx.2019.02.09a', 'srcu.2019.01.26a' and 'torture.2019.01.26a' into HEAD (2019-02-09 08:47:52 -0800)
>
> Note that the diffstat output omits the addition of tree_stall.h, so is
> overly optimistic. :-/
>
> ----------------------------------------------------------------
> Joel Fernandes (Google) (1):
> rcu: Add sparse check to rcu_assign_pointer()
>
> Junchang Wang (2):
> doc: Fix outdated links
> RCU/torture.txt: Remove section MODULE PARAMETERS
>
> Paul E. McKenney (59):
> sched: Replace call_rcu_sched() with call_rcu()
> sched: Replace synchronize_sched() with synchronize_rcu()
> rcu: Rename and comment changes due to only one rcuo kthread per CPU
> rcu: Make expedited IPI handler return after handling critical section
> rcu: Inline force_quiescent_state() into rcu_force_quiescent_state()
> rcu: Eliminate RCU_BH_FLAVOR and RCU_SCHED_FLAVOR
> rcu: Inline rcu_kthread_do_work() into its sole remaining caller
> rcu: Determine expedited-GP IPI handler at build time
> rcu: Consolidate PREEMPT and !PREEMPT synchronize_rcu_expedited()
> rcu: Consolidate PREEMPT and !PREEMPT synchronize_rcu()
> rcu: Inline _synchronize_rcu_expedited() into synchronize_rcu_expedited()
> rcu: Discard separate per-CPU callback counts
> rcu: Remove wrapper definitions for obsolete RCU update functions
> rcu: Accommodate zero jiffies_till_first_fqs and kthread kicking
> rcu: Move rcu_cpu_kthread_task to rcu_data structure
> rcu: Move rcu_cpu_kthread_status to rcu_data structure
> rcu: Remove unused rcu_cpu_kthread_loops per-CPU variable
> rcu: Move rcu_cpu_has_work to rcu_data structure
> rcu: Remove unused rcu_cpu_kthread_cpu per-CPU variable
> rcu: Update NOCB comments
> rcu: Improve diagnostics for failed RCU grace-period start
> rcu: Protect rcu_check_gp_kthread_starvation() access to ->gp_flags
> rcu: Add sysrq rcu_node-dump capability
> Merge branches 'consolidate.2019.01.26a' and 'fwd.2019.01.26a' into HEAD
> doc: Now jiffies_till_sched_qs solicits help from cond_resched()
> doc: CPU-hotplug notifiers cannot invoke synchronize_srcu() or srcu_barrier()
> rcu: Docbook for rcu_head_init() and rcu_head_after_call_rcu()
> rcu: Rename rcu_check_callbacks() to rcu_sched_clock_irq()
> rcu: Rename rcu_process_callbacks() to rcu_core() for Tree RCU
> rcu: Remove preemption disabling from expedited CPU selection
> rcu: Repair rcu_nmi_exit() docbook header
> rcu: Fix obsolete DYNTICK_IRQ_NONIDLE comment
> include/asm-generic: Remove spin_is_locked() comment
> virt/kvm: Replace spin_is_locked() with lockdep
> srcu: Check for invalid idx argument in srcu_read_unlock()
> rcutorture: Record grace periods in forward-progress histogram
> torture: Explain and simplify odd "for" loop in mkinitrd.sh
> rcutorture: Add grace period after CPU offline
> rcuperf: Stop abusing IS_ENABLED()
> rcu/rcu.h: Convert to SPDX license identifier
> rcu/rcuperf: Convert to SPDX license identifier
> rcu/rcu_segcblist: Convert to SPDX license identifier
> rcu/rcutorture: Convert to SPDX license identifier
> rcu/srcu: Convert to SPDX license identifier
> rcu/sync: Convert to SPDX license identifier
> rcu/tiny: Convert to SPDX license identifier
> rcu/tree: Convert to SPDX license identifier
> rcu/update: Convert to SPDX license identifier
> linux/rcu_node_tree: Convert to SPDX license identifier
> linux/rcupdate: Convert to SPDX license identifier
> linux/rcu_segcblist: Convert to SPDX license identifier
> linux/rcu_sync: Convert to SPDX license identifier
> linux/rcutiny: Convert to SPDX license identifier
> linux/rcutree: Convert to SPDX license identifier
> linux/srcu: Convert to SPDX license identifier
> torture: Convert to SPDX license identifier
> linux/torture: Convert to SPDX license identifier
> locking/locktorture: Convert to SPDX license identifier
> Merge branches 'doc.2019.01.26a', 'fixes.2019.01.26a', 'sil.2019.01.26a', 'spdx.2019.02.09a', 'srcu.2019.01.26a' and 'torture.2019.01.26a' into HEAD
>
> Sebastian Andrzej Siewior (1):
> srcu: Remove srcu_queue_delayed_work_on()
>
> Willy Tarreau (5):
> rcutorture/nolibc: Fix the clobbered registers in the MIPS syscall definition
> rcutorture/nolibc: Fix some poor indentation and alignment
> rcutorture/nolibc: Add a bit of documentation to explain how to use nolibc
> tools headers: Move the nolibc header from rcutorture to tools/include/nolibc/
> MAINTAINERS: Add myself as the maintainer for the nolibc header file(s)
>
> Zhang, Jun (2):
> rcu: Do RCU GP kthread self-wakeup from softirq and interrupt
> rcu: Prevent needless ->gp_seq_needed update in __note_gp_changes()
>
> .../Expedited-Grace-Periods/ExpSchedFlow.svg | 18 +-
> .../Expedited-Grace-Periods.html | 26 +-
> .../Memory-Ordering/Tree-RCU-Memory-Ordering.html | 6 +-
> .../TreeRCU-callback-invocation.svg | 2 +-
> .../RCU/Design/Memory-Ordering/TreeRCU-gp.svg | 8 +-
> .../RCU/Design/Memory-Ordering/TreeRCU-qs.svg | 6 +-
> .../RCU/Design/Requirements/Requirements.html | 20 +-
> Documentation/RCU/stallwarn.txt | 15 +-
> Documentation/RCU/torture.txt | 169 +------------
> Documentation/RCU/whatisRCU.txt | 4 +-
> Documentation/admin-guide/kernel-parameters.txt | 32 ++-
> MAINTAINERS | 6 +
> include/asm-generic/bug.h | 3 -
> include/linux/rcu_node_tree.h | 17 +-
> include/linux/rcu_segcblist.h | 17 +-
> include/linux/rcu_sync.h | 15 +-
> include/linux/rcupdate.h | 91 +------
> include/linux/rcutiny.h | 17 +-
> include/linux/rcutree.h | 19 +-
> include/linux/srcu.h | 18 +-
> include/linux/srcutiny.h | 17 +-
> include/linux/srcutree.h | 20 +-
> include/linux/torture.h | 20 +-
> kernel/locking/locktorture.c | 21 +-
> kernel/rcu/rcu.h | 21 +-
> kernel/rcu/rcu_segcblist.c | 17 +-
> kernel/rcu/rcu_segcblist.h | 17 +-
> kernel/rcu/rcuperf.c | 27 +--
> kernel/rcu/rcutorture.c | 59 +++--
> kernel/rcu/srcutiny.c | 17 +-
> kernel/rcu/srcutree.c | 72 ++----
> kernel/rcu/sync.c | 15 +-
> kernel/rcu/tiny.c | 19 +-
> kernel/rcu/tree.c | 267 +++++++++++++--------
> kernel/rcu/tree.h | 53 ++--
> kernel/rcu/tree_exp.h | 201 ++++++----------
> kernel/rcu/tree_plugin.h | 238 +++++-------------
> kernel/rcu/update.c | 17 +-
> kernel/sched/cpufreq.c | 4 +-
> kernel/sched/cpufreq_schedutil.c | 2 +-
> kernel/sched/sched.h | 2 +-
> kernel/sched/topology.c | 4 +-
> kernel/time/timer.c | 2 +-
> kernel/torture.c | 25 +-
> .../rcutorture/bin => include/nolibc}/nolibc.h | 118 +++++++--
> tools/testing/selftests/rcutorture/bin/mkinitrd.sh | 27 ++-
> virt/kvm/kvm_main.c | 2 +-
> 47 files changed, 640 insertions(+), 1173 deletions(-)
> rename tools/{testing/selftests/rcutorture/bin => include/nolibc}/nolibc.h (94%)
Pulled, thanks a lot Paul!
Ingo