[Xenomai] [PATCH 2/2] cobalt/synch: Do not drop PP on xnsynch_release if it wasn't committed

Jan Kiszka jan.kiszka at siemens.com
Wed May 2 18:34:33 CEST 2018


We must not try to drop the prio ceiling in the kernel if it wasn't
committed yet. That could easily happen when using a prio-ceiling mutex
to wait on a cond-var.

Signed-off-by: Jan Kiszka <jan.kiszka at siemens.com>
---
 kernel/cobalt/synch.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/kernel/cobalt/synch.c b/kernel/cobalt/synch.c
index 8c217c247..c65c07aac 100644
--- a/kernel/cobalt/synch.c
+++ b/kernel/cobalt/synch.c
@@ -942,7 +942,7 @@ bool xnsynch_release(struct xnsynch *synch, struct xnthread *curr)
 	 */
 	xnlock_get_irqsave(&nklock, s);
 
-	if (synch->status & XNSYNCH_PP) {
+	if (synch->status & XNSYNCH_CEILING) {
 		clear_pp_boost(synch, curr);
 		need_resched = true;
 	}
-- 
2.13.6



More information about the Xenomai mailing list