aboutsummaryrefslogtreecommitdiffstats
path: root/os/common/oslib/src/chmboxes.c
diff options
context:
space:
mode:
Diffstat (limited to 'os/common/oslib/src/chmboxes.c')
-rw-r--r--os/common/oslib/src/chmboxes.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/os/common/oslib/src/chmboxes.c b/os/common/oslib/src/chmboxes.c
index 36e842821..8e543bf4d 100644
--- a/os/common/oslib/src/chmboxes.c
+++ b/os/common/oslib/src/chmboxes.c
@@ -213,6 +213,7 @@ msg_t chMBPostS(mailbox_t *mbp, msg_t msg, systime_t timeout) {
/* If there is a reader waiting then makes it ready.*/
chThdDequeueNextI(&mbp->qr, MSG_OK);
+ chSchRescheduleS();
return MSG_OK;
}
@@ -337,6 +338,7 @@ msg_t chMBPostAheadS(mailbox_t *mbp, msg_t msg, systime_t timeout) {
/* If there is a reader waiting then makes it ready.*/
chThdDequeueNextI(&mbp->qr, MSG_OK);
+ chSchRescheduleS();
return MSG_OK;
}
@@ -461,6 +463,7 @@ msg_t chMBFetchS(mailbox_t *mbp, msg_t *msgp, systime_t timeout) {
/* If there is a writer waiting then makes it ready.*/
chThdDequeueNextI(&mbp->qw, MSG_OK);
+ chSchRescheduleS();
return MSG_OK;
}