Page 1 of 1

priority order violation  Topic is solved

Posted: Tue Mar 17, 2020 4:04 pm
by wurstnase
Hi,

I just saw an issue with a "priority order violation" after an unlock.

My code looks like:

Code: Select all

chSysLock();
chEvtBroadcastFlagsI(&menu_es, 0);
chMtxUnlockAllS();
chSysUnlock();


Shouldn't the chMtxUnlockAllS() reschedule in any case?
I was stepping with the debugger in a second thread while this occur.

Re: priority order violation

Posted: Tue Mar 17, 2020 5:09 pm
by Giovanni
Hi,

Good point, it should.

chMtxUnlockAll() uses it internally and then reschedules explicitly, this should not be required.

I was going to release 20.3.0, this will be fixed in 20.3.1.

Giovanni

Re: priority order violation

Posted: Fri Mar 20, 2020 9:58 am
by Giovanni
Hi,

Fixed as bug #1076.

Giovanni