Re: [GIT PULL rcu/next] RCU commits for 4.4

From: Ingo Molnar
Date: Mon Oct 19 2015 - 04:15:33 EST



* Paul E. McKenney <paulmck@xxxxxxxxxxxxxxxxxx> wrote:

> Hello, Ingo,
>
> The changes in this series include the following:
>
> 1. Miscellaneous fixes. These were posted to LKML at
> https://lkml.org/lkml/2015/10/6/496.
>
> 2. Improvements to expedited grace periods. These were posted to
> LKML at https://lkml.org/lkml/2015/10/6/541.
>
> 3. Documentation updates. These were posted to LKML at
> https://lkml.org/lkml/2015/10/6/560.
>
> 4. Performance improvements to and locktorture tests for percpu-rwsem.
> These were posted to LKML at https://lkml.org/lkml/2015/10/6/576.
>
> 5. Torture-test changes. These were posted to LKML at
> https://lkml.org/lkml/2015/10/6/590.
>
> 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 39cd2dd39a8b92ce91c4dad95f6e979c946a3942:
>
> Merge branches 'doc.2015.10.06a', 'percpu-rwsem.2015.10.06a' and 'torture.2015.10.06a' into HEAD (2015-10-07 16:06:25 -0700)
>
> ----------------------------------------------------------------
> Boqun Feng (3):
> rcu: Use rcu_callback_t in call_rcu*() and friends
> rcu: Use call_rcu_func_t to replace explicit type equivalents
> rcu: Don't disable preemption for Tiny and Tree RCU readers
>
> Davidlohr Bueso (2):
> sched: Export sched_setscheduler_nocheck
> locktorture: Support rtmutex torturing
>
> Jason A. Donenfeld (1):
> documentation: Correct doc to use rcu_dereference_protected
>
> Oleg Nesterov (9):
> rcu: Create rcu_sync infrastructure
> rcu_sync: Simplify rcu_sync using new rcu_sync_ops structure
> rcu_sync: Add CONFIG_PROVE_RCU checks
> rcu_sync: Introduce rcu_sync_dtor()
> locking/percpu-rwsem: Make percpu_free_rwsem() after kzalloc() safe
> locking/percpu-rwsem: Make use of the rcu_sync infrastructure
> locking/percpu-rwsem: Fix the comments outdated by rcu_sync
> locking/percpu-rwsem: Clean up the lockdep annotations in percpu_down_read()
> rcu_sync: Cleanup the CONFIG_PROVE_RCU checks
>
> Patrick Marlier (1):
> rculist: Make list_entry_rcu() use lockless_dereference()
>
> Paul E. McKenney (38):
> rcu: Use rsp->expedited_wq instead of sync_rcu_preempt_exp_wq
> rcu: Move rcu_report_exp_rnp() to allow consolidation
> rcu: Consolidate tree setup for synchronize_rcu_expedited()
> rcu: Use single-stage IPI algorithm for RCU expedited grace period
> rcu: Move synchronize_sched_expedited() to combining tree
> rcu: Rename qs_pending to core_needs_qs
> rcu: Invert passed_quiesce and rename to cpu_no_qs
> rcu: Make ->cpu_no_qs be a union for aggregate OR
> rcu: Eliminate panic when silly boot-time fanout specified
> rcu: Add online/offline info to stall warning message
> rcu: Move preemption disabling out of __srcu_read_lock()
> rcu: Correct comment for values of ->gp_state field
> rcu: Add rcu_pointer_handoff()
> rcu: Remove deprecated rcu_lockdep_assert()
> rculist: Use WRITE_ONCE() when deleting from reader-visible list
> documentation: No acquire/release for RCU readers
> documentation: Call out slow consoles as cause of stall warnings
> documentation: Catch up list of torture_type options
> documentation: Add lockless_dereference()
> locking/percpu-rwsem: Export symbols for locktorture
> locktorture: Add torture tests for percpu_rwsem
> torture: Consolidate cond_resched_rcu_qs() into stutter_wait()
> rcutorture: Fix module unwind when bad torture_type specified
> rcutorture: Fix unused-function warning for torturing_tasks()
> torture: Forgive non-plural arguments
> locktorture: Fix module unwind when bad torture_type specified
> rcu: Switch synchronize_sched_expedited() to IPI
> rcu: Stop silencing lockdep false positive for expedited grace periods
> rcu: Stop excluding CPU hotplug in synchronize_sched_expedited()
> cpu: Remove try_get_online_cpus()
> rcu: Prepare for consolidating expedited CPU selection
> rcu: Consolidate expedited CPU selection
> rcu: Add online/offline info to expedited stall warning message
> rcu: Add tasks to expedited stall-warning messages
> rcu: Enable stall warnings for synchronize_rcu_expedited()
> rcu: Better hotplug handling for synchronize_sched_expedited()
> Merge branches 'fixes.2015.10.06a' and 'exp.2015.10.07a' into HEAD
> Merge branches 'doc.2015.10.06a', 'percpu-rwsem.2015.10.06a' and 'torture.2015.10.06a' into HEAD
>
> Petr Mladek (1):
> rcu: Finish folding ->fqs_state into ->gp_state
>
> Documentation/RCU/stallwarn.txt | 7 +
> Documentation/RCU/torture.txt | 39 +-
> Documentation/RCU/trace.txt | 32 +-
> Documentation/RCU/whatisRCU.txt | 6 +-
> Documentation/kernel-parameters.txt | 9 +-
> Documentation/locking/locktorture.txt | 3 +
> Documentation/memory-barriers.txt | 12 +-
> include/linux/cpu.h | 2 -
> include/linux/list.h | 5 +-
> include/linux/list_bl.h | 5 +-
> include/linux/list_nulls.h | 3 +-
> include/linux/percpu-rwsem.h | 3 +-
> include/linux/rcu_sync.h | 86 ++++
> include/linux/rculist.h | 5 +-
> include/linux/rcupdate.h | 59 +--
> include/linux/rcutiny.h | 3 +-
> include/linux/rcutree.h | 2 +-
> include/linux/sched.h | 10 +-
> include/linux/srcu.h | 5 +-
> kernel/cpu.c | 13 -
> kernel/exit.c | 2 +
> kernel/locking/locktorture.c | 164 ++++++-
> kernel/locking/percpu-rwsem.c | 90 ++--
> kernel/rcu/Makefile | 2 +-
> kernel/rcu/rcutorture.c | 16 +-
> kernel/rcu/srcu.c | 4 +-
> kernel/rcu/sync.c | 223 +++++++++
> kernel/rcu/tiny.c | 8 +-
> kernel/rcu/tree.c | 512 ++++++++++++++++-----
> kernel/rcu/tree.h | 69 ++-
> kernel/rcu/tree_plugin.h | 437 ++++++++++--------
> kernel/rcu/tree_trace.c | 10 +-
> kernel/rcu/update.c | 2 +-
> kernel/sched/core.c | 1 +
> kernel/torture.c | 1 +
> tools/testing/selftests/rcutorture/bin/kvm.sh | 6 +-
> .../selftests/rcutorture/configs/lock/CFLIST | 4 +-
> .../selftests/rcutorture/configs/lock/LOCK05 | 6 +
> .../selftests/rcutorture/configs/lock/LOCK05.boot | 1 +
> .../selftests/rcutorture/configs/lock/LOCK06 | 6 +
> .../selftests/rcutorture/configs/lock/LOCK06.boot | 1 +
> 41 files changed, 1331 insertions(+), 543 deletions(-)
> create mode 100644 include/linux/rcu_sync.h
> create mode 100644 kernel/rcu/sync.c
> create mode 100644 tools/testing/selftests/rcutorture/configs/lock/LOCK05
> create mode 100644 tools/testing/selftests/rcutorture/configs/lock/LOCK05.boot
> create mode 100644 tools/testing/selftests/rcutorture/configs/lock/LOCK06
> create mode 100644 tools/testing/selftests/rcutorture/configs/lock/LOCK06.boot

Pulled into tip:core/rcu, thanks a lot Paul!

Ingo
--
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/