linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [GIT PULL rcu/next] RCU commits for 4.7
@ 2016-04-26 16:41 Paul E. McKenney
  2016-04-27 14:59 ` Ingo Molnar
  0 siblings, 1 reply; 2+ messages in thread
From: Paul E. McKenney @ 2016-04-26 16:41 UTC (permalink / raw)
  To: mingo; +Cc: linux-kernel, anna-maria, artem.savkov, boqun.feng, yaodongdong

Hello, Ingo,

The changes in this series include:

1.	Documentation updates, including fixes to the design-level
	requirements documentation and a fixed version of the design-level
	data-structure documentation.  These fixes include removing
	cartoons and getting rid of the html/htmlx duplication.

	http://lkml.kernel.org/g/20160412151755.GA22416@linux.vnet.ibm.com

2.	Further improvements to the new-age expedited grace periods.

	http://lkml.kernel.org/g/20160412152906.GA23395@linux.vnet.ibm.com

3.	Miscellaneous fixes.

	http://lkml.kernel.org/g/20160412150157.GA19367@linux.vnet.ibm.com

4.	Torture-test changes, including a new rcuperf module for measuring
	RCU grace-period performance and scalability, which is useful for
	the expedited-grace-period changes.

	http://lkml.kernel.org/g/20160412154332.GA24983@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 dcd36d01fb3f99d1d5df01714f6ccbe3fbbaf81f:

  Merge branches 'doc.2016.04.19a', 'exp.2016.03.31d', 'fixes.2016.03.31d' and 'torture.2016.04.21a' into HEAD (2016-04-21 13:48:20 -0700)

----------------------------------------------------------------
Anna-Maria Gleixner (1):
      rcutorture: Consider FROZEN hotplug notifier transitions

Artem Savkov (1):
      rcuperf: Do not wake up shutdown wait queue if "shutdown" is false.

Boqun Feng (1):
      rcu: Remove superfluous versions of rcu_read_lock_sched_held()

Paul E. McKenney (53):
      rcu: Consolidate dumping of ftrace buffer
      documentation:  Add real-time requirements from CPU-bound workloads
      documentation: Add synchronize_rcu_mult() to the requirements
      documentation: Explain why rcu_read_lock() needs no barrier()
      documentation: Document illegality of call_rcu() from offline CPUs
      documentation: Remove unnecessary images from requirements
      documentation: Get rid of duplicate .htmlx file
      documentation: Sharpen up the no-readers quick quiz
      documentation: Emphasize the call_rcu() is illegal from idle
      rcu: Make expedited RCU-sched grace period immediately detect idle
      rcu: Make expedited RCU-preempt stall warnings count accurately
      rcu: Make cond_resched_rcu_qs() supply RCU-sched expedited QS
      rcu: Fix synchronize_rcu_expedited() header comment
      rcu: Add event tracing definitions for expedited grace periods
      rcu: Add funnel-locking tracing for expedited grace periods
      rcu: Add expedited-grace-period event tracing
      rcu: Remove expedited GP funnel-lock bypass
      rcu: Force boolean subscript for expedited stall warnings
      rcu: Shorten expedited_workdone* to exp_workdone*
      rcu: Enforce expedited-GP fairness via funnel wait queue
      rcu: Add exp_funnel_lock() fastpath
      rcu: Consolidate expedited GP code into rcu_exp_wait_wake()
      rcu: Consolidate expedited GP tracing into rcu_exp_gp_seq_snap()
      rcu: Consolidate expedited GP code into exp_funnel_lock()
      rcu: Overlap wakeups with next expedited grace period
      rcu: Awaken grace-period kthread when stalled
      rcu: Make FQS schedule advance only if FQS happened
      rcu: Awaken grace-period kthread if too long since FQS
      rcu: Dump ftrace buffer when kicking grace-period kthread
      rcutorture: Update scripting to accommodate rcuperf
      rcutorture: Allow for rcupdate.rcu_normal
      rcutorture: Expedited-GP batch progress access to torturing
      rcutorture: Add RCU grace-period performance tests
      rcutorture: Documentation for rcuperf kernel parameters
      rcutorture: Bind rcuperf reader/writer kthreads to CPUs
      rcutorture: Set rcuperf writer kthreads to real-time priority
      rcutorture: Print measure of batching efficiency
      rcutorture: Make rcuperf collect expedited event-trace data
      rcutorture: Make scripts analyze rcuperf trace data, if present
      rcutorture: Add rcuperf holdoff boot parameter to reduce interference
      rcutorture: Avoid RCU CPU stall warning and RT throttling
      rcutorture: Add largish-system rcuperf scenario
      rcutorture: Remove redundant initialization to zero
      torture: Clarify refusal to run more than one torture test
      torture: Kill qemu, not parent process
      rcutorture: Convert test duration to seconds early
      documentation: Add documentation for RCU's major data structures
      rcutorture: Add OS-jitter capability
      rcutorture: Don't rebuild identical kernel
      rcutorture: Dump trace buffer upon shutdown
      rcutorture: Add irqs-disabled test for call_rcu()
      rcutorture: Add boot-time adjustment of leaf fanout
      Merge branches 'doc.2016.04.19a', 'exp.2016.03.31d', 'fixes.2016.03.31d' and 'torture.2016.04.21a' into HEAD

Yao Dongdong (1):
      documentation: Make sample code and documentation consistent

 .../Design/Data-Structures/BigTreeClassicRCU.svg   |  474 ++++
 .../Design/Data-Structures/BigTreeClassicRCUBH.svg |  499 ++++
 .../Data-Structures/BigTreeClassicRCUBHdyntick.svg |  695 +++++
 .../Data-Structures/BigTreePreemptRCUBHdyntick.svg |  741 ++++++
 .../BigTreePreemptRCUBHdyntickCB.svg               |  858 ++++++
 .../Design/Data-Structures/Data-Structures.html    | 1333 ++++++++++
 .../Design/Data-Structures/HugeTreeClassicRCU.svg  |  939 +++++++
 .../RCU/Design/Data-Structures/TreeLevel.svg       |  828 ++++++
 .../RCU/Design/Data-Structures/TreeMapping.svg     |  305 +++
 .../Design/Data-Structures/TreeMappingLevel.svg    |  380 +++
 .../RCU/Design/Data-Structures/blkd_task.svg       |  843 ++++++
 .../RCU/Design/Data-Structures/nxtlist.svg         |  396 +++
 .../RCU/Design/Requirements/2013-08-is-it-dead.png |  Bin 100825 -> 0 bytes
 .../RCU/Design/Requirements/RCUApplicability.svg   |  237 --
 .../RCU/Design/Requirements/Requirements.html      |  941 ++++---
 .../RCU/Design/Requirements/Requirements.htmlx     | 2741 --------------------
 Documentation/RCU/Design/htmlqqz.sh                |  108 -
 Documentation/RCU/trace.txt                        |   10 +-
 Documentation/RCU/whatisRCU.txt                    |   22 +-
 Documentation/kernel-parameters.txt                |   38 +
 include/linux/rcupdate.h                           |   30 +-
 include/linux/rcutiny.h                            |   16 +
 include/linux/rcutree.h                            |    2 +
 include/trace/events/rcu.h                         |   79 +-
 kernel/rcu/Makefile                                |    1 +
 kernel/rcu/rcuperf.c                               |  655 +++++
 kernel/rcu/rcutorture.c                            |   29 +-
 kernel/rcu/tree.c                                  |  302 ++-
 kernel/rcu/tree.h                                  |   20 +-
 kernel/rcu/tree_plugin.h                           |   37 +-
 kernel/rcu/tree_trace.c                            |   13 +-
 kernel/rcu/update.c                                |    4 +-
 kernel/torture.c                                   |    4 +-
 lib/Kconfig.debug                                  |   33 +
 tools/testing/selftests/rcutorture/bin/jitter.sh   |   90 +
 .../rcutorture/bin/kvm-recheck-rcuperf-ftrace.sh   |  121 +
 .../rcutorture/bin/kvm-recheck-rcuperf.sh          |   96 +
 .../selftests/rcutorture/bin/kvm-recheck.sh        |    5 +-
 .../selftests/rcutorture/bin/kvm-test-1-run.sh     |   59 +-
 tools/testing/selftests/rcutorture/bin/kvm.sh      |   24 +-
 .../selftests/rcutorture/configs/rcu/TREE04        |    2 +-
 .../selftests/rcutorture/configs/rcu/TREE04.boot   |    2 +-
 .../selftests/rcutorture/configs/rcuperf/CFLIST    |    1 +
 .../selftests/rcutorture/configs/rcuperf/CFcommon  |    2 +
 .../selftests/rcutorture/configs/rcuperf/TREE      |   20 +
 .../selftests/rcutorture/configs/rcuperf/TREE54    |   23 +
 .../rcutorture/configs/rcuperf/ver_functions.sh    |   52 +
 47 files changed, 10417 insertions(+), 3693 deletions(-)
 create mode 100644 Documentation/RCU/Design/Data-Structures/BigTreeClassicRCU.svg
 create mode 100644 Documentation/RCU/Design/Data-Structures/BigTreeClassicRCUBH.svg
 create mode 100644 Documentation/RCU/Design/Data-Structures/BigTreeClassicRCUBHdyntick.svg
 create mode 100644 Documentation/RCU/Design/Data-Structures/BigTreePreemptRCUBHdyntick.svg
 create mode 100644 Documentation/RCU/Design/Data-Structures/BigTreePreemptRCUBHdyntickCB.svg
 create mode 100644 Documentation/RCU/Design/Data-Structures/Data-Structures.html
 create mode 100644 Documentation/RCU/Design/Data-Structures/HugeTreeClassicRCU.svg
 create mode 100644 Documentation/RCU/Design/Data-Structures/TreeLevel.svg
 create mode 100644 Documentation/RCU/Design/Data-Structures/TreeMapping.svg
 create mode 100644 Documentation/RCU/Design/Data-Structures/TreeMappingLevel.svg
 create mode 100644 Documentation/RCU/Design/Data-Structures/blkd_task.svg
 create mode 100644 Documentation/RCU/Design/Data-Structures/nxtlist.svg
 delete mode 100644 Documentation/RCU/Design/Requirements/2013-08-is-it-dead.png
 delete mode 100644 Documentation/RCU/Design/Requirements/RCUApplicability.svg
 delete mode 100644 Documentation/RCU/Design/Requirements/Requirements.htmlx
 delete mode 100755 Documentation/RCU/Design/htmlqqz.sh
 create mode 100644 kernel/rcu/rcuperf.c
 create mode 100755 tools/testing/selftests/rcutorture/bin/jitter.sh
 create mode 100755 tools/testing/selftests/rcutorture/bin/kvm-recheck-rcuperf-ftrace.sh
 create mode 100755 tools/testing/selftests/rcutorture/bin/kvm-recheck-rcuperf.sh
 create mode 100644 tools/testing/selftests/rcutorture/configs/rcuperf/CFLIST
 create mode 100644 tools/testing/selftests/rcutorture/configs/rcuperf/CFcommon
 create mode 100644 tools/testing/selftests/rcutorture/configs/rcuperf/TREE
 create mode 100644 tools/testing/selftests/rcutorture/configs/rcuperf/TREE54
 create mode 100644 tools/testing/selftests/rcutorture/configs/rcuperf/ver_functions.sh

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [GIT PULL rcu/next] RCU commits for 4.7
  2016-04-26 16:41 [GIT PULL rcu/next] RCU commits for 4.7 Paul E. McKenney
@ 2016-04-27 14:59 ` Ingo Molnar
  0 siblings, 0 replies; 2+ messages in thread
From: Ingo Molnar @ 2016-04-27 14:59 UTC (permalink / raw)
  To: Paul E. McKenney
  Cc: linux-kernel, anna-maria, artem.savkov, boqun.feng, yaodongdong


* Paul E. McKenney <paulmck@linux.vnet.ibm.com> wrote:

> Hello, Ingo,
> 
> The changes in this series include:
> 
> 1.	Documentation updates, including fixes to the design-level
> 	requirements documentation and a fixed version of the design-level
> 	data-structure documentation.  These fixes include removing
> 	cartoons and getting rid of the html/htmlx duplication.
> 
> 	http://lkml.kernel.org/g/20160412151755.GA22416@linux.vnet.ibm.com
> 
> 2.	Further improvements to the new-age expedited grace periods.
> 
> 	http://lkml.kernel.org/g/20160412152906.GA23395@linux.vnet.ibm.com
> 
> 3.	Miscellaneous fixes.
> 
> 	http://lkml.kernel.org/g/20160412150157.GA19367@linux.vnet.ibm.com
> 
> 4.	Torture-test changes, including a new rcuperf module for measuring
> 	RCU grace-period performance and scalability, which is useful for
> 	the expedited-grace-period changes.
> 
> 	http://lkml.kernel.org/g/20160412154332.GA24983@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 dcd36d01fb3f99d1d5df01714f6ccbe3fbbaf81f:
> 
>   Merge branches 'doc.2016.04.19a', 'exp.2016.03.31d', 'fixes.2016.03.31d' and 'torture.2016.04.21a' into HEAD (2016-04-21 13:48:20 -0700)
> 
> ----------------------------------------------------------------
> Anna-Maria Gleixner (1):
>       rcutorture: Consider FROZEN hotplug notifier transitions
> 
> Artem Savkov (1):
>       rcuperf: Do not wake up shutdown wait queue if "shutdown" is false.
> 
> Boqun Feng (1):
>       rcu: Remove superfluous versions of rcu_read_lock_sched_held()
> 
> Paul E. McKenney (53):
>       rcu: Consolidate dumping of ftrace buffer
>       documentation:  Add real-time requirements from CPU-bound workloads
>       documentation: Add synchronize_rcu_mult() to the requirements
>       documentation: Explain why rcu_read_lock() needs no barrier()
>       documentation: Document illegality of call_rcu() from offline CPUs
>       documentation: Remove unnecessary images from requirements
>       documentation: Get rid of duplicate .htmlx file
>       documentation: Sharpen up the no-readers quick quiz
>       documentation: Emphasize the call_rcu() is illegal from idle
>       rcu: Make expedited RCU-sched grace period immediately detect idle
>       rcu: Make expedited RCU-preempt stall warnings count accurately
>       rcu: Make cond_resched_rcu_qs() supply RCU-sched expedited QS
>       rcu: Fix synchronize_rcu_expedited() header comment
>       rcu: Add event tracing definitions for expedited grace periods
>       rcu: Add funnel-locking tracing for expedited grace periods
>       rcu: Add expedited-grace-period event tracing
>       rcu: Remove expedited GP funnel-lock bypass
>       rcu: Force boolean subscript for expedited stall warnings
>       rcu: Shorten expedited_workdone* to exp_workdone*
>       rcu: Enforce expedited-GP fairness via funnel wait queue
>       rcu: Add exp_funnel_lock() fastpath
>       rcu: Consolidate expedited GP code into rcu_exp_wait_wake()
>       rcu: Consolidate expedited GP tracing into rcu_exp_gp_seq_snap()
>       rcu: Consolidate expedited GP code into exp_funnel_lock()
>       rcu: Overlap wakeups with next expedited grace period
>       rcu: Awaken grace-period kthread when stalled
>       rcu: Make FQS schedule advance only if FQS happened
>       rcu: Awaken grace-period kthread if too long since FQS
>       rcu: Dump ftrace buffer when kicking grace-period kthread
>       rcutorture: Update scripting to accommodate rcuperf
>       rcutorture: Allow for rcupdate.rcu_normal
>       rcutorture: Expedited-GP batch progress access to torturing
>       rcutorture: Add RCU grace-period performance tests
>       rcutorture: Documentation for rcuperf kernel parameters
>       rcutorture: Bind rcuperf reader/writer kthreads to CPUs
>       rcutorture: Set rcuperf writer kthreads to real-time priority
>       rcutorture: Print measure of batching efficiency
>       rcutorture: Make rcuperf collect expedited event-trace data
>       rcutorture: Make scripts analyze rcuperf trace data, if present
>       rcutorture: Add rcuperf holdoff boot parameter to reduce interference
>       rcutorture: Avoid RCU CPU stall warning and RT throttling
>       rcutorture: Add largish-system rcuperf scenario
>       rcutorture: Remove redundant initialization to zero
>       torture: Clarify refusal to run more than one torture test
>       torture: Kill qemu, not parent process
>       rcutorture: Convert test duration to seconds early
>       documentation: Add documentation for RCU's major data structures
>       rcutorture: Add OS-jitter capability
>       rcutorture: Don't rebuild identical kernel
>       rcutorture: Dump trace buffer upon shutdown
>       rcutorture: Add irqs-disabled test for call_rcu()
>       rcutorture: Add boot-time adjustment of leaf fanout
>       Merge branches 'doc.2016.04.19a', 'exp.2016.03.31d', 'fixes.2016.03.31d' and 'torture.2016.04.21a' into HEAD
> 
> Yao Dongdong (1):
>       documentation: Make sample code and documentation consistent
> 
>  .../Design/Data-Structures/BigTreeClassicRCU.svg   |  474 ++++
>  .../Design/Data-Structures/BigTreeClassicRCUBH.svg |  499 ++++
>  .../Data-Structures/BigTreeClassicRCUBHdyntick.svg |  695 +++++
>  .../Data-Structures/BigTreePreemptRCUBHdyntick.svg |  741 ++++++
>  .../BigTreePreemptRCUBHdyntickCB.svg               |  858 ++++++
>  .../Design/Data-Structures/Data-Structures.html    | 1333 ++++++++++
>  .../Design/Data-Structures/HugeTreeClassicRCU.svg  |  939 +++++++
>  .../RCU/Design/Data-Structures/TreeLevel.svg       |  828 ++++++
>  .../RCU/Design/Data-Structures/TreeMapping.svg     |  305 +++
>  .../Design/Data-Structures/TreeMappingLevel.svg    |  380 +++
>  .../RCU/Design/Data-Structures/blkd_task.svg       |  843 ++++++
>  .../RCU/Design/Data-Structures/nxtlist.svg         |  396 +++
>  .../RCU/Design/Requirements/2013-08-is-it-dead.png |  Bin 100825 -> 0 bytes
>  .../RCU/Design/Requirements/RCUApplicability.svg   |  237 --
>  .../RCU/Design/Requirements/Requirements.html      |  941 ++++---
>  .../RCU/Design/Requirements/Requirements.htmlx     | 2741 --------------------
>  Documentation/RCU/Design/htmlqqz.sh                |  108 -
>  Documentation/RCU/trace.txt                        |   10 +-
>  Documentation/RCU/whatisRCU.txt                    |   22 +-
>  Documentation/kernel-parameters.txt                |   38 +
>  include/linux/rcupdate.h                           |   30 +-
>  include/linux/rcutiny.h                            |   16 +
>  include/linux/rcutree.h                            |    2 +
>  include/trace/events/rcu.h                         |   79 +-
>  kernel/rcu/Makefile                                |    1 +
>  kernel/rcu/rcuperf.c                               |  655 +++++
>  kernel/rcu/rcutorture.c                            |   29 +-
>  kernel/rcu/tree.c                                  |  302 ++-
>  kernel/rcu/tree.h                                  |   20 +-
>  kernel/rcu/tree_plugin.h                           |   37 +-
>  kernel/rcu/tree_trace.c                            |   13 +-
>  kernel/rcu/update.c                                |    4 +-
>  kernel/torture.c                                   |    4 +-
>  lib/Kconfig.debug                                  |   33 +
>  tools/testing/selftests/rcutorture/bin/jitter.sh   |   90 +
>  .../rcutorture/bin/kvm-recheck-rcuperf-ftrace.sh   |  121 +
>  .../rcutorture/bin/kvm-recheck-rcuperf.sh          |   96 +
>  .../selftests/rcutorture/bin/kvm-recheck.sh        |    5 +-
>  .../selftests/rcutorture/bin/kvm-test-1-run.sh     |   59 +-
>  tools/testing/selftests/rcutorture/bin/kvm.sh      |   24 +-
>  .../selftests/rcutorture/configs/rcu/TREE04        |    2 +-
>  .../selftests/rcutorture/configs/rcu/TREE04.boot   |    2 +-
>  .../selftests/rcutorture/configs/rcuperf/CFLIST    |    1 +
>  .../selftests/rcutorture/configs/rcuperf/CFcommon  |    2 +
>  .../selftests/rcutorture/configs/rcuperf/TREE      |   20 +
>  .../selftests/rcutorture/configs/rcuperf/TREE54    |   23 +
>  .../rcutorture/configs/rcuperf/ver_functions.sh    |   52 +
>  47 files changed, 10417 insertions(+), 3693 deletions(-)
>  create mode 100644 Documentation/RCU/Design/Data-Structures/BigTreeClassicRCU.svg
>  create mode 100644 Documentation/RCU/Design/Data-Structures/BigTreeClassicRCUBH.svg
>  create mode 100644 Documentation/RCU/Design/Data-Structures/BigTreeClassicRCUBHdyntick.svg
>  create mode 100644 Documentation/RCU/Design/Data-Structures/BigTreePreemptRCUBHdyntick.svg
>  create mode 100644 Documentation/RCU/Design/Data-Structures/BigTreePreemptRCUBHdyntickCB.svg
>  create mode 100644 Documentation/RCU/Design/Data-Structures/Data-Structures.html
>  create mode 100644 Documentation/RCU/Design/Data-Structures/HugeTreeClassicRCU.svg
>  create mode 100644 Documentation/RCU/Design/Data-Structures/TreeLevel.svg
>  create mode 100644 Documentation/RCU/Design/Data-Structures/TreeMapping.svg
>  create mode 100644 Documentation/RCU/Design/Data-Structures/TreeMappingLevel.svg
>  create mode 100644 Documentation/RCU/Design/Data-Structures/blkd_task.svg
>  create mode 100644 Documentation/RCU/Design/Data-Structures/nxtlist.svg
>  delete mode 100644 Documentation/RCU/Design/Requirements/2013-08-is-it-dead.png
>  delete mode 100644 Documentation/RCU/Design/Requirements/RCUApplicability.svg
>  delete mode 100644 Documentation/RCU/Design/Requirements/Requirements.htmlx
>  delete mode 100755 Documentation/RCU/Design/htmlqqz.sh
>  create mode 100644 kernel/rcu/rcuperf.c
>  create mode 100755 tools/testing/selftests/rcutorture/bin/jitter.sh
>  create mode 100755 tools/testing/selftests/rcutorture/bin/kvm-recheck-rcuperf-ftrace.sh
>  create mode 100755 tools/testing/selftests/rcutorture/bin/kvm-recheck-rcuperf.sh
>  create mode 100644 tools/testing/selftests/rcutorture/configs/rcuperf/CFLIST
>  create mode 100644 tools/testing/selftests/rcutorture/configs/rcuperf/CFcommon
>  create mode 100644 tools/testing/selftests/rcutorture/configs/rcuperf/TREE
>  create mode 100644 tools/testing/selftests/rcutorture/configs/rcuperf/TREE54
>  create mode 100644 tools/testing/selftests/rcutorture/configs/rcuperf/ver_functions.sh

Pulled, thanks a lot Paul!

	Ingo

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2016-04-27 14:59 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-04-26 16:41 [GIT PULL rcu/next] RCU commits for 4.7 Paul E. McKenney
2016-04-27 14:59 ` Ingo Molnar

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).