summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--nuttx/sched/init/os_start.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/nuttx/sched/init/os_start.c b/nuttx/sched/init/os_start.c
index 59929e0b5..f48bea318 100644
--- a/nuttx/sched/init/os_start.c
+++ b/nuttx/sched/init/os_start.c
@@ -534,6 +534,12 @@ void os_start(void)
* BUT the idle task cannot wait on a semaphore. So we only do
* the cleanup now if we can get the semaphore -- this should be
* possible because if the IDLE thread is running, no other task is!
+ *
+ * WARNING: This logic could have undesirable side-effects if priority
+ * inheritance is enabled. Imaginee the possible issues if the
+ * priority of the IDLE thread were to get boosted! Moral: If you
+ * use priority inheritance, then you should also enable the work
+ * queue so that is done in a safer context.
*/
if (kmm_trysemaphore() == 0)