]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
Merge branch 'for-mingo-rcu' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck...
authorIngo Molnar <mingo@kernel.org>
Fri, 12 Feb 2021 11:50:09 +0000 (12:50 +0100)
committerIngo Molnar <mingo@kernel.org>
Fri, 12 Feb 2021 11:56:55 +0000 (12:56 +0100)
Pull RCU updates from Paul E. McKenney:

- Documentation updates.

- Miscellaneous fixes.

- kfree_rcu() updates: Addition of mem_dump_obj() to provide allocator return
  addresses to more easily locate bugs.  This has a couple of RCU-related commits,
  but is mostly MM.  Was pulled in with akpm's agreement.

- Per-callback-batch tracking of numbers of callbacks,
  which enables better debugging information and smarter
  reactions to large numbers of callbacks.

- The first round of changes to allow CPUs to be runtime switched from and to
  callback-offloaded state.

- CONFIG_PREEMPT_RT-related changes.

- RCU CPU stall warning updates.
- Addition of polling grace-period APIs for SRCU.

- Torture-test and torture-test scripting updates, including a "torture everything"
  script that runs rcutorture, locktorture, scftorture, rcuscale, and refscale.
  Plus does an allmodconfig build.

Signed-off-by: Ingo Molnar <mingo@kernel.org>
1  2 
Documentation/RCU/Design/Requirements/Requirements.rst
Documentation/admin-guide/kernel-parameters.txt
include/linux/mm.h
include/linux/vmalloc.h
kernel/sched/core.c
mm/slub.c
mm/vmalloc.c

index d4c9a016074b3c7476819d291cb8105597d3760b,0da9133fa13ab675ff624868560fdbfbd98e3953..38a39476fc248af893ab574bd13e4eed92278fdf
@@@ -1182,11 -1181,11 +1181,11 @@@ and has become decreasingly so as memor
  costs have plummeted. However, as I learned from Matt Mackall's
  `bloatwatch <http://elinux.org/Linux_Tiny-FAQ>`__ efforts, memory
  footprint is critically important on single-CPU systems with
- non-preemptible (``CONFIG_PREEMPT=n``) kernels, and thus `tiny
- RCU <https://lkml.kernel.org/g/20090113221724.GA15307@linux.vnet.ibm.com>`__
+ non-preemptible (``CONFIG_PREEMPTION=n``) kernels, and thus `tiny
+ RCU <https://lore.kernel.org/r/20090113221724.GA15307@linux.vnet.ibm.com>`__
  was born. Josh Triplett has since taken over the small-memory banner
  with his `Linux kernel tinification <https://tiny.wiki.kernel.org/>`__
 -project, which resulted in `SRCU <#Sleepable%20RCU>`__ becoming optional
 +project, which resulted in `SRCU <Sleepable RCU_>`__ becoming optional
  for those kernels not needing it.
  
  The remaining performance requirements are, for the most part,
@@@ -1457,10 -1456,10 +1456,10 @@@ will vary as the value of ``HZ`` varies
  the relevant Kconfig options and kernel boot parameters. RCU currently
  does not do much sanity checking of these parameters, so please use
  caution when changing them. Note that these forward-progress measures
 -are provided only for RCU, not for `SRCU <#Sleepable%20RCU>`__ or `Tasks
 -RCU <#Tasks%20RCU>`__.
 +are provided only for RCU, not for `SRCU <Sleepable RCU_>`__ or `Tasks
 +RCU`_.
  
- RCU takes the following steps in ``call_rcu()`` to encourage timely
+ RCU takes the following steps in call_rcu() to encourage timely
  invocation of callbacks when any given non-\ ``rcu_nocbs`` CPU has
  10,000 callbacks, or has 10,000 more callbacks than it had the last time
  encouragement was provided:
  
  Again, these are default values when running at ``HZ=1000``, and can be
  overridden. Again, these forward-progress measures are provided only for
 -RCU, not for `SRCU <#Sleepable%20RCU>`__ or `Tasks
 -RCU <#Tasks%20RCU>`__. Even for RCU, callback-invocation forward
 +RCU, not for `SRCU <Sleepable RCU_>`__ or `Tasks
 +RCU`_. Even for RCU, callback-invocation forward
  progress for ``rcu_nocbs`` CPUs is much less well-developed, in part
  because workloads benefiting from ``rcu_nocbs`` CPUs tend to invoke
``call_rcu()`` relatively infrequently. If workloads emerge that need
- both ``rcu_nocbs`` CPUs and high ``call_rcu()`` invocation rates, then
call_rcu() relatively infrequently. If workloads emerge that need
+ both ``rcu_nocbs`` CPUs and high call_rcu() invocation rates, then
  additional forward-progress work will be required.
  
  Composability
Simple merge
Simple merge
Simple merge
diff --cc mm/slub.c
Simple merge
diff --cc mm/vmalloc.c
Simple merge