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, penguin-kernel@I-love.SAKURA.ne.jp,
	bigeasy@linutronix.de, mathieu.desnoyers@efficios.com,
	byungchul.park@lge.com, tklauser@distanz.ch,
	matt@codeblueprint.co.uk, joelaf@google.com, ldr709@gmail.com,
	yang.shi@linaro.org, josh@joshtriplett.org, mixaskok@gmail.com,
	boqun.feng@gmail.com, chris.friesen@windriver.com,
	richard@nod.at, vincent.weaver@maine.edu
Subject: [GIT PULL rcu/next] RCU commits for 4.11
Date: Mon, 30 Jan 2017 09:28:11 -0800	[thread overview]
Message-ID: <20170130172811.GA22176@linux.vnet.ibm.com> (raw)

Hello, Ingo,

This pull request contains the following changes:

1.	Documentation updates.

	http://lkml.kernel.org/r/20170114085032.GA18485@linux.vnet.ibm.com

2.	Dyntick updates, consolidating open-coded counter accesses
	into a well-defined API.

	http://lkml.kernel.org/r/20170124214602.GA2269@linux.vnet.ibm.com

3.	Miscellaneous fixes.

	http://lkml.kernel.org/r/20170124215111.GB2269@linux.vnet.ibm.com

4.	SRCU updates: Simplify algorithm, add formal verification.

	http://lkml.kernel.org/r/20170124220011.GC2269@linux.vnet.ibm.com

5.	Torture-test updates.

	http://lkml.kernel.org/r/20170114092533.GA23650@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 31945aa9f14085c81cb3257e51bb210698b78626:

  Merge branches 'doc.2017.01.15b', 'dyntick.2017.01.23a', 'fixes.2017.01.23a', 'srcu.2017.01.25a' and 'torture.2017.01.15b' into HEAD (2017-01-25 12:56:05 -0800)

----------------------------------------------------------------
Byungchul Park (1):
      rcu: Only dump stalled-tasks stacks if there was a real stall

Joel Fernandes (1):
      llist: Clarify comments about when locking is needed

Lance Roy (2):
      srcu: Implement more-efficient reader counts
      rcutorture: Add CBMC-based formal verification for SRCU

Mathieu Desnoyers (1):
      Fix: Disable sys_membarrier when nohz_full is enabled

Matt Fleming (1):
      rcu: Enable RCU tracepoints by default to aid in debugging

Paul E. McKenney (33):
      rcu: Design documentation for expedited grace periods
      doc: Update control-dependencies section of memory-barriers.txt
      doc: Quick-Quiz answers are now inline
      doc: Add rcutree.rcu_kick_kthreads to kernel-parameters.txt
      torture: Add a check for CONFIG_RCU_STALL_COMMON for TINY01
      torture: Add CONFIG_PROVE_RCU_REPEATEDLY=y for TINY02
      torture: Add tests without slow grace period setup/cleanup
      torture: Run at least one test with CONFIG_DEBUG_OBJECTS_RCU_HEAD
      torture: Run one test with DEBUG_LOCK_ALLOC but not PROVE_LOCKING
      torture: Run a couple scenarios with CONFIG_RCU_EQS_DEBUG
      torture: Update RCU test scenario documentation
      torture: Enable DEBUG_OBJECTS_RCU_HEAD for Tiny RCU
      rcu: Abstract the dynticks momentary-idle operation
      rcu: Abstract the dynticks snapshot operation
      lockdep: Make RCU suspicious-access splats use pr_err
      rcu: Remove unneeded rcu_process_callbacks() declarations
      rcu: Add long-term CPU kicking
      rcu: Remove short-term CPU kicking
      rcu: Once again use NMI-based stack traces in stall warnings
      rcu: Re-enable TASKS_RCU for User Mode Linux
      rcu: Don't wake rcuc/X kthreads on NOCB CPUs
      rcu: Add comment headers to expedited-grace-period counter functions
      rcu: Make rcu_cpu_starting() use its "cpu" argument
      rcu: Fix comment in rcu_organize_nocb_kthreads()
      rcu: Eliminate unused expedited_normal counter
      rcu: Add lockdep checks to synchronous expedited primitives
      rcu: Abstract dynticks extended quiescent state enter/exit operations
      rcu: Abstract extended quiescent state determination
      rcu: Check cond_resched_rcu_qs() state less often to reduce GP overhead
      rcu: Adjust FQS offline checks for exact online-CPU detection
      srcu: Force full grace-period ordering
      srcu: Reduce probability of SRCU ->unlock_count[] counter overflow
      Merge branches 'doc.2017.01.15b', 'dyntick.2017.01.23a', 'fixes.2017.01.23a', 'srcu.2017.01.25a' and 'torture.2017.01.15b' into HEAD

Sebastian Andrzej Siewior (1):
      rcu: update: Make RCU_EXPEDITE_BOOT be the default

Tetsuo Handa (1):
      doc: Fix RCU requirements typos

Tobias Klauser (1):
      rcu: Remove unused but set variable

Yang Shi (1):
      locktorture: Fix potential memory leak with rw lock test

 .../Design/Data-Structures/Data-Structures.html    |   5 +-
 .../Design/Expedited-Grace-Periods/ExpRCUFlow.svg  | 830 +++++++++++++++++++++
 .../Expedited-Grace-Periods/ExpSchedFlow.svg       | 826 ++++++++++++++++++++
 .../Expedited-Grace-Periods.html                   | 626 ++++++++++++++++
 .../RCU/Design/Expedited-Grace-Periods/Funnel0.svg | 275 +++++++
 .../RCU/Design/Expedited-Grace-Periods/Funnel1.svg | 275 +++++++
 .../RCU/Design/Expedited-Grace-Periods/Funnel2.svg | 287 +++++++
 .../RCU/Design/Expedited-Grace-Periods/Funnel3.svg | 323 ++++++++
 .../RCU/Design/Expedited-Grace-Periods/Funnel4.svg | 323 ++++++++
 .../RCU/Design/Expedited-Grace-Periods/Funnel5.svg | 335 +++++++++
 .../RCU/Design/Expedited-Grace-Periods/Funnel6.svg | 335 +++++++++
 .../RCU/Design/Expedited-Grace-Periods/Funnel7.svg | 347 +++++++++
 .../RCU/Design/Expedited-Grace-Periods/Funnel8.svg | 311 ++++++++
 .../RCU/Design/Requirements/Requirements.html      |  12 +-
 Documentation/RCU/trace.txt                        |   5 +-
 Documentation/admin-guide/kernel-parameters.txt    |   7 +
 Documentation/memory-barriers.txt                  |  70 +-
 include/linux/llist.h                              |  37 +-
 include/linux/rcupdate.h                           |  12 +
 include/linux/rcutiny.h                            |   6 +
 include/linux/srcu.h                               |  10 +-
 include/trace/events/rcu.h                         |  10 +-
 init/Kconfig                                       |  14 -
 kernel/locking/lockdep.c                           |  12 +-
 kernel/locking/locktorture.c                       |   6 +
 kernel/membarrier.c                                |   4 +
 kernel/rcu/rcutorture.c                            |  19 +-
 kernel/rcu/srcu.c                                  | 143 ++--
 kernel/rcu/tiny.c                                  |   2 -
 kernel/rcu/tree.c                                  | 262 ++++---
 kernel/rcu/tree.h                                  |  15 +-
 kernel/rcu/tree_exp.h                              |  38 +-
 kernel/rcu/tree_plugin.h                           |   7 +-
 kernel/rcu/tree_trace.c                            |   5 +-
 kernel/rcu/update.c                                |   6 +-
 lib/Kconfig.debug                                  |   1 +
 .../selftests/rcutorture/configs/rcu/CFcommon      |   3 -
 .../selftests/rcutorture/configs/rcu/TINY01        |   1 +
 .../selftests/rcutorture/configs/rcu/TINY02        |   3 +-
 .../selftests/rcutorture/configs/rcu/TREE01        |   3 +
 .../selftests/rcutorture/configs/rcu/TREE02        |   4 +
 .../selftests/rcutorture/configs/rcu/TREE03        |   3 +
 .../selftests/rcutorture/configs/rcu/TREE04        |   4 +
 .../selftests/rcutorture/configs/rcu/TREE05        |   3 +
 .../selftests/rcutorture/configs/rcu/TREE06        |   3 +
 .../selftests/rcutorture/configs/rcu/TREE07        |   3 +
 .../selftests/rcutorture/configs/rcu/TREE08        |   4 +-
 .../selftests/rcutorture/doc/TREE_RCU-kconfig.txt  |  33 +-
 .../rcutorture/formal/srcu-cbmc/.gitignore         |   1 +
 .../selftests/rcutorture/formal/srcu-cbmc/Makefile |  16 +
 .../formal/srcu-cbmc/empty_includes/linux/delay.h  |   0
 .../formal/srcu-cbmc/empty_includes/linux/export.h |   0
 .../formal/srcu-cbmc/empty_includes/linux/mutex.h  |   0
 .../formal/srcu-cbmc/empty_includes/linux/percpu.h |   0
 .../srcu-cbmc/empty_includes/linux/preempt.h       |   0
 .../srcu-cbmc/empty_includes/linux/rcupdate.h      |   0
 .../formal/srcu-cbmc/empty_includes/linux/sched.h  |   0
 .../formal/srcu-cbmc/empty_includes/linux/smp.h    |   0
 .../srcu-cbmc/empty_includes/linux/workqueue.h     |   0
 .../srcu-cbmc/empty_includes/uapi/linux/types.h    |   0
 .../formal/srcu-cbmc/include/linux/.gitignore      |   1 +
 .../formal/srcu-cbmc/include/linux/kconfig.h       |   1 +
 .../formal/srcu-cbmc/include/linux/types.h         | 155 ++++
 .../rcutorture/formal/srcu-cbmc/modify_srcu.awk    | 375 ++++++++++
 .../rcutorture/formal/srcu-cbmc/src/assume.h       |  16 +
 .../rcutorture/formal/srcu-cbmc/src/barriers.h     |  41 +
 .../rcutorture/formal/srcu-cbmc/src/bug_on.h       |  13 +
 .../formal/srcu-cbmc/src/combined_source.c         |  13 +
 .../rcutorture/formal/srcu-cbmc/src/config.h       |  27 +
 .../rcutorture/formal/srcu-cbmc/src/include_srcu.c |  31 +
 .../rcutorture/formal/srcu-cbmc/src/int_typedefs.h |  33 +
 .../rcutorture/formal/srcu-cbmc/src/locks.h        | 220 ++++++
 .../rcutorture/formal/srcu-cbmc/src/misc.c         |  11 +
 .../rcutorture/formal/srcu-cbmc/src/misc.h         |  58 ++
 .../rcutorture/formal/srcu-cbmc/src/percpu.h       |  92 +++
 .../rcutorture/formal/srcu-cbmc/src/preempt.c      |  78 ++
 .../rcutorture/formal/srcu-cbmc/src/preempt.h      |  58 ++
 .../formal/srcu-cbmc/src/simple_sync_srcu.c        |  50 ++
 .../rcutorture/formal/srcu-cbmc/src/workqueues.h   | 102 +++
 .../srcu-cbmc/tests/store_buffering/.gitignore     |   1 +
 .../srcu-cbmc/tests/store_buffering/Makefile       |  11 +
 .../tests/store_buffering/assert_end.fail          |   1 +
 .../srcu-cbmc/tests/store_buffering/force.fail     |   1 +
 .../srcu-cbmc/tests/store_buffering/force2.fail    |   1 +
 .../srcu-cbmc/tests/store_buffering/force3.fail    |   1 +
 .../srcu-cbmc/tests/store_buffering/main.pass      |   0
 .../formal/srcu-cbmc/tests/store_buffering/test.c  |  72 ++
 .../formal/srcu-cbmc/tests/test_script.sh          | 102 +++
 88 files changed, 7150 insertions(+), 300 deletions(-)
 create mode 100644 Documentation/RCU/Design/Expedited-Grace-Periods/ExpRCUFlow.svg
 create mode 100644 Documentation/RCU/Design/Expedited-Grace-Periods/ExpSchedFlow.svg
 create mode 100644 Documentation/RCU/Design/Expedited-Grace-Periods/Expedited-Grace-Periods.html
 create mode 100644 Documentation/RCU/Design/Expedited-Grace-Periods/Funnel0.svg
 create mode 100644 Documentation/RCU/Design/Expedited-Grace-Periods/Funnel1.svg
 create mode 100644 Documentation/RCU/Design/Expedited-Grace-Periods/Funnel2.svg
 create mode 100644 Documentation/RCU/Design/Expedited-Grace-Periods/Funnel3.svg
 create mode 100644 Documentation/RCU/Design/Expedited-Grace-Periods/Funnel4.svg
 create mode 100644 Documentation/RCU/Design/Expedited-Grace-Periods/Funnel5.svg
 create mode 100644 Documentation/RCU/Design/Expedited-Grace-Periods/Funnel6.svg
 create mode 100644 Documentation/RCU/Design/Expedited-Grace-Periods/Funnel7.svg
 create mode 100644 Documentation/RCU/Design/Expedited-Grace-Periods/Funnel8.svg
 create mode 100644 tools/testing/selftests/rcutorture/formal/srcu-cbmc/.gitignore
 create mode 100644 tools/testing/selftests/rcutorture/formal/srcu-cbmc/Makefile
 create mode 100644 tools/testing/selftests/rcutorture/formal/srcu-cbmc/empty_includes/linux/delay.h
 create mode 100644 tools/testing/selftests/rcutorture/formal/srcu-cbmc/empty_includes/linux/export.h
 create mode 100644 tools/testing/selftests/rcutorture/formal/srcu-cbmc/empty_includes/linux/mutex.h
 create mode 100644 tools/testing/selftests/rcutorture/formal/srcu-cbmc/empty_includes/linux/percpu.h
 create mode 100644 tools/testing/selftests/rcutorture/formal/srcu-cbmc/empty_includes/linux/preempt.h
 create mode 100644 tools/testing/selftests/rcutorture/formal/srcu-cbmc/empty_includes/linux/rcupdate.h
 create mode 100644 tools/testing/selftests/rcutorture/formal/srcu-cbmc/empty_includes/linux/sched.h
 create mode 100644 tools/testing/selftests/rcutorture/formal/srcu-cbmc/empty_includes/linux/smp.h
 create mode 100644 tools/testing/selftests/rcutorture/formal/srcu-cbmc/empty_includes/linux/workqueue.h
 create mode 100644 tools/testing/selftests/rcutorture/formal/srcu-cbmc/empty_includes/uapi/linux/types.h
 create mode 100644 tools/testing/selftests/rcutorture/formal/srcu-cbmc/include/linux/.gitignore
 create mode 100644 tools/testing/selftests/rcutorture/formal/srcu-cbmc/include/linux/kconfig.h
 create mode 100644 tools/testing/selftests/rcutorture/formal/srcu-cbmc/include/linux/types.h
 create mode 100755 tools/testing/selftests/rcutorture/formal/srcu-cbmc/modify_srcu.awk
 create mode 100644 tools/testing/selftests/rcutorture/formal/srcu-cbmc/src/assume.h
 create mode 100644 tools/testing/selftests/rcutorture/formal/srcu-cbmc/src/barriers.h
 create mode 100644 tools/testing/selftests/rcutorture/formal/srcu-cbmc/src/bug_on.h
 create mode 100644 tools/testing/selftests/rcutorture/formal/srcu-cbmc/src/combined_source.c
 create mode 100644 tools/testing/selftests/rcutorture/formal/srcu-cbmc/src/config.h
 create mode 100644 tools/testing/selftests/rcutorture/formal/srcu-cbmc/src/include_srcu.c
 create mode 100644 tools/testing/selftests/rcutorture/formal/srcu-cbmc/src/int_typedefs.h
 create mode 100644 tools/testing/selftests/rcutorture/formal/srcu-cbmc/src/locks.h
 create mode 100644 tools/testing/selftests/rcutorture/formal/srcu-cbmc/src/misc.c
 create mode 100644 tools/testing/selftests/rcutorture/formal/srcu-cbmc/src/misc.h
 create mode 100644 tools/testing/selftests/rcutorture/formal/srcu-cbmc/src/percpu.h
 create mode 100644 tools/testing/selftests/rcutorture/formal/srcu-cbmc/src/preempt.c
 create mode 100644 tools/testing/selftests/rcutorture/formal/srcu-cbmc/src/preempt.h
 create mode 100644 tools/testing/selftests/rcutorture/formal/srcu-cbmc/src/simple_sync_srcu.c
 create mode 100644 tools/testing/selftests/rcutorture/formal/srcu-cbmc/src/workqueues.h
 create mode 100644 tools/testing/selftests/rcutorture/formal/srcu-cbmc/tests/store_buffering/.gitignore
 create mode 100644 tools/testing/selftests/rcutorture/formal/srcu-cbmc/tests/store_buffering/Makefile
 create mode 100644 tools/testing/selftests/rcutorture/formal/srcu-cbmc/tests/store_buffering/assert_end.fail
 create mode 100644 tools/testing/selftests/rcutorture/formal/srcu-cbmc/tests/store_buffering/force.fail
 create mode 100644 tools/testing/selftests/rcutorture/formal/srcu-cbmc/tests/store_buffering/force2.fail
 create mode 100644 tools/testing/selftests/rcutorture/formal/srcu-cbmc/tests/store_buffering/force3.fail
 create mode 100644 tools/testing/selftests/rcutorture/formal/srcu-cbmc/tests/store_buffering/main.pass
 create mode 100644 tools/testing/selftests/rcutorture/formal/srcu-cbmc/tests/store_buffering/test.c
 create mode 100755 tools/testing/selftests/rcutorture/formal/srcu-cbmc/tests/test_script.sh

             reply	other threads:[~2017-01-30 17:28 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-01-30 17:28 Paul E. McKenney [this message]
2017-01-31  6:47 ` [GIT PULL rcu/next] RCU commits for 4.11 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=20170130172811.GA22176@linux.vnet.ibm.com \
    --to=paulmck@linux.vnet.ibm.com \
    --cc=bigeasy@linutronix.de \
    --cc=boqun.feng@gmail.com \
    --cc=byungchul.park@lge.com \
    --cc=chris.friesen@windriver.com \
    --cc=joelaf@google.com \
    --cc=josh@joshtriplett.org \
    --cc=ldr709@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mathieu.desnoyers@efficios.com \
    --cc=matt@codeblueprint.co.uk \
    --cc=mingo@kernel.org \
    --cc=mixaskok@gmail.com \
    --cc=penguin-kernel@I-love.SAKURA.ne.jp \
    --cc=richard@nod.at \
    --cc=tklauser@distanz.ch \
    --cc=vincent.weaver@maine.edu \
    --cc=yang.shi@linaro.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.