09 Oct, 2020

1 commit

  • …k/linux-rcu into core/rcu

    Pull v5.10 RCU changes from Paul E. McKenney:

    - Debugging for smp_call_function().

    - Strict grace periods for KASAN. The point of this series is to find
    RCU-usage bugs, so the corresponding new RCU_STRICT_GRACE_PERIOD
    Kconfig option depends on both DEBUG_KERNEL and RCU_EXPERT, and is
    further disabled by dfefault. Finally, the help text includes
    a goodly list of scary caveats.

    - New smp_call_function() torture test.

    - Torture-test updates.

    - Documentation updates.

    - Miscellaneous fixes.

    Signed-off-by: Ingo Molnar <mingo@kernel.org>

    Ingo Molnar
     

25 Aug, 2020

4 commits


04 Aug, 2020

1 commit

  • Pull RCU updates from Ingo Molnar:

    - kfree_rcu updates

    - RCU tasks updates

    - Read-side scalability tests

    - SRCU updates

    - Torture-test updates

    - Documentation updates

    - Miscellaneous fixes

    * tag 'core-rcu-2020-08-03' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (109 commits)
    torture: Remove obsolete "cd $KVM"
    torture: Avoid duplicate specification of qemu command
    torture: Dump ftrace at shutdown only if requested
    torture: Add kvm-tranform.sh script for qemu-cmd files
    torture: Add more tracing crib notes to kvm.sh
    torture: Improve diagnostic for KCSAN-incapable compilers
    torture: Correctly summarize build-only runs
    torture: Pass --kmake-arg to all make invocations
    rcutorture: Check for unwatched readers
    torture: Abstract out console-log error detection
    torture: Add a stop-run capability
    torture: Create qemu-cmd in --buildonly runs
    rcu/rcutorture: Replace 0 with false
    torture: Add --allcpus argument to the kvm.sh script
    torture: Remove whitespace from identify_qemu_vcpus output
    rcutorture: NULL rcu_torture_current earlier in cleanup code
    rcutorture: Handle non-statistic bang-string error messages
    torture: Set configfile variable to current scenario
    rcutorture: Add races with task-exit processing
    locktorture: Use true and false to assign to bool variables
    ...

    Linus Torvalds
     

21 Jul, 2020

1 commit

  • The [smp_]read_barrier_depends() barrier macros no longer exist as
    part of the Linux memory model, so remove all references to them from
    the Documentation/ directory.

    Although this is fairly mechanical on the whole, we drop the "CACHE
    COHERENCY" section entirely from 'memory-barriers.txt' as it doesn't
    make any sense now that the dependency barriers have been removed.

    Acked-by: Peter Zijlstra (Intel)
    Acked-by: Paul E. McKenney
    Signed-off-by: Will Deacon

    Will Deacon
     

30 Jun, 2020

10 commits


28 Apr, 2020

1 commit

  • The scheduler is currently required to hold rq/pi locks across the entire
    RCU read-side critical section or not at all. This is inconvenient and
    leaves traps for the unwary, including the author of this commit.

    But now that excessively long grace periods enable scheduling-clock
    interrupts for holdout nohz_full CPUs, the nohz_full rescue logic in
    rcu_read_unlock_special() can be dispensed with. In other words, the
    rcu_read_unlock_special() function can refrain from doing wakeups unless
    such wakeups are guaranteed safe.

    This commit therefore avoids unsafe wakeups, freeing the scheduler to
    hold rq/pi locks across rcu_read_unlock() even if the corresponding RCU
    read-side critical section might have been preempted. This commit also
    updates RCU's requirements documentation.

    This commit is inspired by a patch from Lai Jiangshan:
    https://lore.kernel.org/lkml/20191102124559.1135-2-laijs@linux.alibaba.com
    This commit is further intended to be a step towards his goal of permitting
    the inlining of RCU-preempt's rcu_read_lock() and rcu_read_unlock().

    Cc: Lai Jiangshan
    Signed-off-by: Paul E. McKenney

    Paul E. McKenney
     

27 Feb, 2020

8 commits


25 Jan, 2020

2 commits


11 Dec, 2019

7 commits


29 Oct, 2019

5 commits