RTEMS | score: Fix the sporadic server scheduler change without SMP (!1516)
Sebastian Huber (@sebhub)
gitlab at rtems.org
Tue Sep 29 12:58:42 UTC 2026
Sebastian Huber created a merge request: https://gitlab.rtems.org/rtems/rtos/rtems/-/merge_requests/1516
Project:Branches: sebhub/rtems:up/posix-sporadic to rtems/rtos/rtems:main
Author: Sebastian Huber
Assignee: Sebastian Huber
Reviewer: Matteo Concas
Issue #5745: The sporadic server breaks a scheduler change on a uniprocessor
Issue #5788: psx09 always fails in unicore configurations
On a uniprocessor, `_Scheduler_Set()` extracted the real priority node of a
sporadic server thread at the low priority. The node sits in no tree then. psx09
hides this defect because it first asks for the scheduler of processor 1, which
a uniprocessor does not own.
| Commit | Change |
| --- | --- |
| score: Inhibit a scheduler change without SMP | enables the scheduler change inhibitors wherever the POSIX API is enabled |
| psxtests/psx09: Use a scheduler which exists | asks for the scheduler of the last processor |
`rtems_task_set_scheduler()` returns `RTEMS_RESOURCE_IN_USE` for a sporadic
server thread at both priorities on a uniprocessor. An SMP build already does
this. At the high priority, the directive returned `RTEMS_SUCCESSFUL` before
this series.
## Test
Built with GCC 15.2 and run psx09 on SIS for `sparc/erc32` with
`RTEMS_DEBUG` and `RTEMS_POSIX_API`.
| State | psx09 |
| --- | --- |
| main | fails at the scheduler lookup of processor 1 |
| psx09 commit alone | fails with an assertion in `_RBTree_Extract()` |
| both commits | passes |
**BSP** `sparc/erc32` · **Simulator** SIS
## AI Details
<!-- Make sure you have read our statement at https://www.rtems.org/generative-ai/ -->
### Prompt used
None as a single prompt. The work was done in interactive Claude Code
sessions on the RTEMS tree. The task was to fix the defect of #5745 and to
split the psx09 part into #5788. Each change was directed and reviewed.
### AI model used
Claude Opus 5 (claude-opus-5) and Claude Opus 5.5 (claude-opus-5-5), through
Claude Code.
### How AI was used for the contribution
- ( ) Formatting
- ( ) Test creation.
- ( ) Code comments.
- ( ) The entire contribution was generated using AI
- ( ) AI code completion such as Copilot in VSCode.
The implementation, the test change, the commit messages and this description
were produced in those sessions under my direction.
### Access
I have not used a product which claims copyright in its output, and I have
legitimate access to the one I used.
--
View it on GitLab: https://gitlab.rtems.org/rtems/rtos/rtems/-/merge_requests/1516
You're receiving this email because of your account on gitlab.rtems.org. Unsubscribe from this thread: https://gitlab.rtems.org/-/namespace/49/sent_notifications/5-893eejqnulm7rfsz9q8xjus1n-1d/unsubscribe | Manage all notifications: https://gitlab.rtems.org/-/profile/notifications | Help: https://gitlab.rtems.org/help
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/bugs/attachments/20260929/3c8a029f/attachment-0001.htm>
More information about the bugs
mailing list