summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Braun <rbraun@sceen.net>2018-04-01 06:59:44 +0200
committerRichard Braun <rbraun@sceen.net>2018-04-01 06:59:44 +0200
commita098d10f233dcc43bfeba70fb54ab57b5a7d500a (patch)
tree5846b66e73a0862d3b9c02707e437491281ffdc1
parent076476fe6c0f4b947d4441afcfc97561bb23711c (diff)
kern/rcu: add assertion in rcu_defer
-rw-r--r--kern/rcu.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/kern/rcu.c b/kern/rcu.c
index 973d6d5..1903dcf 100644
--- a/kern/rcu.c
+++ b/kern/rcu.c
@@ -706,6 +706,8 @@ rcu_defer(struct work *work)
struct rcu_cpu_data *cpu_data;
unsigned long flags;
+ assert(!rcu_reader_in_cs(thread_rcu_reader(thread_self())));
+
thread_preempt_disable_intr_save(&flags);
cpu_data = rcu_get_cpu_data();
rcu_cpu_data_queue(cpu_data, work);