Various improvements to synchronization in osnoise/timerlat. v5: - Removed "Split out per-cpu variable resets" due to Sashiko feedback about races with NMIs and other tracing hooks; the main motivation for that patch was problems with osn->sampling and tlat->thread, both of which are now explicitly cleared.
- Fixed some patch shuffling bugs in fd detachment that were revealed by dropping the reset patch - Added "Start all eligible cpus from hotplug workfn" - Removed "Always check OSN_WORKLOAD" which is no longer needed after the hotplug workfn patch v4: fixed a problem with the v3 fix spotted by Sashiko https://lore.kernel.org/all/[email protected]/ v3: make sure osn->sampling gets cleared on stop, even for non-workload osnoise (reported by Sashiko) https://lore.kernel.org/all/[email protected]/ v2: addresses issues raised by Sashiko, as well as a few more problems discovered in additional testing. https://lore.kernel.org/all/[email protected]/ v1: https://lore.kernel.org/all/[email protected]/ Crystal Wood (8): tracing/osnoise: Variable cleanup tracing/osnoise: Start all eligible cpus from hotplug workfn tracing/osnoise: Hold a ref on osn->kthread tracing/osnoise: Per-cpu mutexes and fd detachment tracing/osnoise: kthreads: Verify CPU after migrate_disable() tracing/osnoise: Take trace_types_lock in timerlat_fd_open tracing/osnoise: Print taint message for timerlat tracing/osnoise: Refuse timerlat fd open if tracer inactive Documentation/trace/timerlat-tracer.rst | 5 +- kernel/trace/trace_osnoise.c | 395 +++++++++++++++--------- 2 files changed, 246 insertions(+), 154 deletions(-) -- 2.54.0
