lkml.org 
[lkml]   [2021]   [Apr]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
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);
}

\
 
 \ /
  Last update: 2021-04-01 20:40    [W:0.330 / U:0.352 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site