* Paul E. McKenney <paul...@linux.vnet.ibm.com> wrote: > Hello, Ingo, > > The changes in this series include the following: > > 1. Adding transitivity uniformly to rcu_node structure ->lock > acquisitions. (This is implemented by the first two commits > on top of v4.4-rc2 due to the pervasive nature of this change.) > > http://article.gmane.org/gmane.linux.kernel/2100835 > > 2. Documentation updates, including RCU requirements. > > http://article.gmane.org/gmane.linux.kernel/2104628 > > 3. Expedited grace-period changes. > > http://article.gmane.org/gmane.linux.kernel/2104595 > > 4. Miscellaneous fixes. > > http://article.gmane.org/gmane.linux.kernel/2104612 > > 5. Linked-list fixes, courtesy of KTSAN. > > http://article.gmane.org/gmane.linux.kernel/2100875 > > 6. Torture-test updates. > > http://article.gmane.org/gmane.linux.kernel/2104652 > > 7. Late-breaking fix to sysrq-generated crash. > > http://article.gmane.org/gmane.linux.kernel/2111676 > > 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 984cf355aeaa8f2eda3861b50d0e8d3e3f77e83b: > > sysrq: Fix warning in sysrq generated crash. (2015-12-29 16:29:18 -0800) > > ---------------------------------------------------------------- > Alexey Kardashevskiy (2): > rcu: Fix comment for rcu_dereference_raw_notrace > list: Add lockless list traversal primitives > > Ani Sinha (1): > sysrq: Fix warning in sysrq generated crash. > > Chris Metcalf (1): > Documentation/memory-barriers.txt: Fix ACCESS_ONCE thinko > > Paul E. McKenney (41): > list: Use WRITE_ONCE() when adding to lists and hlists > list: Use READ_ONCE() when testing for empty lists > rcu: Add transitivity to remaining rcu_node ->lock acquisitions > rcu: Short-circuit synchronize_sched_expedited() if only one CPU > rcu: Clarify role of ->expmaskinitnext > rcu: Move smp_mb() from rcu_seq_snap() to rcu_exp_gp_seq_snap() > rcu: Invert sync_rcu_exp_select_cpus() "if" statement > rcu: Reduce expedited GP memory contention via per-CPU variables > rcu: Make expedited grace periods resolve stall-warning ties > rcu: Add more diagnostics to expedited stall warning messages. > rcu: Add rcu_normal kernel parameter to suppress expediting > rcu: Wire up rcu_end_inkernel_boot() > rcu: Allow expedited grace periods to be disabled at init > rcu: Move lock_class_key to local scope > rcu: Simplify rcu_sched_qs() control flow > rcu: Remove lock-acquisition loop from rcu_read_unlock_special() > rcu: Fix obsolete rcu_bootup_announce_oddness() comment > rcu: Avoid tick_nohz_active checks on NOCBs CPUs > rcu: Stop disabling interrupts in scheduler fastpaths > list: Use WRITE_ONCE() when initializing list_head structures > documentation: Record RCU requirements > Documentation: Record bottom-bit-zero guarantee for ->next > documentation: Cover requirements controlling stall warnings > documentation: Composability analogies > documentation: Expand on scheduler/RCU deadlock requirements > documentation: Clarify RCU memory barriers and requirements > documentation: Update RCU requirements based on expedited changes > rcutorture: Add batch number to script printout > rcutorture: Flag nonexistent RCU GP kthread > rcutorture: Dump stack when GP kthread stalls > rcutorture: Default grace period to three minutes, allow override > rcutorture: Print symbolic name for rcu_torture_writer_state > rcutorture: Print symbolic name for ->gp_state > torture: Abbreviate console error dump > torture: Place console.log files correctly from the get-go > rcu: Remove TINY_RCU bloat from pointless boot parameters > rcu: Eliminate unused rcu_init_one() argument > rcu: Make cpu_needs_another_gp() be bool > rcu: Don't redundantly disable irqs in rcu_irq_{enter,exit}() > rcu: Make rcu_gp_init() be bool rather than int > Merge branches 'doc.2015.12.05a', 'exp.2015.12.07a', > 'fixes.2015.12.07a', 'list.2015.12.04b' and 'torture.2015.12.05a' into HEAD > > Paul Gortmaker (1): > kernel: Make rcu/tree_trace.c explicitly non-modular > > Peter Zijlstra (2): > rcu: Create transitive rnp->lock acquisition functions > rcu: Move wakeup out from under rnp->lock > > Petko Manolov (1): > list: Introduces generic list_splice_tail_init_rcu() > > Yang Shi (1): > rcutorture: Remove CONFIG_RCU_USER_QS from rcutorture selftest doc > > .../RCU/Design/Requirements/2013-08-is-it-dead.png | Bin 0 -> 100825 bytes > .../Design/Requirements/GPpartitionReaders1.svg | 374 +++ > .../RCU/Design/Requirements/RCUApplicability.svg | 237 ++ > .../Design/Requirements/ReadersPartitionGP1.svg | 639 +++++ > .../RCU/Design/Requirements/Requirements.html | 2897 > ++++++++++++++++++++ > .../RCU/Design/Requirements/Requirements.htmlx | 2741 ++++++++++++++++++ > Documentation/RCU/Design/htmlqqz.sh | 108 + > Documentation/kernel-parameters.txt | 29 +- > Documentation/memory-barriers.txt | 8 +- > drivers/tty/sysrq.c | 6 + > include/linux/list.h | 14 +- > include/linux/list_bl.h | 2 +- > include/linux/list_nulls.h | 2 +- > include/linux/rculist.h | 105 +- > include/linux/rcupdate.h | 21 +- > include/linux/rcutiny.h | 8 + > include/linux/rcutree.h | 4 +- > include/linux/tracepoint.h | 4 +- > init/main.c | 2 + > kernel/ksysfs.c | 26 +- > kernel/rcu/rcutorture.c | 24 +- > kernel/rcu/srcu.c | 2 +- > kernel/rcu/tree.c | 313 ++- > kernel/rcu/tree.h | 61 +- > kernel/rcu/tree_plugin.h | 66 +- > kernel/rcu/tree_trace.c | 39 +- > kernel/rcu/update.c | 22 +- > kernel/sched/core.c | 6 +- > lib/list_debug.c | 2 +- > .../selftests/rcutorture/bin/kvm-test-1-run.sh | 9 +- > tools/testing/selftests/rcutorture/bin/kvm.sh | 22 +- > .../selftests/rcutorture/bin/parse-console.sh | 41 +- > .../testing/selftests/rcutorture/doc/TINY_RCU.txt | 1 - > .../selftests/rcutorture/doc/TREE_RCU-kconfig.txt | 4 - > 34 files changed, 7552 insertions(+), 287 deletions(-) > create mode 100644 > Documentation/RCU/Design/Requirements/2013-08-is-it-dead.png > create mode 100644 > Documentation/RCU/Design/Requirements/GPpartitionReaders1.svg > create mode 100644 Documentation/RCU/Design/Requirements/RCUApplicability.svg > create mode 100644 > Documentation/RCU/Design/Requirements/ReadersPartitionGP1.svg > create mode 100644 Documentation/RCU/Design/Requirements/Requirements.html > create mode 100644 Documentation/RCU/Design/Requirements/Requirements.htmlx > create mode 100755 Documentation/RCU/Design/htmlqqz.sh
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 majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/