All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
To: mingo@kernel.org
Cc: linux-kernel@vger.kernel.org, rostedt@goodmis.org,
	rakib.mullick@gmail.com, sj38.park@gmail.com, dave@stgolabs.net
Subject: [GIT PULL rcu/next] RCU commits for 4.15
Date: Tue, 2 Jan 2018 11:10:26 -0800	[thread overview]
Message-ID: <20180102191026.GA8067@linux.vnet.ibm.com> (raw)

Hello, Ingo, and Happy New Year!

This pull request contains the following changes:

1.	Updates to use cond_resched() instead of cond_resched_rcu_qs()
	where feasible (currently everywhere except in kernel/rcu and
	in kernel/torture.c).  Also a couple of fixes to avoid sending
	IPIs to offline CPUs.

	http://lkml.kernel.org/r/20171201192122.GA19301@linux.vnet.ibm.com

2.	Updates to simplify RCU's dyntick-idle handling.

	http://lkml.kernel.org/r/20171201193625.GA20681@linux.vnet.ibm.com

3.	Miscellaneous fixes.

	http://lkml.kernel.org/r/20171201194139.GA22722@linux.vnet.ibm.com

4.	Updates to remove almost all uses of smp_read_barrier_depends()
	and read_barrier_depends().

	http://lkml.kernel.org/r/20171201195053.GA23494@linux.vnet.ibm.com

5.	Torture-test updates.

	http://lkml.kernel.org/r/20171201200819.GA25519@linux.vnet.ibm.com
	
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 1dfa55e01987288d847220b8c027204871440ed1:

  Merge branches 'cond_resched.2017.12.04a', 'dyntick.2017.11.28a', 'fixes.2017.12.11a', 'srbd.2017.12.05a' and 'torture.2017.12.11a' into HEAD (2017-12-11 09:21:58 -0800)

----------------------------------------------------------------
Davidlohr Bueso (2):
      locking/locktorture: Fix rwsem reader_delay
      locking/locktorture: Fix num reader/writer corner cases

Paul E. McKenney (59):
      rcu: Avoid ->dynticks_nmi_nesting store tearing
      rcu: Reduce dyntick-idle state space
      rcu: Move rcu_nmi_{enter,exit}() to prepare for consolidation
      rcu: Clamp ->dynticks_nmi_nesting at eqs entry/exit
      rcu: Define rcu_irq_{enter,exit}() in terms of rcu_nmi_{enter,exit}()
      rcu: Make ->dynticks_nesting be a simple counter
      rcu: Eliminate rcu_irq_enter_disabled()
      rcu: Add tracing to irq/NMI dyntick-idle transitions
      rcu: Shrink ->dynticks_{nmi_,}nesting from long long to long
      rcu: Add ->dynticks field to rcu_dyntick trace event
      rcu: Stop duplicating lockdep checks in RCU's idle-entry code
      rcu: Avoid ->dynticks_nesting store tearing
      rcu: Fold rcu_eqs_enter_common() into rcu_eqs_enter()
      rcu: Fold rcu_eqs_exit_common() into rcu_eqs_exit()
      rcu: Simplify rcu_eqs_{enter,exit}() non-idle task debug code
      doc: Update dyntick-idle design documentation for NMI/irq consolidation
      srcu: Prohibit call_srcu() use under raw spinlocks
      torture: Suppress CPU stall warnings during shutdown ftrace dump
      torture: Prepare scripting for shift from %p to %pK
      sched: Stop resched_cpu() from sending IPIs to offline CPUs
      sched: Stop switched_to_rt() from sending IPIs to offline CPUs
      netfilter: Eliminate cond_resched_rcu_qs() in favor of cond_resched()
      mm: Eliminate cond_resched_rcu_qs() in favor of cond_resched()
      workqueue: Eliminate cond_resched_rcu_qs() in favor of cond_resched()
      trace: Eliminate cond_resched_rcu_qs() in favor of cond_resched()
      softirq: Eliminate cond_resched_rcu_qs() in favor of cond_resched()
      fs: Eliminate cond_resched_rcu_qs() in favor of cond_resched()
      doc: Eliminate cond_resched_rcu_qs() in favor of cond_resched()
      rcu: Account for rcu_all_qs() in cond_resched()
      doc: READ_ONCE() now implies smp_barrier_depends()
      mn10300: READ_ONCE() now implies smp_read_barrier_depends()
      drivers/net/ethernet/qlogic/qed: Fix __qed_spq_block() ordering
      fs/dcache: Use release-acquire for name/length update
      percpu: READ_ONCE() now implies smp_read_barrier_depends()
      rcu: Adjust read-side accessor comments for READ_ONCE()
      rtnetlink: Update now-misleading smp_read_barrier_depends() comment
      seqlock: Remove now-redundant smp_read_barrier_depends()
      uprobes: Remove now-redundant smp_read_barrier_depends()
      locking: Remove smp_read_barrier_depends() from queued_spin_lock_slowpath()
      tracepoint: Remove smp_read_barrier_depends() from comment
      lib/assoc_array: Remove smp_read_barrier_depends()
      mm/ksm: Remove now-redundant smp_read_barrier_depends()
      netfilter: Remove now-redundant smp_read_barrier_depends()
      keyring: Remove now-redundant smp_read_barrier_depends()
      drivers/infiniband: Remove now-redundant smp_read_barrier_depends()
      drivers/dma/ioat: Remove now-redundant smp_read_barrier_depends()
      doc: De-emphasize smp_read_barrier_depends
      genetlink: Remove smp_read_barrier_depends() from comment
      netlink: Remove smp_read_barrier_depends() from comment
      checkpatch: Add warnings for {smp_,}read_barrier_depends()
      drivers/vhost: Remove now-redundant read_barrier_depends()
      rcu: Add comment giving debug strategy for double call_rcu()
      torture: Reduce #ifdefs for preempt_schedule()
      rcutorture: Preempt RCU-preempt readers more vigorously
      torture: Place all torture-test modules in one MAINTAINERS group
      torture: Make stutter less vulnerable to compilers and races
      torture: Eliminate torture_runnable and perf_runnable
      torture: Save a line in stutter_wait(): while -> for
      Merge branches 'cond_resched.2017.12.04a', 'dyntick.2017.11.28a', 'fixes.2017.12.11a', 'srbd.2017.12.05a' and 'torture.2017.12.11a' into HEAD

Rakib Mullick (1):
      rcu: Remove have_rcu_nocb_mask from tree_plugin.h

SeongJae Park (9):
      rcutorture/configinit: Fix build directory error message
      rcutorture: Remove unused script, config2frag.sh
      rcutorture/kvm.sh: Remove unused variable, `alldone`
      rcutorture/kvm.sh: Use consistent help text for --qemu-args
      rcutorture/kvm.sh: Support execution from any directory
      rcutorture/kvm-recheck-*: Improve result directory readability check
      rcutorture: Simplify logging
      rcutorture: Simplify functions.sh include path
      rcutorture/kvm-build.sh: Skip build directory check

Steven Rostedt (VMware) (2):
      tracing, rcu: Remove no longer used trace event rcu_prep_idle
      tracing, rcu: Hide trace event rcu_nocb_wake when not used

 .../Design/Data-Structures/Data-Structures.html    |  49 ++-
 .../RCU/Design/Requirements/Requirements.html      |   7 +-
 Documentation/RCU/rcu_dereference.txt              |   6 +-
 Documentation/RCU/stallwarn.txt                    |  10 +-
 Documentation/RCU/whatisRCU.txt                    |   3 +-
 Documentation/admin-guide/kernel-parameters.txt    |   9 -
 Documentation/circular-buffers.txt                 |   3 +-
 Documentation/locking/locktorture.txt              |   5 -
 Documentation/memory-barriers.txt                  |  22 +-
 MAINTAINERS                                        |  22 +-
 arch/mn10300/kernel/mn10300-serial.c               |   7 +-
 drivers/dma/ioat/dma.c                             |   2 -
 drivers/infiniband/Kconfig                         |   1 +
 drivers/infiniband/hw/hfi1/rc.c                    |   4 -
 drivers/infiniband/hw/hfi1/ruc.c                   |   1 -
 drivers/infiniband/hw/hfi1/sdma.c                  |   1 -
 drivers/infiniband/hw/hfi1/uc.c                    |   2 -
 drivers/infiniband/hw/hfi1/ud.c                    |   2 -
 drivers/infiniband/hw/qib/qib_rc.c                 |   3 -
 drivers/infiniband/hw/qib/qib_ruc.c                |   1 -
 drivers/infiniband/hw/qib/qib_uc.c                 |   2 -
 drivers/infiniband/hw/qib/qib_ud.c                 |   2 -
 drivers/infiniband/sw/rdmavt/qp.c                  |   1 -
 drivers/net/ethernet/qlogic/qed/qed_spq.c          |   4 +-
 drivers/vhost/vhost.c                              |   7 +-
 fs/dcache.c                                        |  10 +-
 fs/file.c                                          |   2 +-
 include/linux/genetlink.h                          |   3 +-
 include/linux/netfilter/nfnetlink.h                |   3 +-
 include/linux/percpu-refcount.h                    |   6 +-
 include/linux/rcupdate.h                           |  25 +-
 include/linux/rcutiny.h                            |   1 -
 include/linux/rcutree.h                            |   1 -
 include/linux/rtnetlink.h                          |   3 +-
 include/linux/seqlock.h                            |   3 +-
 include/linux/srcutree.h                           |   8 +-
 include/linux/torture.h                            |   8 +-
 include/linux/tracepoint.h                         |   5 +-
 include/trace/events/rcu.h                         |  75 ++---
 kernel/events/uprobes.c                            |  12 +-
 kernel/locking/locktorture.c                       | 108 +++----
 kernel/locking/qspinlock.c                         |  12 +-
 kernel/rcu/rcu.h                                   |  27 +-
 kernel/rcu/rcuperf.c                               |   6 +-
 kernel/rcu/rcutorture.c                            |  12 +-
 kernel/rcu/srcutree.c                              | 109 ++++---
 kernel/rcu/tree.c                                  | 355 ++++++++-------------
 kernel/rcu/tree.h                                  |   5 +-
 kernel/rcu/tree_plugin.h                           |  13 +-
 kernel/sched/core.c                                |   3 +-
 kernel/sched/rt.c                                  |   2 +-
 kernel/softirq.c                                   |   2 +-
 kernel/torture.c                                   |  39 ++-
 kernel/trace/trace.c                               |  11 -
 kernel/trace/trace_benchmark.c                     |   2 +-
 kernel/tracepoint.c                                |   9 +-
 kernel/workqueue.c                                 |   2 +-
 lib/assoc_array.c                                  |  37 +--
 lib/percpu-refcount.c                              |   8 +-
 mm/ksm.c                                           |   9 +-
 mm/mlock.c                                         |   2 +-
 net/ipv4/netfilter/arp_tables.c                    |   7 +-
 net/ipv4/netfilter/ip_tables.c                     |   7 +-
 net/ipv6/netfilter/ip6_tables.c                    |   7 +-
 net/netfilter/nf_conntrack_core.c                  |   2 +-
 scripts/checkpatch.pl                              |   6 +
 security/keys/keyring.c                            |   7 -
 .../selftests/rcutorture/bin/config2frag.sh        |  25 --
 .../testing/selftests/rcutorture/bin/configinit.sh |   2 +-
 .../testing/selftests/rcutorture/bin/kvm-build.sh  |   5 -
 .../selftests/rcutorture/bin/kvm-recheck-lock.sh   |   2 +-
 .../selftests/rcutorture/bin/kvm-recheck-rcu.sh    |   4 +-
 .../rcutorture/bin/kvm-recheck-rcuperf-ftrace.sh   |   2 +-
 .../rcutorture/bin/kvm-recheck-rcuperf.sh          |   4 +-
 .../selftests/rcutorture/bin/kvm-recheck.sh        |   2 +-
 .../selftests/rcutorture/bin/kvm-test-1-run.sh     |   6 +-
 tools/testing/selftests/rcutorture/bin/kvm.sh      |  42 +--
 .../selftests/rcutorture/bin/parse-torture.sh      |   2 +-
 .../rcutorture/configs/lock/ver_functions.sh       |   1 -
 .../rcutorture/configs/rcu/ver_functions.sh        |   1 -
 .../rcutorture/configs/rcuperf/ver_functions.sh    |   1 -
 81 files changed, 501 insertions(+), 748 deletions(-)
 delete mode 100755 tools/testing/selftests/rcutorture/bin/config2frag.sh

             reply	other threads:[~2018-01-02 19:10 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-01-02 19:10 Paul E. McKenney [this message]
2018-01-03 13:17 ` [GIT PULL rcu/next] RCU commits for 4.15 Ingo Molnar
2018-01-03 17:38   ` Paul E. McKenney
     [not found] <20171023182045.GA1291@linux.vnet.ibm.com>
2017-10-23 20:45 ` Paul E. McKenney
2017-10-24  8:51   ` Ingo Molnar

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=20180102191026.GA8067@linux.vnet.ibm.com \
    --to=paulmck@linux.vnet.ibm.com \
    --cc=dave@stgolabs.net \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@kernel.org \
    --cc=rakib.mullick@gmail.com \
    --cc=rostedt@goodmis.org \
    --cc=sj38.park@gmail.com \
    /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.