Messages in this thread Patch in this message | | | Date | Thu, 01 Apr 2021 15:10:14 +0200 | From | Peter Zijlstra <> | Subject | [PATCH 2/9] sched: Implement core-sched assertions |
| |
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> --- kernel/sched/core.c | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-)
--- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -268,18 +268,24 @@ static void __sched_core_flip(bool enabl cpus_read_unlock(); } -static void __sched_core_enable(void) +static void sched_core_assert_empty(void) { - // XXX verify there are no cookie tasks (yet) + int cpu; + + for_each_possible_cpu(cpu) + WARN_ON_ONCE(!RB_EMPTY_ROOT(&cpu_rq(cpu)->core_tree)); +} +static void __sched_core_enable(void) +{ static_branch_enable(&__sched_core_enabled); __sched_core_flip(true); + sched_core_assert_empty(); } static void __sched_core_disable(void) { - // XXX verify there are no cookie tasks (left) - + sched_core_assert_empty(); __sched_core_flip(false); static_branch_disable(&__sched_core_enabled); }
| |