LibBSD | Adapt to the new watchdog token and fix a related problem in libbsd (!169)
Christian Mauderer (@c-mauderer)
gitlab at rtems.org
Fri Nov 6 13:41:23 UTC 2026
Christian Mauderer created a merge request: https://gitlab.rtems.org/rtems/pkg/rtems-libbsd/-/merge_requests/169
Project:Branches: c-mauderer/rtems-libbsd:cm/7-adapt-watchdog-token to rtems/pkg/rtems-libbsd:7-freebsd-14
Author: Christian Mauderer
Assignee: Christian Mauderer
## Summary
The MR https://gitlab.rtems.org/rtems/rtos/rtems/-/merge_requests/1481 added a new watchdog token. This MR adapts to that API change.
Aditionally it fixes a bug that is related to the one in RTEMS that made the watchdog token necessary. Basically the following (also in the commit message):
On SMP, this order of events was possible:
1. Processor A: The timeout expired. The tick removed it from the list of pending timeouts.
2. Processor B: A wakeup ended the sleep. The thread tried to cancel its timeout, but the tick already removed it.
3. Processor B: The thread began its next sleep.
4. Processor A: The tick called sleepq_timeout() for the old timeout. The routine saw a sleeping thread and ended the next sleep.
The next sleep then returned EWOULDBLOCK, although its own timeout did not expire.
## Generative AI
<!-- If you have used AI please use the "AI Contribution" template otherwise leave this blank see our fulls statement at https://www.rtems.org/generative-ai/-->
None as a single prompt. Interactive Claude Code session: run the simulator test suites, diagnose each failure and fix the cause. I directed and reviewed every change.
### AI model used
Claude Opus 5 and Claude Sonnet 5.5, through Claude Code.
### How AI was used for the contribution
* ( ) Formatting
* (x) Test creation.
* (x) Code comments.
* (x) The entire contribution was generated using AI
* ( ) AI code completion such as Copilot in VSCode.
The code was written under heavy guidance done by me and of course I reviewed it myself.
### Access
I have legitimate access to the tool, and it claims no copyright in its output.
<!-- Default settings, if it is a dropdown it will set after submission -->
--
View it on GitLab: https://gitlab.rtems.org/rtems/pkg/rtems-libbsd/-/merge_requests/169
You're receiving this email because of your account on gitlab.rtems.org. Unsubscribe from this thread: https://gitlab.rtems.org/-/namespace/20/sent_notifications/6-7wy77hxm1u7pbfpjiptq011je-k/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/20261106/ce7f83ab/attachment.htm>
More information about the bugs
mailing list