RCU Archive on lore.kernel.org
 help / color / Atom feed
* [GIT PULL rcu/next + tools/memory-model] RCU and LKMM commits for 5.5
@ 2019-10-30 11:52 Paul E. McKenney
  0 siblings, 0 replies; only message in thread
From: Paul E. McKenney @ 2019-10-30 11:52 UTC (permalink / raw)
  To: mingo
  Cc: rcu, linux-kernel, joel, mchehab+samsung, bigeasy, dan.carpenter,
	frederic, 1ethanhansen, hslester96, linuxball, stern, sfr,
	James.Bottomley, martin.petersen

Hello, Ingo,

This pull request contains the following changes:

1.	Documentation updates.

	https://lore.kernel.org/lkml/20191003012741.GA12456@paulmck-ThinkPad-P72

2.	Miscellaneous fixes.

	https://lore.kernel.org/lkml/20191003013243.GA12705@paulmck-ThinkPad-P72

3.	Dynamic tick (nohz) updates, perhaps most notably changes to
	force the tick on when needed due to lengthy in-kernel execution
	on CPUs on which RCU is waiting.

	https://lore.kernel.org/lkml/20191003013834.GA12927@paulmck-ThinkPad-P72

4.	Replace rcu_swap_protected() with rcu_prepace_pointer().

	https://lore.kernel.org/lkml/20191022191136.GA25627@paulmck-ThinkPad-P72

	NOTE: Commit 81db81f82993 ("drivers/scsi: Replace
	rcu_swap_protected() with rcu_replace()") conflicts with the
	SCSI tree's d188b0675b21 ("scsi: core: Add sysfs attributes for
	VPD pages 0h and 89h"), as noted by Stephen Rothwell here:

	https://lore.kernel.org/lkml/20191029150826.38c26ef8@canb.auug.org.au

	Stephen's fixup looks good both to me and to Martin Peterson:

	https://lore.kernel.org/lkml/yq1pnif6ne7.fsf@oracle.com

5.	Torture-test updates.

	https://lore.kernel.org/lkml/20191003014710.GA13323@paulmck-ThinkPad-P72

6.	Linux-kernel memory consistency model updates.

	https://lore.kernel.org/lkml/20191003001039.GA8027@paulmck-ThinkPad-P72

All of these have been subjected to the kbuild 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 8e655478739142a2df879907d14977721ab36c9f:

  Merge branches 'doc.2019.10.29a', 'fixes.2019.10.29a', 'nohz.2019.10.28a', 'replace.2019.10.28a', 'torture.2019.10.05a' and 'lkmm.2019.10.05a' into HEAD (2019-10-29 02:49:25 -0700)

These changes decrease the size of the kernel by about 500 lines, mostly
due to .rst files being more compact than the original .html files.
The net savings would have been greater except for the addition of some
much-needed LKMM documentation.

----------------------------------------------------------------
Alan Stern (4):
      tools/memory-model: Fix data race detection for unordered store and load
      tools/memory-model/Documentation: Fix typos in explanation.txt
      tools/memory-model/Documentation: Put redefinition of rcu-fence into explanation.txt
      tools/memory-model/Documentation: Add plain accesses and data races to explanation.txt

Chuhong Yuan (1):
      locktorture: Replace strncmp() with str_has_prefix()

Dan Carpenter (1):
      rcu: Fix uninitialized variable in nocb_gp_wait()

Ethan Hansen (2):
      rcu: Remove unused function rcutorture_record_progress()
      rcu: Remove unused variable rcu_perf_writer_state

Frederic Weisbecker (1):
      nohz: Add TICK_DEP_BIT_RCU

Joel Fernandes (Google) (8):
      rcu: Reset CPU hints when reporting a quiescent state
      Revert docs from "rcu: Restore barrier() to rcu_read_lock() and rcu_read_unlock()"
      Revert docs from "treewide: Rename rcu_dereference_raw_notrace() to _check()"
      docs: rcu: Correct links referring to titles
      docs: rcu: Increase toctree to 3
      Restore docs "treewide: Rename rcu_dereference_raw_notrace() to _check()"
      Restore docs "rcu: Restore barrier() to rcu_read_lock() and rcu_read_unlock()"
      doc: Update list_for_each_entry_rcu() documentation

Mauro Carvalho Chehab (1):
      docs: rcu: convert some articles from html to ReST

Paul E. McKenney (32):
      rcu: Remove unused function hlist_bl_del_init_rcu()
      time: Export tick start/stop functions for rcutorture
      rcu: Force on tick when invoking lots of callbacks
      rcutorture: Force on tick for readers and callback flooders
      stop_machine: Provide RCU quiescent state in multi_cpu_stop()
      rcu: Make CPU-hotplug removal operations enable tick
      rcutorture: Emulate dyntick aspect of userspace nohz_full sojourn
      rcutorture: Remove CONFIG_HOTPLUG_CPU=n from scenarios
      rcutorture: Separate warnings for each failure type
      rcutorture: Make in-kernel-loop testing more brutal
      rcu: Upgrade rcu_swap_protected() to rcu_replace()
      x86/kvm/pmu: Replace rcu_swap_protected() with rcu_replace()
      drm/i915: Replace rcu_swap_protected() with rcu_replace()
      drivers/scsi: Replace rcu_swap_protected() with rcu_replace()
      fs/afs: Replace rcu_swap_protected() with rcu_replace()
      bpf/cgroup: Replace rcu_swap_protected() with rcu_replace()
      net/core: Replace rcu_swap_protected() with rcu_replace()
      net/netfilter: Replace rcu_swap_protected() with rcu_replace()
      net/sched: Replace rcu_swap_protected() with rcu_replace()
      security/safesetid: Replace rcu_swap_protected() with rcu_replace()
      rcu: Force tick on for nohz_full CPUs not reaching quiescent states
      rcu: Force nohz_full tick on upon irq enter instead of exit
      rcu: Confine ->core_needs_qs accesses to the corresponding CPU
      rcu: Make kernel-mode nohz_full CPUs invoke the RCU core processing
      rcu: Several rcu_segcblist functions can be static
      workqueue: Convert for_each_wq to use built-in list check
      rcu: Ensure that ->rcu_urgent_qs is set before resched IPI
      rcu: Remove obsolete descriptions for rcu_barrier tracepoint
      rcu: Update descriptions for rcu_nocb_wake tracepoint
      rcu: Update descriptions for rcu_future_grace_period tracepoint
      rcu: Suppress levelspread uninitialized messages
      Merge branches 'doc.2019.10.29a', 'fixes.2019.10.29a', 'nohz.2019.10.28a', 'replace.2019.10.28a', 'torture.2019.10.05a' and 'lkmm.2019.10.05a' into HEAD

Sebastian Andrzej Siewior (1):
      Documentation: Rename rcu_node_context_switch() to rcu_note_context_switch()

Wolfgang M. Reimer (1):
      locking: locktorture: Do not include rwlock.h directly

 .../Design/Data-Structures/Data-Structures.html    | 1391 --------
 .../RCU/Design/Data-Structures/Data-Structures.rst | 1163 +++++++
 .../Expedited-Grace-Periods.html                   |  668 ----
 .../Expedited-Grace-Periods.rst                    |  521 +++
 .../Design/Memory-Ordering/Tree-RCU-Diagram.html   |    9 -
 .../Memory-Ordering/Tree-RCU-Memory-Ordering.html  |  704 ----
 .../Memory-Ordering/Tree-RCU-Memory-Ordering.rst   |  624 ++++
 .../RCU/Design/Memory-Ordering/TreeRCU-gp.svg      |    2 +-
 .../RCU/Design/Memory-Ordering/TreeRCU-qs.svg      |    2 +-
 .../RCU/Design/Requirements/Requirements.html      | 3401 --------------------
 .../RCU/Design/Requirements/Requirements.rst       | 2704 ++++++++++++++++
 Documentation/RCU/index.rst                        |    7 +-
 Documentation/RCU/lockdep.txt                      |   18 +-
 Documentation/RCU/whatisRCU.txt                    |   14 +-
 arch/x86/kvm/pmu.c                                 |    4 +-
 drivers/gpu/drm/i915/gem/i915_gem_context.c        |    2 +-
 drivers/scsi/scsi.c                                |    4 +-
 drivers/scsi/scsi_sysfs.c                          |    8 +-
 fs/afs/vl_list.c                                   |    4 +-
 include/linux/rculist_bl.h                         |   28 -
 include/linux/rcupdate.h                           |   18 +
 include/linux/rcutiny.h                            |    1 +
 include/linux/rcutree.h                            |    1 +
 include/linux/tick.h                               |    7 +-
 include/trace/events/rcu.h                         |   47 +-
 include/trace/events/timer.h                       |    3 +-
 kernel/bpf/cgroup.c                                |    4 +-
 kernel/locking/locktorture.c                       |    9 +-
 kernel/rcu/rcu.h                                   |    4 +-
 kernel/rcu/rcu_segcblist.c                         |    6 +-
 kernel/rcu/rcuperf.c                               |   16 -
 kernel/rcu/rcutorture.c                            |   44 +-
 kernel/rcu/tree.c                                  |   73 +-
 kernel/rcu/tree.h                                  |    1 +
 kernel/rcu/tree_plugin.h                           |    2 +-
 kernel/stop_machine.c                              |    1 +
 kernel/time/tick-sched.c                           |   11 +
 kernel/workqueue.c                                 |   10 +-
 net/core/dev.c                                     |    4 +-
 net/core/sock_reuseport.c                          |    4 +-
 net/netfilter/nf_tables_api.c                      |    5 +-
 net/sched/act_api.c                                |    2 +-
 net/sched/act_csum.c                               |    4 +-
 net/sched/act_ct.c                                 |    3 +-
 net/sched/act_ctinfo.c                             |    4 +-
 net/sched/act_ife.c                                |    2 +-
 net/sched/act_mirred.c                             |    4 +-
 net/sched/act_mpls.c                               |    2 +-
 net/sched/act_police.c                             |    6 +-
 net/sched/act_sample.c                             |    4 +-
 net/sched/act_skbedit.c                            |    4 +-
 net/sched/act_tunnel_key.c                         |    4 +-
 net/sched/act_vlan.c                               |    2 +-
 security/safesetid/securityfs.c                    |    4 +-
 tools/memory-model/Documentation/explanation.txt   |  602 +++-
 tools/memory-model/linux-kernel.cat                |    2 +-
 .../selftests/rcutorture/configs/rcu/TASKS03       |    3 -
 .../selftests/rcutorture/configs/rcu/TREE02        |    3 -
 .../selftests/rcutorture/configs/rcu/TREE04        |    3 -
 .../selftests/rcutorture/configs/rcu/TREE06        |    3 -
 .../selftests/rcutorture/configs/rcu/TREE08        |    3 -
 .../selftests/rcutorture/configs/rcu/TREE09        |    3 -
 .../selftests/rcutorture/configs/rcu/TRIVIAL       |    3 -
 .../selftests/rcutorture/doc/TREE_RCU-kconfig.txt  |    1 -
 64 files changed, 5830 insertions(+), 6390 deletions(-)
 delete mode 100644 Documentation/RCU/Design/Data-Structures/Data-Structures.html
 create mode 100644 Documentation/RCU/Design/Data-Structures/Data-Structures.rst
 delete mode 100644 Documentation/RCU/Design/Expedited-Grace-Periods/Expedited-Grace-Periods.html
 create mode 100644 Documentation/RCU/Design/Expedited-Grace-Periods/Expedited-Grace-Periods.rst
 delete mode 100644 Documentation/RCU/Design/Memory-Ordering/Tree-RCU-Diagram.html
 delete mode 100644 Documentation/RCU/Design/Memory-Ordering/Tree-RCU-Memory-Ordering.html
 create mode 100644 Documentation/RCU/Design/Memory-Ordering/Tree-RCU-Memory-Ordering.rst
 delete mode 100644 Documentation/RCU/Design/Requirements/Requirements.html
 create mode 100644 Documentation/RCU/Design/Requirements/Requirements.rst

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, back to index

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-10-30 11:52 [GIT PULL rcu/next + tools/memory-model] RCU and LKMM commits for 5.5 Paul E. McKenney

RCU Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/rcu/0 rcu/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 rcu rcu/ https://lore.kernel.org/rcu \
		rcu@vger.kernel.org
	public-inbox-index rcu

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.kernel.vger.rcu


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git