Complete state/control policy of pinned shims/readiness.rs. Watcher IDs and FD weak refs are ownership identities, not readiness tokens or success claims.
@[reducible, inline]
Instances For
@[reducible, inline]
Instances For
Equations
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
@[instance_reducible]
Equations
Instances For
- fd : Files.WeakRef
- relevant : Bits
- edgeTriggered : Bool
- data : UInt64
- active : Bits
Instances For
Weak watcher identities, in source insertion order.
- clock : Concurrency.VClock
Instances For
Instances For
- runtime : Concurrency.SyncRuntime.Hooks S Nat Int32 (MPlaceTy Memory.Provenance)
- debugAssertions : Bool
- id : F → Files.FdId
- downgrade : F → Files.WeakRef
- upgrade : Files.WeakRef → M S (Option F)
- isClosed : Files.WeakRef → M S Bool
- supportsWatching : F → Bool
- unblock : Concurrency.ThreadId → Concurrency.BlockReason → M S Unit
Must enable/swap the full target thread view, execute its typed callback, and restore only on success. No callback token acknowledgment is accepted.
Instances For
Equations
- Miri.Interpreter.Readiness.readyCount h watcher = do let __do_lift ← h.getWatcher watcher pure __do_lift.ready.size
Instances For
def
Miri.Interpreter.Readiness.addBlockedThread
{S F : Type}
(h : Hooks S F)
(watcher : Nat)
(thread : Concurrency.ThreadId)
:
Equations
- One or more equations did not get rendered due to their size.
Instances For
def
Miri.Interpreter.Readiness.removeBlockedThread
{S F : Type}
(h : Hooks S F)
(watcher : Nat)
(thread : Concurrency.ThreadId)
:
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- Miri.Interpreter.Readiness.addDelayed h fd = do let __do_lift ← h.delayed h.putDelayed (__do_lift.push fd)
Instances For
Called after the watcher loses its last strong reference. Payload remains available to this destructor, while watcherAlive must already report false.
Equations
- One or more equations did not get rendered due to their size.
Instances For
def
Miri.Interpreter.Readiness.dropWatchedMetadata
{S F : Type}
(h : Hooks S F)
(watched : Watched)
:
Last FD description drop removes all dead FD interests from live watchers, not merely the descriptor number that happened to close last.
Equations
- One or more equations did not get rendered due to their size.