1. 01 Dec, 2018 16 commits
    • Paul E. McKenney's avatar
      rcutorture: Break up too-long rcu_torture_fwd_prog() function · 6b3de7a1
      Paul E. McKenney authored
      This commit splits rcu_torture_fwd_prog_nr() and rcu_torture_fwd_prog_cr()
      functions out of rcu_torture_fwd_prog() in order to reduce indentation
      pain and because rcu_torture_fwd_prog() was getting a bit too long.
      In addition, this will enable easier conditional execution of the
      rcu_torture_fwd_prog_cr() function, which can give false-positive
      failures in some NO_HZ_FULL configurations due to overloading the
      housekeeping CPUs.
      Signed-off-by: default avatarPaul E. McKenney <paulmck@linux.vnet.ibm.com>
      6b3de7a1
    • Paul E. McKenney's avatar
      rcutorture: Remove cbflood facility · fc6f9c57
      Paul E. McKenney authored
      Now that the forward-progress code does a full-bore continuous callback
      flood lasting multiple seconds, there is little point in also posting a
      mere 60,000 callbacks every second or so.  This commit therefore removes
      the old cbflood testing.  Over time, it may be desirable to concurrently
      do full-bore continuous callback floods on all CPUs simultaneously, but
      one dragon at a time.
      Signed-off-by: default avatarPaul E. McKenney <paulmck@linux.vnet.ibm.com>
      fc6f9c57
    • Paul E. McKenney's avatar
      torture: Bring any extra CPUs online during kernel startup · 28cf5952
      Paul E. McKenney authored
      Currently, the torture scripts rely on the initrd/init script to bring
      any extra CPUs online, for example, in the case where the kernel and
      qemu have different ideas about how many CPUs are present.  This works,
      but is an unnecessary dependency on initrd, which needs to vary depending
      on the distro.  This commit therefore causes torture_onoff() to check
      for additional CPUs, attempting to bring any found online. Errors are
      ignored, just as they are by the initrd/init script.
      Signed-off-by: default avatarPaul E. McKenney <paulmck@linux.vnet.ibm.com>
      28cf5952
    • Paul E. McKenney's avatar
      rcutorture: Add call_rcu() flooding forward-progress tests · 48718485
      Paul E. McKenney authored
      This commit adds a call_rcu() flooding loop to the forward-progress test.
      This emulates tight userspace loops that force call_rcu() invocations,
      for example, the infamous loop containing close(open()) that instigated
      the addition of blimit.  If RCU does not make sufficient forward progress
      in invoking the resulting flood of callbacks, rcutorture emits a warning.
      Signed-off-by: default avatarPaul E. McKenney <paulmck@linux.vnet.ibm.com>
      48718485
    • Paul E. McKenney's avatar
      Merge branches 'bug.2018.11.12a', 'consolidate.2018.12.01a',... · eaaf055f
      Paul E. McKenney authored
      Merge branches 'bug.2018.11.12a', 'consolidate.2018.12.01a', 'doc.2018.11.12a', 'fixes.2018.11.12a', 'initrd.2018.11.08b', 'sil.2018.11.12a' and 'srcu.2018.11.27a' into HEAD
      
      bug.2018.11.12a:  Get rid of BUG_ON() and friends
      consolidate.2018.12.01a:  Continued RCU flavor-consolidation cleanup
      doc.2018.11.12a:  Documentation updates
      fixes.2018.11.12a:  Miscellaneous fixes
      initrd.2018.11.08b:  Automate creation of rcutorture initrd
      sil.2018.11.12a:  Remove more spin_unlock_wait() calls
      eaaf055f
    • Paul E. McKenney's avatar
      rcutorture/formal: Replace synchronize_sched() with synchronize_rcu() · df56e0f9
      Paul E. McKenney authored
      Now that synchronize_rcu() waits for preempt-disable regions of code
      as well as RCU read-side critical sections, synchronize_sched() can be
      replaced by synchronize_rcu().  This commit therefore makes this change,
      even though it is but a comment.
      Signed-off-by: default avatarPaul E. McKenney <paulmck@linux.ibm.com>
      df56e0f9
    • Paul E. McKenney's avatar
      tools/kernel.h: Replace synchronize_sched() with synchronize_rcu() · 4a67e3a7
      Paul E. McKenney authored
      Now that synchronize_rcu() waits for preempt-disable regions of code
      as well as RCU read-side critical sections, synchronize_sched() can be
      replaced by synchronize_rcu().  This commit therefore makes this change,
      even though it is but a comment.
      Signed-off-by: default avatarPaul E. McKenney <paulmck@linux.ibm.com>
      Cc: Matthew Wilcox <willy@infradead.org>
      Cc: <linux-kernel@vger.kernel.org>
      4a67e3a7
    • Paul E. McKenney's avatar
      net/decnet: Replace rcu_barrier_bh() with rcu_barrier() · dd06d25d
      Paul E. McKenney authored
      Now that all RCU flavors have been consolidated, rcu_barrier_bh()
      is but a synonym for rcu_barrier().  This commit therefore replaces
      the former with the latter.
      Signed-off-by: default avatarPaul E. McKenney <paulmck@linux.ibm.com>
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: <linux-decnet-user@lists.sourceforge.net>
      Cc: <netdev@vger.kernel.org>
      dd06d25d
    • Paul E. McKenney's avatar
      net/core/skmsg: Replace call_rcu_sched() with call_rcu() · 0245b80e
      Paul E. McKenney authored
      Now that call_rcu()'s callback is not invoked until after all
      preempt-disable regions of code have completed (in addition to explicitly
      marked RCU read-side critical sections), call_rcu() can be used in place
      of call_rcu_sched().  This commit therefore makes that change.
      Signed-off-by: default avatarPaul E. McKenney <paulmck@linux.ibm.com>
      Cc: John Fastabend <john.fastabend@gmail.com>
      Cc: Daniel Borkmann <daniel@iogearbox.net>
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: <netdev@vger.kernel.org>
      0245b80e
    • Paul E. McKenney's avatar
      livepatch: Replace synchronize_sched() with synchronize_rcu() · 6932689e
      Paul E. McKenney authored
      Now that synchronize_rcu() waits for preempt-disable regions of code
      as well as RCU read-side critical sections, synchronize_sched() can be
      replaced by synchronize_rcu().  This commit therefore makes this change,
      even though it is but a comment.
      Signed-off-by: default avatarPaul E. McKenney <paulmck@linux.ibm.com>
      6932689e
    • Paul E. McKenney's avatar
      cgroups: Replace synchronize_sched() with synchronize_rcu() · 2af3024c
      Paul E. McKenney authored
      Now that synchronize_rcu() waits for preempt-disable regions of code
      as well as RCU read-side critical sections, synchronize_sched() can be
      replaced by synchronize_rcu().  This commit therefore makes this change,
      even though it is but a comment.
      Signed-off-by: default avatarPaul E. McKenney <paulmck@linux.ibm.com>
      Cc: Jens Axboe <axboe@kernel.dk>
      Cc: Dennis Zhou <dennis@kernel.org>
      Cc: Johannes Weiner <hannes@cmpxchg.org>
      Cc: "Dennis Zhou (Facebook)" <dennisszhou@gmail.com>
      Acked-by: default avatarTejun Heo <tj@kernel.org>
      2af3024c
    • Paul E. McKenney's avatar
      types: Remove call_rcu_bh() and call_rcu_sched() · d5cccfc7
      Paul E. McKenney authored
      Now that call_rcu()'s callback is not invoked until after bh-disable and
      preempt-disable regions of code have completed (in addition to explicitly
      marked RCU read-side critical sections), call_rcu() can be used in place
      of call_rcu_bh() and call_rcu_sched().  This commit therefore removes
      these two API members from the callback_head structure's header comment.
      Signed-off-by: default avatarPaul E. McKenney <paulmck@linux.ibm.com>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: Pekka Enberg <penberg@kernel.org>
      Cc: Masahiro Yamada <yamada.masahiro@socionext.com>
      Cc: Alexey Dobriyan <adobriyan@gmail.com>
      d5cccfc7
    • Paul E. McKenney's avatar
      percpu-rwsem: Replace synchronize_sched() with synchronize_rcu() · e3e74054
      Paul E. McKenney authored
      Now that synchronize_rcu() waits for preempt-disable regions of code
      as well as RCU read-side critical sections, synchronize_sched() can be
      replaced by synchronize_rcu().  This commit therefore makes this change,
      even though it is but a comment.
      Signed-off-by: default avatarPaul E. McKenney <paulmck@linux.ibm.com>
      Cc: Dennis Zhou <dennis@kernel.org>
      Cc: Christoph Lameter <cl@linux.com>
      Acked-by: default avatarTejun Heo <tj@kernel.org>
      e3e74054
    • Paul E. McKenney's avatar
      net/bridge: Replace call_rcu_bh() and rcu_barrier_bh() · 1a56f7d5
      Paul E. McKenney authored
      Now that call_rcu()'s callback is not invoked until after all bh-disable
      regions of code have completed (in addition to explicitly marked
      RCU read-side critical sections), call_rcu() can be used in place
      of call_rcu_bh().  Similarly, rcu_barrier() can be used in place of
      rcu_barrier_bh().  This commit therefore makes these changes.
      Signed-off-by: default avatarPaul E. McKenney <paulmck@linux.ibm.com>
      Cc: Roopa Prabhu <roopa@cumulusnetworks.com>
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: <bridge@lists.linux-foundation.org>
      Cc: <netdev@vger.kernel.org>
      Acked-by: default avatarNikolay Aleksandrov <nikolay@cumulusnetworks.com>
      1a56f7d5
    • Paul E. McKenney's avatar
      net/core: Replace call_rcu_bh() and synchronize_rcu_bh() · 5da54c18
      Paul E. McKenney authored
      Now that call_rcu()'s callback is not invoked until after all bh-disable
      regions of code have completed (in addition to explicitly marked
      RCU read-side critical sections), call_rcu() can be used in place of
      call_rcu_bh().  Similarly, synchronize_rcu() can be used in place of
      synchronize_rcu_bh().  This commit therefore makes these changes.
      Signed-off-by: default avatarPaul E. McKenney <paulmck@linux.ibm.com>
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: Eric Dumazet <edumazet@google.com>
      Cc: <netdev@vger.kernel.org>
      5da54c18
    • Paul E. McKenney's avatar
      net/sched: Replace call_rcu_bh() and rcu_barrier_bh() · ae0e3349
      Paul E. McKenney authored
      Now that call_rcu()'s callback is not invoked until after bh-disable
      regions of code have completed (in addition to explicitly marked
      RCU read-side critical sections), call_rcu() can be used in place
      of call_rcu_bh().  Similarly, rcu_barrier() can be used in place o
      frcu_barrier_bh().  This commit therefore makes these changes.
      Signed-off-by: default avatarPaul E. McKenney <paulmck@linux.ibm.com>
      Cc: Jamal Hadi Salim <jhs@mojatatu.com>
      Cc: Cong Wang <xiyou.wangcong@gmail.com>
      Cc: Jiri Pirko <jiri@resnulli.us>
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: <netdev@vger.kernel.org>
      ae0e3349
  2. 27 Nov, 2018 21 commits
  3. 12 Nov, 2018 3 commits