• Peter Zijlstra's avatar
    rcu: Fixup noinstr warnings · b58e733f
    Peter Zijlstra authored
    A KCSAN build revealed we have explicit annoations through atomic_*()
    usage, switch to arch_atomic_*() for the respective functions.
    
    vmlinux.o: warning: objtool: rcu_nmi_exit()+0x4d: call to __kcsan_check_access() leaves .noinstr.text section
    vmlinux.o: warning: objtool: rcu_dynticks_eqs_enter()+0x25: call to __kcsan_check_access() leaves .noinstr.text section
    vmlinux.o: warning: objtool: rcu_nmi_enter()+0x4f: call to __kcsan_check_access() leaves .noinstr.text section
    vmlinux.o: warning: objtool: rcu_dynticks_eqs_exit()+0x2a: call to __kcsan_check_access() leaves .noinstr.text section
    vmlinux.o: warning: objtool: __rcu_is_watching()+0x25: call to __kcsan_check_access() leaves .noinstr.text section
    
    Additionally, without the NOP in instrumentation_begin(), objtool would
    not detect the lack of the 'else instrumentation_begin();' branch in
    rcu_nmi_enter().
    Signed-off-by: default avatarPeter Zijlstra (Intel) <peterz@infradead.org>
    Signed-off-by: default avatarPaul E. McKenney <paulmck@kernel.org>
    b58e733f
tree.c 137 KB