From: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
To: mingo@kernel.org
Cc: linux-kernel@vger.kernel.org, bobby.prani@gmail.com,
oleg@redhat.com, ard.biesheuvel@linaro.org, joe@perches.com,
rostedt@goodmis.org, dave@stgolabs.net
Subject: [GIT PULL rcu/next] RCU commits for 3.18
Date: Mon, 22 Sep 2014 14:46:03 -0700 [thread overview]
Message-ID: <20140922214603.GA6356@linux.vnet.ibm.com> (raw)
Hello, Ingo,
The changes in this series include:
1. Update RCU documentation. These were posted to LKML at
https://lkml.org/lkml/2014/8/28/378.
2. Miscellaneous fixes. These were posted to LKML at
https://lkml.org/lkml/2014/8/28/386. An additional fix that
eliminates a documented (but now inconvenient) deadlock between
RCU hotplug and expedited grace periods was posted at
https://lkml.org/lkml/2014/8/28/573.
3. Changes related to No-CBs CPUs and NO_HZ_FULL. These were posted
to LKML at https://lkml.org/lkml/2014/8/28/412.
4. Torture-test updates. These were posted to LKML at
https://lkml.org/lkml/2014/8/28/546 and at
https://lkml.org/lkml/2014/9/11/1114.
5. RCU-tasks implementation. These were posted to LKML at
https://lkml.org/lkml/2014/8/28/540.
All of these have been exposed to -next testing.
These changes are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu.git rcu/next
for you to fetch changes up to dd56af42bd829c6e770ed69812bd65a04eaeb1e4:
rcu: Eliminate deadlock between CPU hotplug and expedited grace periods (2014-09-18 16:22:27 -0700)
----------------------------------------------------------------
Ard Biesheuvel (1):
rcu: Define tracepoint strings only if CONFIG_TRACING is set
Davidlohr Bueso (9):
locktorture: Rename locktorture_runnable parameter
locktorture: Add documentation
locktorture: Support mutexes
locktorture: Teach about lock debugging
locktorture: Make statistics generic
torture: Address race in module cleanup
locktorture: Add infrastructure for torturing read locks
locktorture: Support rwsems
locktorture: Introduce torture context
Joe Perches (1):
rcu: Use pr_alert/pr_cont for printing logs
Oleg Nesterov (1):
rcu: Uninline rcu_read_lock_held()
Paul E. McKenney (46):
memory-barriers: Fix control-ordering no-transitivity example
memory-barriers: Retain barrier() in fold-to-zero example
memory-barriers: Fix description of 2-legged-if-based control dependencies
rcu: Break more call_rcu() deadlock involving scheduler and perf
rcu: Make TINY_RCU tinier by putting error checks under #ifdef
rcu: Replace flush_signals() with WARN_ON(signal_pending())
rcu: Add step to initrd documentation
rcutorture: Test partial nohz_full= configuration
rcutorture: Specify MAXSMP=y for TREE01
rcutorture: Specify CONFIG_CPUMASK_OFFSTACK=y for TREE07
rcutorture: Add callback-flood test
torture: Print PID in hung-kernel diagnostic message
torture: Check for nul bytes in console output
rcu: Add call_rcu_tasks()
rcu: Provide cond_resched_rcu_qs() to force quiescent states in long loops
rcu: Add synchronous grace-period waiting for RCU-tasks
rcu: Make TASKS_RCU handle tasks that are almost done exiting
rcutorture: Add torture tests for RCU-tasks
rcutorture: Add RCU-tasks test cases
rcu: Add stall-warning checks for RCU-tasks
rcu: Improve RCU-tasks energy efficiency
documentation: Add verbiage on RCU-tasks stall warning messages
rcu: Defer rcu_tasks_kthread() creation till first call_rcu_tasks()
rcu: Make TASKS_RCU handle nohz_full= CPUs
rcu: Make rcu_tasks_kthread()'s GP-wait loop allow preemption
rcu: Remove redundant preempt_disable() from rcu_note_voluntary_context_switch()
rcu: Additional information on RCU-tasks stall-warning messages
rcu: Remove local_irq_disable() in rcu_preempt_note_context_switch()
rcu: Per-CPU operation cleanups to rcu_*_qs() functions
rcutorture: Add RCU-tasks tests to default rcutorture list
rcu: Fix attempt to avoid unsolicited offloading of callbacks
rcu: Rationalize kthread spawning
rcu: Create rcuo kthreads only for onlined CPUs
rcu: Eliminate redundant rcu_sysidle_state variable
rcu: Don't track sysidle state if no nohz_full= CPUs
rcu: Avoid misordering in __call_rcu_nocb_enqueue()
rcu: Handle NOCB callbacks from irq-disabled idle code
rcu: Avoid misordering in nocb_leader_wait()
Merge branches 'doc.2014.09.07a', 'fixes.2014.09.10a', 'nocb-nohz.2014.09.16b' and 'torture.2014.09.07a' into HEAD
Merge branch 'rcu-tasks.2014.09.10a' into HEAD
locktorture: Make torture scripting account for new _runnable name
locktorture: Add test scenario for mutex_lock
locktorture: Add test scenario for rwsem_lock
rcutorture: Rename rcutorture_runnable parameter
locktorture: Document boot/module parameters
rcu: Eliminate deadlock between CPU hotplug and expedited grace periods
Pranith Kumar (18):
rcu: Remove remaining read-modify-write ACCESS_ONCE() calls
rcu: Fix sparse warning about rcu_batches_completed_preempt() being non-static
rcu: Use bool type for return value in rcu_is_watching()
rcu: Return bool type for rcu_try_advance_all_cbs()
rcu: Return bool type in rcu_lockdep_current_cpu_online()
rcu: Use true/false instead of 1/0 for a bool type
rcu: Update tiny.c references to tree.c
rcu: Remove stale comment in tree.c
rcu: Use rcu_gp_kthread_wake() to wake up grace period kthreads
rcutorture: Fix a sparse warning by marking boost_mutex static
rcutorture: Use bash shell for all the test scripts
rcutorture: Set executable bit and drop bash from Usage
rcu: Check the return value of zalloc_cpumask_var()
rcu: Use true/false for return in __call_rcu_nocb()
rcu: Use true/false for return in rcu_nocb_adopt_orphan_cbs()
rcu: Use false for return in __call_rcu_nocb()
rcu: Return false instead of 0 in rcu_nocb_adopt_orphan_cbs()
rcu: Check for have_rcu_nocb_mask instead of rcu_nocb_mask
Steven Rostedt (1):
rcu: Export RCU-tasks APIs to GPL modules
Documentation/RCU/stallwarn.txt | 33 +-
Documentation/kernel-parameters.txt | 68 +++-
Documentation/locking/locktorture.txt | 142 ++++++++
Documentation/memory-barriers.txt | 128 +++----
fs/file.c | 2 +-
include/linux/cpu.h | 2 +
include/linux/init_task.h | 12 +-
include/linux/lockdep.h | 1 +
include/linux/rcupdate.h | 106 +++---
include/linux/rcutiny.h | 2 +-
include/linux/sched.h | 39 +-
include/linux/torture.h | 5 +-
include/trace/events/rcu.h | 3 +
init/Kconfig | 14 +-
init/main.c | 1 +
kernel/cpu.c | 16 +-
kernel/exit.c | 3 +
kernel/locking/locktorture.c | 392 ++++++++++++++++----
kernel/rcu/rcutorture.c | 278 ++++++++++----
kernel/rcu/tiny.c | 20 +-
kernel/rcu/tree.c | 115 +++---
kernel/rcu/tree.h | 18 +-
kernel/rcu/tree_plugin.h | 404 ++++++++++++++-------
kernel/rcu/update.c | 345 +++++++++++++++++-
kernel/softirq.c | 2 +-
kernel/sysctl.c | 9 -
kernel/torture.c | 32 +-
mm/mlock.c | 2 +-
.../selftests/rcutorture/bin/config2frag.sh | 4 +-
.../selftests/rcutorture/bin/configcheck.sh | 4 +-
.../testing/selftests/rcutorture/bin/configinit.sh | 4 +-
.../testing/selftests/rcutorture/bin/functions.sh | 20 +
.../testing/selftests/rcutorture/bin/kvm-build.sh | 2 +-
.../selftests/rcutorture/bin/kvm-recheck-lock.sh | 2 +-
.../selftests/rcutorture/bin/kvm-recheck-rcu.sh | 2 +-
.../selftests/rcutorture/bin/kvm-recheck.sh | 2 +-
.../selftests/rcutorture/bin/kvm-test-1-run.sh | 5 +-
tools/testing/selftests/rcutorture/bin/kvm.sh | 6 +-
.../selftests/rcutorture/bin/parse-build.sh | 5 +-
.../selftests/rcutorture/bin/parse-console.sh | 9 +-
.../selftests/rcutorture/bin/parse-torture.sh | 5 +-
.../selftests/rcutorture/configs/lock/CFLIST | 2 +
.../selftests/rcutorture/configs/lock/LOCK02 | 6 +
.../selftests/rcutorture/configs/lock/LOCK02.boot | 1 +
.../selftests/rcutorture/configs/lock/LOCK03 | 6 +
.../selftests/rcutorture/configs/lock/LOCK03.boot | 1 +
.../rcutorture/configs/lock/ver_functions.sh | 2 +-
.../selftests/rcutorture/configs/rcu/CFLIST | 3 +
.../selftests/rcutorture/configs/rcu/TASKS01 | 9 +
.../selftests/rcutorture/configs/rcu/TASKS01.boot | 1 +
.../selftests/rcutorture/configs/rcu/TASKS02 | 5 +
.../selftests/rcutorture/configs/rcu/TASKS02.boot | 1 +
.../selftests/rcutorture/configs/rcu/TASKS03 | 13 +
.../selftests/rcutorture/configs/rcu/TASKS03.boot | 1 +
.../selftests/rcutorture/configs/rcu/TREE01 | 4 +-
.../selftests/rcutorture/configs/rcu/TREE01.boot | 2 +-
.../selftests/rcutorture/configs/rcu/TREE07 | 3 +-
.../selftests/rcutorture/configs/rcu/TREE07.boot | 1 +
.../rcutorture/configs/rcu/ver_functions.sh | 2 +-
tools/testing/selftests/rcutorture/doc/initrd.txt | 1 +
60 files changed, 1798 insertions(+), 530 deletions(-)
create mode 100644 Documentation/locking/locktorture.txt
mode change 100644 => 100755 tools/testing/selftests/rcutorture/bin/config2frag.sh
mode change 100644 => 100755 tools/testing/selftests/rcutorture/bin/kvm.sh
create mode 100644 tools/testing/selftests/rcutorture/configs/lock/LOCK02
create mode 100644 tools/testing/selftests/rcutorture/configs/lock/LOCK02.boot
create mode 100644 tools/testing/selftests/rcutorture/configs/lock/LOCK03
create mode 100644 tools/testing/selftests/rcutorture/configs/lock/LOCK03.boot
create mode 100644 tools/testing/selftests/rcutorture/configs/rcu/TASKS01
create mode 100644 tools/testing/selftests/rcutorture/configs/rcu/TASKS01.boot
create mode 100644 tools/testing/selftests/rcutorture/configs/rcu/TASKS02
create mode 100644 tools/testing/selftests/rcutorture/configs/rcu/TASKS02.boot
create mode 100644 tools/testing/selftests/rcutorture/configs/rcu/TASKS03
create mode 100644 tools/testing/selftests/rcutorture/configs/rcu/TASKS03.boot
create mode 100644 tools/testing/selftests/rcutorture/configs/rcu/TREE07.boot
next reply other threads:[~2014-09-22 22:04 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-09-22 21:46 Paul E. McKenney [this message]
2014-09-23 5:23 ` [GIT PULL rcu/next] RCU commits for 3.18 Ingo Molnar
2014-09-23 7:46 ` Davidlohr Bueso
2014-09-23 12:02 ` Paul E. McKenney
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20140922214603.GA6356@linux.vnet.ibm.com \
--to=paulmck@linux.vnet.ibm.com \
--cc=ard.biesheuvel@linaro.org \
--cc=bobby.prani@gmail.com \
--cc=dave@stgolabs.net \
--cc=joe@perches.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@kernel.org \
--cc=oleg@redhat.com \
--cc=rostedt@goodmis.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.