RTEMS | EDF scheduler API support needs to be limited to a base range (#5390)
Chris Johns (@chris)
gitlab at rtems.org
Fri Nov 7 00:13:33 UTC 2025
Chris Johns created an issue: https://gitlab.rtems.org/rtems/rtos/rtems/-/issues/5390
Assignee: Gedare Bloom
The EDF scheduler currently publishes the priority range incorrectly. For example the `IDLE` task on an SMP system has:
```
ID THREAD SCHD CAPI PAPI CLOW CHIGH PLOW PHIGH
09010001 IDLE MEDF 2147483647 0 2147483647 1 1 2147483646
09010002 IDLE MEDF 2147483647 0 2147483647 1 1 2147483646
0a010001 JFFS MEDF 175 2147483472 2147483647 1 1 2147483646
0a010002 UI1 MEDF 200 2147483447 2147483647 1 1 2147483646
```
The legends are:
1. `CAPI` is the priority reported by the Classic API get priority call
2. `PAPI` is the priority reported by the POSIX API get priority call
3. `CLOW` is Classic API reported low priority
4. `CHIGH` is the Classic API reported high priority
5. `PLOW` is the POSIX API reported low priority
6. `PHIGH` is the POSIX API reported high priority
The values should be limited to a base range. RTEMS has in all previous versions limited the base range to `0` and `255`. If the thread is dead line driven the priority is internal to EDF and should report `0`.
The key requirement for all schedulers is:
> Priories reported and set for all schedulers need to respect the base range of `0` to `255` in all API interfaces. All scheduler specific priority ranges need to be unified across all schedulers and their unique mapping within the base range. For example setting a a priority of 1 using the Classic API on a POSIX thread id will report 255 using the the POSIX get API call.
--
View it on GitLab: https://gitlab.rtems.org/rtems/rtos/rtems/-/issues/5390
You're receiving this email because of your account on gitlab.rtems.org.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/bugs/attachments/20251107/c6ab1b8f/attachment-0001.htm>
More information about the bugs
mailing list