Module: xenomai-head Branch: master Commit: 5e8ebc44dc20764572b707a9b13e4a9e89e3fd1f URL: http://git.xenomai.org/?p=xenomai-head.git;a=commit;h=5e8ebc44dc20764572b707a9b13e4a9e89e3fd1f
Author: Andreas Glatz <andreasgl...@ruggedcom.com> Date: Thu Nov 19 15:04:34 2009 +0100 nucleus: do not lose base priority in nested PIP boosts --- ksrc/nucleus/synch.c | 6 ++++-- 1 files changed, 4 insertions(+), 2 deletions(-) diff --git a/ksrc/nucleus/synch.c b/ksrc/nucleus/synch.c index 1a9bbb4..91de768 100644 --- a/ksrc/nucleus/synch.c +++ b/ksrc/nucleus/synch.c @@ -656,8 +656,10 @@ void xnsynch_requeue_sleeper(struct xnthread *thread) __setbits(synch->status, XNSYNCH_CLAIMED); insertpqf(&owner->claimq, &synch->link, w_cprio(thread)); - owner->bprio = owner->cprio; - xnthread_set_state(owner, XNBOOST); + if (!xnthread_test_state(owner, XNBOOST)) { + owner->bprio = owner->cprio; + xnthread_set_state(owner, XNBOOST); + } } /* * Renice the owner thread, progressing in the PI _______________________________________________ Xenomai-git mailing list Xenomai-git@gna.org https://mail.gna.org/listinfo/xenomai-git