[PATCH] score: Remove PRIORITY_PSEUDO_ISR thread priority
Sebastian Huber
sebastian.huber at embedded-brains.de
Tue Jul 26 09:32:18 UTC 2022
On 22/07/2022 14:35, Sebastian Huber wrote:
>
>
> On 21.07.22 16:20, Joel Sherrill wrote:
>>
>>
>> On Thu, Jul 21, 2022 at 12:53 AM Sebastian Huber
>> <sebastian.huber at embedded-brains.de
>> <mailto:sebastian.huber at embedded-brains.de>> wrote:
>>
>> Hello Gedare and Joel,
>>
>> On 15.07.22 10:43, Sebastian Huber wrote:
>> > The uniprocessor schedulers had some special case logic for the
>> > PRIORITY_PSEUDO_ISR priority. Tasks with a priority of
>> PRIORITY_PSEUDO_ISR
>> > were allowed to preempt a not preemptible task. If other higher
>> priority task
>> > are made ready while a PRIORITY_PSEUDO_ISR task preempts a not
>> preemptible
>> > task, then the other tasks run before the not preemptible task.
>> This made the
>> > RTEMS_NO_PREEMPT mode ineffective.
>> >
>> > Remove the PRIORITY_PSEUDO_ISR special case logic. This
>> simplifies the
>> > uniprocessor schedulers. Move the uniprocessor-specific
>> scheduler support to
>> > the new header file <rtems/score/scheduleruniimpl.h>.
>> >
>> > Close #2365.
>>
>>
>> I'm guessing that PRIORITY_PSEUDO_ISR wasn't used outside RTEMS itself
>> and likely only historically for the Timer Server Thread. The
>> protection for that
>> thread was reworked as part of the SMP efforts. If it is used outside
>> RTEMS,
>> that would be a user facing breakage and should be documented.
>>
>> If you think all the use cases of PRIORITY_PSEUDO_ISR are accounted for,
>> I'm ok with removing it.
>
> The pseudo-interrupt priority is mentioned in a glossary entry:
>
> priority boosting
> A simple approach to extend the priority inheritance protocol for
> clustered scheduling is priority boosting. In case a mutex is
> owned by a
> task of another cluster, then the priority of the owner task is
> raised to
> an artificially high priority, the pseudo-interrupt priority.
>
> This entry was added for the clustered scheduling documentation and
> needs to be changed.
>
> I found no reference to the no-preempt break of the pseudo-interrupt
> priority in the documentation. I doubt that there is an application
> which relies on this extraordinary feature.
I updated the documentation and committed the patch.
--
embedded brains GmbH
Herr Sebastian HUBER
Dornierstr. 4
82178 Puchheim
Germany
email: sebastian.huber at embedded-brains.de
phone: +49-89-18 94 741 - 16
fax: +49-89-18 94 741 - 08
Registergericht: Amtsgericht München
Registernummer: HRB 157899
Vertretungsberechtigte Geschäftsführer: Peter Rasmussen, Thomas Dörfler
Unsere Datenschutzerklärung finden Sie hier:
https://embedded-brains.de/datenschutzerklaerung/
More information about the devel
mailing list