Skip to content

Mark Task::resume_all as unsafe #86

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
May 8, 2025

Conversation

michael-p
Copy link
Contributor

Noticed this while working on #85. Suspending/resuming the scheduler is used for many snychonization tasks within FreeRTOS (e.g. queues), so wrongly calling Task::resume_all without a matching previous call to Task::suspend_all will wreak all sorts of havoc.
Note that I did not mark Task::suspend_all as unsafe - it should be safe to call this as often as one wants, the worst thing that happens is that the scheduler just stops doing anything, but no risk for memory safety.

@schteve
Copy link
Collaborator

schteve commented May 8, 2025

Makes sense, thank you and sorry for the delay in getting back to you

@schteve schteve merged commit 8b582b3 into lobaro:master May 8, 2025
3 checks passed
@michael-p
Copy link
Contributor Author

@schteve No worries, thanks for merging and maintaining this crate!
By the way: would you be open to releasing a new version to crates.io? The last release is over 5 years old, I think a lot has happened in that time:)

@schteve
Copy link
Collaborator

schteve commented May 9, 2025

Yeah we need a new version, it's been a while. I don't have rights to push a new version to crates.io, but I think @niondir can.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants