These issues are found in concurrent CPU-hotplug and tracer-toggling testing, the test cases are as follows:
Background: *test_hotplug.sh* ``` #!/bin/sh while true do echo 0 > /sys/devices/system/cpu/cpu1/online echo 1 > /sys/devices/system/cpu/cpu1/online done ``` Test 1: *test_timerlat.sh* ``` #!/bin/sh while true do echo timerlat > /sys/kernel/debug/tracing/current_tracer echo nop > /sys/kernel/debug/tracing/current_tracer done ``` Test 2: *test_hwlat.sh* ``` #!/bin/sh echo per-cpu > /sys/kernel/debug/tracing/hwlat_detector/mode while true do echo hwlat > /sys/kernel/debug/tracing/current_tracer echo nop > /sys/kernel/debug/tracing/current_tracer done ``` Wei Li (5): tracing/timerlat: Fix duplicated kthread creation due to CPU online/offline tracing/timerlat: Drop interface_lock in stop_kthread() tracing/timerlat: Fix a race during cpuhp processing tracing/hwlat: Fix a race during cpuhp processing tracing/hwlat: Fix deadlock in cpuhp processing kernel/trace/trace_hwlat.c | 5 ++++- kernel/trace/trace_osnoise.c | 22 +++++++++++++--------- 2 files changed, 17 insertions(+), 10 deletions(-) -- 2.25.1