<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css" style="display:none;"><!-- P {margin-top:0;margin-bottom:0;} --></style>
</head>
<body dir="ltr">
<div id="divtagdefaultwrapper" style="font-size:12pt;color:#000000;font-family:Calibri,Helvetica,sans-serif;" dir="ltr">
<p style="margin-top:0;margin-bottom:0">We thought about using OMIP, yes, but we didn't manage to find much on the documentation about configuring that protocol. Is it the same in SMP as it is in uniprocessor? You choose
<span>RTEMS_PRIORITY | RTEMS_BINARY_SEMAPHORE | RTEMS_INHERIT_PRIORITY as attributes when calling
<span>rtems_semaphore_create</span>() and this enables OMIP?<br>
</span></p>
<p style="margin-top:0;margin-bottom:0"><span><br>
</span></p>
<p style="margin-top:0;margin-bottom:0"><span>About the MrsP and EDF combo, I don't think there is, and I don't think I am more informed than you in that area also.</span></p>
<p style="margin-top:0;margin-bottom:0"><span><br>
</span></p>
<p style="margin-top:0;margin-bottom:0"><span></span>Thanks for your time,<br>
Ruben and Joel.<br>
</p>
</div>
<hr style="display:inline-block;width:98%" tabindex="-1">
<div id="divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" style="font-size:11pt" color="#000000"><b>De:</b> Sebastian Huber <sebastian.huber@embedded-brains.de><br>
<b>Enviado:</b> 1 de agosto de 2018 06:26:25<br>
<b>Para:</b> Rúben Gonçalves (1150785); users@rtems.org<br>
<b>Assunto:</b> Re: MrsP Semaphore and EDF-RMM</font>
<div> </div>
</div>
<div class="BodyFragment"><font size="2"><span style="font-size:11pt;">
<div class="PlainText">Hello,<br>
<br>
On 31/07/18 15:47, Rúben Gonçalves (1150785) wrote:<br>
><br>
> When making some experiments to the behaviour of RTEMS in SMP <br>
> configured with EDF and Rate Monotonic Manager we also noticed that <br>
> when a *periodic task* tries to obtain a semaphore created with the <br>
> Multiprocessor Resource Sharing Protocol (MrsP) the application <br>
> returns the status code "RTEMS_INVALID_PRIORITY".<br>
> We presume this is due to the fact that MrsP semaphore obtain function <br>
> tries to raise the priority of the task to the previously defined <br>
> priority ceiling and since the current priority is given by EDF (in a <br>
> way don't understand) (using the rate monotonic) the function is not <br>
> implemented to deal with that.<br>
> Does it make sense? Is it any accurate?<br>
<br>
the EDF scheduler uses the deadline of a task to determine its priority. <br>
The earlier the deadline the higher the priority (lower priority value). <br>
The priorities associated with a deadline are higher than the priorities <br>
which can be specified by the normal API.<br>
<br>
> If not, how can MrsP be correctly used with these configurations?<br>
<br>
This is currently an unsupported use case. You can use the OMIP mutexes <br>
together with the EDF scheduler. Are there schedulability analysis <br>
results for MrsP + EDF?<br>
<br>
Maybe the MrsP implementation can be changed to use the highest priority <br>
of the executing thread and the mutex object.<br>
<br>
-- <br>
Sebastian Huber, embedded brains GmbH<br>
<br>
Address : Dornierstr. 4, D-82178 Puchheim, Germany<br>
Phone   : +49 89 189 47 41-16<br>
Fax     : +49 89 189 47 41-09<br>
E-Mail  : sebastian.huber@embedded-brains.de<br>
PGP     : Public key available on request.<br>
<br>
Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.<br>
<br>
</div>
</span></font></div>
</body>
</html>