Skip to content

drivers/dose: fix poweroff#21074

Merged
benpicco merged 1 commit intoRIOT-OS:masterfrom
derMihai:mir/fix_dose_poweroff
Dec 13, 2024
Merged

drivers/dose: fix poweroff#21074
benpicco merged 1 commit intoRIOT-OS:masterfrom
derMihai:mir/fix_dose_poweroff

Conversation

@derMihai
Copy link
Copy Markdown
Contributor

Contribution description

If there's no state transition within the driver, powering off (STANDBY, SLEEP) a DOSE interface might result in a deadlock. Specifically, wait_for_state() will block forever.

Note, there is (and always was) a race condition here, i.e. even if we observed the state IDLE, this might transition to RECEIVE at any time. However, this case is covered by improvements in the chunked buffer implementation (see depencencies below).

Testing procedure

Tested this on a SAME54 board.

Issues/PRs references

@derMihai derMihai requested a review from jue89 as a code owner December 11, 2024 14:43
@github-actions github-actions bot added the Area: drivers Area: Device drivers label Dec 11, 2024
@benpicco benpicco added the CI: ready for build If set, CI server will compile all applications for all available boards for the labeled PR label Dec 12, 2024
@riot-ci
Copy link
Copy Markdown

riot-ci commented Dec 12, 2024

Murdock results

✔️ PASSED

6e0219e drivers/dose: fix poweroff

Success Failures Total Runtime
10249 0 10249 14m:56s

Artifacts

@benpicco benpicco added this pull request to the merge queue Dec 13, 2024
Merged via the queue into RIOT-OS:master with commit 24dc014 Dec 13, 2024
@MrKevinWeiss MrKevinWeiss added this to the Release 2025.01 milestone Jan 20, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Area: drivers Area: Device drivers CI: ready for build If set, CI server will compile all applications for all available boards for the labeled PR

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants