Dario Nieuwenhuis
03d0637d6e
Update nightly.
2025-09-26 21:35:49 +02:00
Dániel Buga
d5e4558f18
Fix docs
2025-09-23 16:23:18 +02:00
Dario Nieuwenhuis
0850f3b537
Update Rust.
2025-09-22 01:49:39 +02:00
Dario Nieuwenhuis
4d71f432ad
Update manifests to satisfy new checks.
2025-09-22 00:47:08 +02:00
Dario Nieuwenhuis
55b3c5c6e8
ci: use devtool to build.
2025-09-11 21:52:47 +02:00
Dario Nieuwenhuis
6ec9bcb1c4
executor: add priority scheduler.
2025-09-11 16:33:48 +02:00
Dario Nieuwenhuis
e1209c5563
executor: make Deadline actually private.
2025-09-11 15:40:33 +02:00
Dion Dokter
2e21dcf2e6
Fix metadata
2025-09-11 14:45:41 +02:00
Dion Dokter
09701a339d
Fix example
2025-09-11 14:45:41 +02:00
Dion Dokter
401fac6ea9
Make requested API changes
2025-09-11 14:45:40 +02:00
Dion Dokter
adb0c3e947
Add more metadata
2025-09-11 14:45:27 +02:00
Dion Dokter
a853bbe2a4
Happy CI :)
2025-09-11 14:45:27 +02:00
diondokter
52d1785605
Introduce metadata-deadline and let the EDF scheduler use it
2025-09-11 14:45:27 +02:00
Dion Dokter
d6d4df1c76
Add some docs
2025-09-11 14:45:06 +02:00
Dion Dokter
3f606b28f3
Change deadline to use internal atomics
2025-09-11 14:45:06 +02:00
James Munns
b5c9e72100
Rename, remove excess mut
2025-09-11 14:45:06 +02:00
James Munns
4479f5bbfc
Regular comments not doc comments
2025-09-11 14:45:06 +02:00
James Munns
38e5e2e9ce
Replace use of RefCell with UnsafeCell
2025-09-11 14:45:06 +02:00
James Munns
20b56b0fe0
Update to use critical-section::Mutex instead of mutex::BlockingMutex
...
This allows the scheduler to better collaborate with existing critical sections
2025-09-11 14:45:06 +02:00
James Munns
cf171ad6d9
fmt
2025-09-11 14:45:06 +02:00
James Munns
db063945e7
Inline the "MutexTransferStack" impl as it is unclear whether it will be merged upstream
2025-09-11 14:45:06 +02:00
James Munns
d88ea8dd2a
Update with cordyceps changes
2025-09-11 14:45:06 +02:00
James Munns
7af8f35a50
There can be only one (run queue)
2025-09-11 14:45:06 +02:00
James Munns
0e28ba1091
"Deadline Rank Sorted Scheduler" -> "Earliest Deadline First Scheduler"
2025-09-11 14:45:06 +02:00
James Munns
3929142f4c
One more must_use
2025-09-11 14:45:06 +02:00
James Munns
b1b2955b60
Switch to released version of cordyceps
, add error if used w/o atomics
2025-09-11 14:45:06 +02:00
James Munns
b65a3a301a
Clean up some TODOs
2025-09-11 14:45:06 +02:00
James Munns
08a57b1cb0
Update with changes from the PR
2025-09-11 14:45:06 +02:00
James Munns
2a068c5283
Conditional import
2025-09-11 14:45:06 +02:00
James Munns
ed2e51bfa4
Dependency enablement trickery
2025-09-11 14:45:06 +02:00
James Munns
ba0426f767
Combine DRS and non-DRS atomic scheduler, using cordyceps
2025-09-11 14:45:06 +02:00
James Munns
8c70aafd4b
Make some things more consistent
2025-09-11 14:45:06 +02:00
James Munns
1f50e4d496
Implement Deadline Ranked Scheduling
...
This implements a minimal version of Deadline Rank Scheduling, as well as ways to access and set Deadlines.
This still needs some UX improvements, but is likely Enough for testing.
2025-09-11 14:45:06 +02:00
James Munns
535c80e61f
Add initial DRS scheduler placeholder
...
* Start hacking in cordyceps
This adds a third kind of runqueue, for now it should work the same as the
current "atomics" runqueue, but uses a cordyceps TransferStack instead of
the existing home-rolled linked list.
* Clean up, use new cordyceps feature
* A bit more cleanup
* Update docs to be more clear
2025-09-11 14:45:06 +02:00
Gabriel Smith
86aff0e63e
chore: bump embassy-executor to 0.9.1 to match released version
2025-09-08 14:48:06 -04:00
Dario Nieuwenhuis
286d887529
executor: always name main task main
, not just with rtos-trace.
...
Also fixes the warning about the `rtos-trace` feature not existing in embassy-executor-macros.
2025-09-05 14:57:05 +02:00
Dániel Buga
219cf09aab
Remove features, fix changelog
2025-09-02 08:34:07 +02:00
Dario Nieuwenhuis
0962b09603
Add changelog for embassy-executor v0.9.1
2025-08-31 23:09:31 +02:00
Dario Nieuwenhuis
4cd86e5e76
Merge branch 'main' into feat/name-main-task
2025-08-31 20:50:20 +02:00
Dario Nieuwenhuis
a05506640b
Merge branch 'main' into feat/upgrade-rtos-trace
2025-08-31 20:37:10 +02:00
Dániel Buga
fb531da007
Prefer word-sized state in CS impl
2025-08-31 10:45:03 +02:00
Dániel Buga
3fb6a9191c
Prefer pointer-sized atomic operations
2025-08-31 10:22:45 +02:00
Florian Grandel
47e45c9821
rtos-trace: upgraded feature support
...
Upgrade rtos-trace for start/stop and marker support.
These methods are not used in embassy code but can be useful in client
code.
Signed-off-by: Florian Grandel <fgrandel@code-for-humans.de>
2025-08-30 17:54:03 +02:00
Florian Grandel
ba5a75cd7d
executor: rtos-trace: name main task
...
Assigns a name to the main task when (rtos-)tracing is active. This
improves tracing usability with the SystemView backend.
Signed-off-by: Florian Grandel <fgrandel@code-for-humans.de>
2025-08-30 17:42:37 +02:00
diondokter
e2c34ac735
Add to changelog
2025-08-29 13:58:16 +02:00
diondokter
916dce55ea
Fix test & rtos-trace
2025-08-29 13:30:11 +02:00
Dario Nieuwenhuis
8aec341f28
executor: return error when creating the spawntoken, not when spawning.
2025-08-29 13:23:21 +02:00
Dario Nieuwenhuis
34ff67cdbf
executor: do not deref a mut ptr to the entire taskheader.
2025-08-29 13:22:59 +02:00
Dario Nieuwenhuis
da9cdf0c53
executor: add "task metadata" concept, make name a task metadata.
2025-08-29 13:22:59 +02:00
Dario Nieuwenhuis
2ba34ce217
executor: allow trace and rtos-trace to coexist additively.
...
Before, enabling `trace` would enable embassy-native tracing, and
enabling *both* would *disable* embassy-native tracing.
2025-08-29 13:22:01 +02:00