summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
5778840)
+extern int preempt_forbid_cnt;
/**
* Execute a block of \a CODE atomically with respect to task scheduling.
/**
* Execute a block of \a CODE atomically with respect to task scheduling.
{
sigmask_t result;
cpuflags_t flags;
{
sigmask_t result;
cpuflags_t flags;
- extern int preempt_forbid_cnt;
/* Sleeping with IRQs disabled or preemption forbidden is illegal */
IRQ_ASSERT_ENABLED();
/* Sleeping with IRQs disabled or preemption forbidden is illegal */
IRQ_ASSERT_ENABLED();
+
+ #if CONFIG_KERN_PREEMPT
ASSERT(preempt_forbid_cnt == 0);
ASSERT(preempt_forbid_cnt == 0);
/*
* This is subtle: there's a race condition where a concurrent
/*
* This is subtle: there's a race condition where a concurrent