aboutsummaryrefslogtreecommitdiffstats
path: root/tools/perf/scripts/python/event_analyzing_sample.py
diff options
context:
space:
mode:
authorPaul E. McKenney <[email protected]>2019-11-27 02:05:45 +0000
committerPaul E. McKenney <[email protected]>2020-01-24 18:27:33 +0000
commit5b14557b073c96a7cf79adc4d7b6c4a8c26b2a43 (patch)
tree4c4590af8b9c59b6408350d387c5aed3c4e76204 /tools/perf/scripts/python/event_analyzing_sample.py
parentrcu: Provide wrappers for uses of ->rcu_read_lock_nesting (diff)
downloadkernel-5b14557b073c96a7cf79adc4d7b6c4a8c26b2a43.tar.gz
kernel-5b14557b073c96a7cf79adc4d7b6c4a8c26b2a43.zip
rcu: Avoid tick_dep_set_cpu() misordering
In the current code, rcu_nmi_enter_common() might decide to turn on the tick using tick_dep_set_cpu(), but be delayed just before doing so. Then the grace-period kthread might notice that the CPU in question had in fact gone through a quiescent state, thus turning off the tick using tick_dep_clear_cpu(). The later invocation of tick_dep_set_cpu() would then incorrectly leave the tick on. This commit therefore enlists the aid of the leaf rcu_node structure's ->lock to ensure that decisions to enable or disable the tick are carried out before they can be reversed. Signed-off-by: Paul E. McKenney <[email protected]>
Diffstat (limited to 'tools/perf/scripts/python/event_analyzing_sample.py')
0 files changed, 0 insertions, 0 deletions