From 3f3149198b030e81287d7abd473ce4cee5e9e178 Mon Sep 17 00:00:00 2001 From: Arthur Hanson Rasmusson Date: Thu, 1 Oct 2026 10:40:54 -0400 Subject: docs: record next-cycle readiness for the physical GSP boot STATE-CURRENT and the integration page reflect the implemented sequencer, clean-shutdown RPC and static-info probe awaiting the next supervised live cycle. --- STATE-CURRENT.md | 27 +++++++++++++++++++-------- 1 file changed, 19 insertions(+), 8 deletions(-) (limited to 'STATE-CURRENT.md') diff --git a/STATE-CURRENT.md b/STATE-CURRENT.md index c8b4587..e118627 100644 --- a/STATE-CURRENT.md +++ b/STATE-CURRENT.md @@ -1,6 +1,6 @@ # Open-IOV Current State -> **Snapshot: 2026-10-01 10:08.** This is a dated public status page, not live +> **Snapshot: 2026-10-01 10:40.** This is a dated public status page, not live > state; it is refreshed on every progress check. Live working notes are > maintained outside this repository; the public known-knowns/unknowns document > is authoritative here: @@ -216,13 +216,24 @@ GPU is bound to `open-iov-gsp-phys` and runtime-active; `nvidia` stays unbound fresh live cycle needs a power cycle. **Next steps:** (a) execute the 0x1002 sequencer command buffer in the module -and log 0x1001 as `stage 3e complete` - the sequencer executor is now -implemented in the module sources (BAR0 register-write/modify/poll, delay, -store and core-resume opcodes) and awaits the next live cycle; (b) implement -the command-queue TX path -and send `UNLOADING_GUEST_DRIVER` on release so teardown passes the handoff -gate and the GPU can be handed back without a reboot; (c) reboot (with -approval, handoff first) when ready to test the next live cycle. +and log 0x1001 as `stage 3e complete`; (b) send `UNLOADING_GUEST_DRIVER` on +the command queue so the server shuts down, sets the remaining handoff bit and +teardown can hand the GPU back without a reboot; (c) prove a request/reply +round trip with the server. All three are now implemented but not yet loaded: +the module sources contain the sequencer executor (BAR0 register-write/modify/ +poll, delay, store and core-resume opcodes), a generalized msgq producer +(multi-element records, checksum/sequence/free-space rules, doorbell) with the +unload RPC, a reply-matching status-queue reader, and a debugfs probe that +requests the server's static configuration after init-done. The rebuilt module +awaits the next supervised live cycle (which requires a power cycle, with +approval, because the current claimed session cannot be released); the rung +4a/4b/4c code passed an adversarial wire-format review plus its fixes. + +**Prepared for the next cycle (build, not loaded):** `open-iov-vfio.ko` sha256 +`f61308bd…`; the cycle should run `phys_claim_cycle.sh --yes --hold 60 +--cycles 1 --boot --keep`, then exercise `gsp-phys-rm-probe` (static-info +round trip) and `gsp-phys-unload-rpc` (server shutdown) through the module's +read-only/debug state files before a clean `rmmod`. Ending the claimed session (harness notice): `sudo rmmod open_iov_vfio`, then `echo auto | sudo tee /sys/bus/pci/devices/0000:01:00.0/power/control` and the -- cgit v1.2.3