2023-01-26 15:16:02

by Peter Zijlstra

[permalink] [raw]
Subject: [PATCH v2 0/9] A few more cpuidle vs rcu fixes

0-day robot reported graph-tracing made the cpuidle-vs-rcu rework go splat.

These patches appear to cure this, the ftrace selftest now runs to completion
without spamming scary messages to dmesg.

Since v1:

- fixed recursive RCU splats
- fixed psci thingies for arm (null)
- improved the tracing WARN (rostedt)
- fixed TRACE_PREEMPT_TOGGLE (null)

---
arch/x86/include/asm/atomic64_32.h | 44 +++++++++++++++++++-------------------
arch/x86/include/asm/atomic64_64.h | 36 +++++++++++++++----------------
arch/x86/include/asm/kvmclock.h | 2 +-
arch/x86/include/asm/paravirt.h | 2 +-
arch/x86/include/asm/pvclock.h | 3 ++-
arch/x86/kernel/cpu/vmware.c | 2 +-
arch/x86/kernel/kvmclock.c | 6 +++---
arch/x86/kernel/pvclock.c | 22 +++++++++++++------
arch/x86/kernel/tsc.c | 7 +++---
arch/x86/xen/time.c | 12 +++++++++--
drivers/cpuidle/cpuidle.c | 2 +-
drivers/cpuidle/poll_state.c | 2 --
drivers/firmware/psci/psci.c | 31 ++++++++++++++++-----------
include/linux/context_tracking.h | 27 +++++++++++++++++++++++
include/linux/math64.h | 4 ++--
include/linux/sched/clock.h | 8 +++----
include/linux/trace_recursion.h | 18 ++++++++++++++++
kernel/locking/lockdep.c | 3 +++
kernel/panic.c | 5 +++++
kernel/sched/clock.c | 27 +++++++++++++++++------
kernel/trace/trace_preemptirq.c | 6 ++----
lib/bug.c | 15 ++++++++++++-
22 files changed, 192 insertions(+), 92 deletions(-)



2023-01-29 23:23:31

by Paul E. McKenney

[permalink] [raw]
Subject: Re: [PATCH v2 0/9] A few more cpuidle vs rcu fixes

On Thu, Jan 26, 2023 at 04:08:29PM +0100, Peter Zijlstra wrote:
> 0-day robot reported graph-tracing made the cpuidle-vs-rcu rework go splat.
>
> These patches appear to cure this, the ftrace selftest now runs to completion
> without spamming scary messages to dmesg.
>
> Since v1:
>
> - fixed recursive RCU splats
> - fixed psci thingies for arm (null)
> - improved the tracing WARN (rostedt)
> - fixed TRACE_PREEMPT_TOGGLE (null)
>
> ---

Applying this gets me the name objtool warnings noted before, but only
on KASAN kernels. Other than that, works fine as far as rcutorture
is concerned.

Thanx, Paul