diff options
Diffstat (limited to 'os/rt/src/chsys.c')
-rw-r--r-- | os/rt/src/chsys.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/os/rt/src/chsys.c b/os/rt/src/chsys.c index 5279ef518..19964ec13 100644 --- a/os/rt/src/chsys.c +++ b/os/rt/src/chsys.c @@ -227,7 +227,7 @@ void chSysTimerHandlerI(void) { *
* @xclass
*/
-syssts_t chSysGetAndLockX(void) {
+syssts_t chSysGetStatusAndLockX(void) {
syssts_t sts = port_get_irq_status();
if (port_irq_enabled(sts)) {
@@ -246,13 +246,15 @@ syssts_t chSysGetAndLockX(void) { *
* @xclass
*/
-void chSysRestoreLockX(syssts_t sts) {
+void chSysRestoreLockAndRescheduleX(syssts_t sts) {
if (port_irq_enabled(sts)) {
if (port_is_isr_context())
chSysUnlockFromISR();
- else
+ else {
+ chSchRescheduleS();
chSysUnlock();
+ }
}
}
|