|
|
auto | zxfoundation::sched::rt::admit (domain &owner, strand &s, const sched_policy &policy) noexcept -> std::expected< sched_admission_result, lib::kernel_error > |
| | Validate and reserve RT scheduling authority for a strand.
|
|
auto | zxfoundation::sched::rt::boost_prio (strand &s, u8 new_prio) noexcept -> void |
| | Apply a priority inheritance boost to s.
|
|
auto | zxfoundation::sched::rt::check_preempt (run_queue &rq, strand &waking) noexcept -> void |
| | Mark the current domain for preemption when RT work wakes.
|
|
auto | zxfoundation::sched::rt::dequeue (run_queue &rq, strand &s) noexcept -> void |
| | Dequeue an admitted RT strand from a per-CPU run queue.
|
|
auto | zxfoundation::sched::rt::enqueue (run_queue &rq, strand &s) noexcept -> std::expected< void, lib::kernel_error > |
| | Enqueue an admitted RT strand on a per-CPU run queue.
|
|
auto | zxfoundation::sched::rt::pick_next (run_queue &rq) noexcept -> strand * |
| | Pick the highest-priority RT strand from a run queue.
|
|
auto | zxfoundation::sched::rt::pull (u16 idle_cpu, run_queue &src_rq) noexcept -> strand * |
| | Pull the highest idle-RT candidate from another CPU (Phase 4.6).
|
|
auto | zxfoundation::sched::rt::push (run_queue &src_rq) noexcept -> u16 |
| | Push the highest-priority RT strand from src_rq to a less busy CPU (Phase 4.6 push/pull migration).
|
|
auto | zxfoundation::sched::rt::release_admission (domain &owner, strand &s) noexcept -> void |
| | Release RT bandwidth previously reserved for a strand.
|
|
auto | zxfoundation::sched::rt::task_wake_pi (strand &s) noexcept -> void |
| | Wake a strand that was sleeping on an rt_mutex.
|
|
auto | zxfoundation::sched::rt::tick (run_queue &rq, strand &s) noexcept -> void |
| | Account an RT scheduler tick, charge per-CPU RT bandwidth, and dequeue the strand on budget exhaustion or per-CPU throttle.
|
|
auto | zxfoundation::sched::rt::unboost_prio (strand &s) noexcept -> void |
| | Remove the priority boost on s and restore saved policy.
|