diff options
| author | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-10-15 17:50:57 -0400 |
|---|---|---|
| committer | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-10-15 17:50:57 -0400 |
| commit | eee9223116692285dece42568defbecb2e4e0cdf (patch) | |
| tree | 12387636cd0efaabe9237a4d9b745c92223e0c8b /debug/risc-v-gsp-rm-vm/examples/scripts/sim_bench.py | |
| parent | de91d640757afb40b1f78d659399a5cff3e540c6 (diff) | |
| download | open-iov-lottery-m156-gate-attempt.tar.gz open-iov-lottery-m156-gate-attempt.zip | |
vgsp-sema: m156 fail-closed release gate - withhold unwitnessed GR completionlottery-m156-gate-attempt
Companion to the backend witness gate. A data-bearing forwarded GR
launch's completion release is now authored only when an executor was
witnessed (backend success = retirement wait observed writes, or the CUDA
bridge owns it, or an engine fault was delivered as the loud edge). When
the hold resolves with no witness, the release is withheld and the
channel's error notifier + event are delivered so the client observes a
launch failure instead of stale/zero output (r150 big-copy, r155 streams2
STREAMS bad=32768).
- svc_gr_rel_witnessed() gate at the two hold-resolution sites
(svc_fwd_hold_expire_check, svc_fwd_hold_poll failure branch);
- svc_gr_failclosed_deliver() reuses the fault-deliver notifier tail
(record shape + notifier_err latch) with the host-detected marker;
- a queued data-bearing GR launch now takes the hold even when the pass
recorded no release of its own, so the deferred completion release always
has an author (its success edge) and a withholder (its failure edge);
- the GR hold bound is raised to 40 s under the gate so the cold-context
recovery chain (5 s + re-arm + 5 s + 3x2 s retries) can publish its
outcome before the watchdog fires;
- new gr_failclosed counter in the work_guard summary line.
gsp_phys_rmcall_gr_failclosed=0 restores the historical behavior with one
switch. Build: make -j8 (kernel), green.
Diffstat (limited to 'debug/risc-v-gsp-rm-vm/examples/scripts/sim_bench.py')
0 files changed, 0 insertions, 0 deletions
