aboutsummaryrefslogtreecommitdiffstats
path: root/os
diff options
context:
space:
mode:
Diffstat (limited to 'os')
-rw-r--r--os/kernel/src/chthreads.c1
-rw-r--r--os/various/shell.c1
2 files changed, 2 insertions, 0 deletions
diff --git a/os/kernel/src/chthreads.c b/os/kernel/src/chthreads.c
index 46039561b..73236c850 100644
--- a/os/kernel/src/chthreads.c
+++ b/os/kernel/src/chthreads.c
@@ -353,6 +353,7 @@ void chThdExit(msg_t msg) {
REG_REMOVE(tp);
#endif
chSchGoSleepS(THD_STATE_FINAL);
+ chSysUnlock();
}
#if CH_USE_WAITEXIT || defined(__DOXYGEN__)
diff --git a/os/various/shell.c b/os/various/shell.c
index 1fe03fc1e..8a247b9f4 100644
--- a/os/various/shell.c
+++ b/os/various/shell.c
@@ -206,6 +206,7 @@ static msg_t shell_thread(void *p) {
}
chSysLock();
chEvtBroadcastI(&shell_terminated);
+ chSysUnlock();
return msg;
}