vyre_runtime/megakernel/protocol/slot.rs
1/// The slot is free; the host may publish into it.
2pub const EMPTY: u32 = 0;
3/// The host finished writing; the GPU may claim it.
4pub const PUBLISHED: u32 = 1;
5/// A lane won the CAS; it now owns the slot.
6pub const CLAIMED: u32 = 2;
7/// The lane finished executing; the host may recycle the slot.
8pub const DONE: u32 = 3;
9/// The slot is waiting for an asynchronous IO continuation.
10pub const WAIT_IO: u32 = 4;
11/// The slot yielded execution back to the scheduler.
12pub const YIELD: u32 = 5;
13/// The slot is heavily contested and has been requeued.
14pub const REQUEUE: u32 = 6;
15/// The slot hit a hardware or software fault constraint.
16pub const FAULT: u32 = 7;
17/// Priority: critical; kernel checks these slots first on each iteration.
18pub const PRIORITY_CRITICAL: u32 = 0;
19/// Priority: high-priority foreground work.
20pub const PRIORITY_HIGH: u32 = 1;
21/// Priority: normal scheduling (default).
22pub const PRIORITY_NORMAL: u32 = 2;
23/// Priority: low-priority background work.
24pub const PRIORITY_LOW: u32 = 3;
25/// Priority: idle maintenance work.
26pub const PRIORITY_IDLE: u32 = 4;