pub enum FallbackReason {
NoBroker,
BrokerTimedOut,
BrokerRefused,
Clamped,
}Expand description
Why a thread-priority request didn’t get a clean, direct grant of exactly what was asked.
Carried by AppliedPriority::reason. None means you got the requested
level directly (or brokered at full strength) - nothing to worry about.
Some(_) is the answer to “my engine feels wonky on this box - what did my
priority actually do?” - returned as data so the caller decides (retry,
warn, telemeter), never as a hidden log side-effect.
Variants§
NoBroker
Direct syscall denied and no broker could satisfy it - feature rtkit
off, no system bus, or no rtkit daemon. The effective level reports
what the thread kept.
BrokerTimedOut
Broker reached but it didn’t answer in time - a busy bus, or a daemon starved by the very load you’re prioritizing against. Transient; a retry when the system is calmer may succeed. The effective level reports what the thread kept.
BrokerRefused
Broker reached and it explicitly refused (policy / rate limit). The effective level reports what the thread kept.
Clamped
Broker granted, but weaker than asked - it hit its ceiling (rtkit caps
negative nice at MinNiceLevel, default -15). You kept the level but
lost strength; reach for crate::promote_thread_to_realtime if you
need the real thing.
Trait Implementations§
Source§impl Clone for FallbackReason
impl Clone for FallbackReason
Source§fn clone(&self) -> FallbackReason
fn clone(&self) -> FallbackReason
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for FallbackReason
Source§impl Debug for FallbackReason
impl Debug for FallbackReason
Source§impl Display for FallbackReason
impl Display for FallbackReason
impl Eq for FallbackReason
Source§impl PartialEq for FallbackReason
impl PartialEq for FallbackReason
Source§fn eq(&self, other: &FallbackReason) -> bool
fn eq(&self, other: &FallbackReason) -> bool
self and other values to be equal, and is used by ==.