summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAge
* vgsp: mode 35 F3 - send the real client's KGR static ctx-buffer query set ↵Arthur Hanson Rasmusson7 days
| | | | before the channel batch (capture #388-402; a2a/a32 may prepare the server per-context tables the 0x57 companion needs)
* vgsp: mode 35 m56 probe - add SKIP_SCRUBBER|SKIP_CTXBUFFER_ALLOC to V7 flags ↵Arthur Hanson Rasmusson7 days
| | | | (V6-proven construct path while the share stays attached)
* vgsp: mode 35 F2c - hObjectError as a real class-0x40 FBMEM memory object ↵Arthur Hanson Rasmusson7 days
| | | | (registered list object failed the promote resolver lookup 0x57)
* vgsp: mode 35 F2b - register the USERD chunk as a memory object and pass ↵Arthur Hanson Rasmusson7 days
| | | | hUserdMemory[0] (server construct worker looked one up; 0x57 without it)
* vgsp: mode 35 F2 - MAIN mapped promote (pa+va, nonmapped=0) after the lane ↵Arthur Hanson Rasmusson7 days
| | | | promote to reach the per-buffer commit (sets pEngCtx+0x135; gate for the 0xc5c0 construct)
* vgsp: mode 35 - V7 gpFifoEntries 1024 (captured #825; one-variable fidelity ↵Arthur Hanson Rasmusson7 days
| | | | pass)
* vgsp: mode 35 - best-effort V7 construct + promote gate exemption (m50 ↵Arthur Hanson Rasmusson7 days
| | | | stage-3 -22 fix; lane continues to stage 4/forward)
* vgsp: mode 35 - V7 USERD index 4 (free fixed slot; index 3 collided with ↵Arthur Hanson Rasmusson7 days
| | | | golden D, NV_ERR_NO_MEMORY 0x51)
* vgsp: mode 35 - real-client user lane (TSG fault buffers, share, V7 channel, ↵Arthur Hanson Rasmusson7 days
| | | | | | | | | | | | | | | | | | | | | | | | | 3-entry PA-only promote, V7 execution swap; compile-verified, untested) Replays the decoded real 570.144 GSP client compute-context sequence on the ladder, additive to modes 0-34: - TSG fault-method buffers: one 0xa06c010a on the ladder TSG with two 0x2000 {base,size,alignment=1,addressSpace,cache} descriptors + zero bar2Addr words + numValidEntries=2; server FBMEM first, registered host sysmem fallback (capture order TSG -> faults -> share -> channel). - FERMI_CONTEXT_SHARE_A (0x9067) reuse of the mode-34 helper (ladder TSG, SHARED_MANAGEMENT VAS, flags SYNC -> VEID 0). - V7 channel 0xcaf000a0: class 0xc46f, TSG parent, hVASpace=0, hContextShare, captured flags 0x00201320 and internalFlags 0x1d, engineType 0, sysmem hObjectError/errorNotifierMem, FBMEM instance/ramfc, sysmem USERD. - One atomic 3-entry GPU_PROMOTE_CTX on V7 (MAIN/PM/PATCH, PA-only, physAttr 4, bInitialize=1, bNonmapped=1) before any 0xc5c0 construct. - TURING_COMPUTE_A (0xc5c0) on V7 after the accepted promote; execution channel swapped to V7 for stage 4 BIND/SCHEDULE/token/GR-sem and forwarding (V6 allocated but unscheduled; its promote suppressed). - Mode-35-only golden9 entry refresh: FECS_EVENT attr=5 with the ctx-window VA in the physAddr field, PRIV_ACCESS_MAP va=0/bNonmapped=1. - gr_promote clamp/param doc extended to 0..35.
* risc-v-gsp-rm-debugger: B5 two-task attach + aggregate-state decode + docs ↵Arthur Hanson Rasmusson7 days
| | | | | | | | | | | | | | 51/53 status - sim/libos_port.py: port-role model + two-task network (extintr handoff, cross-task send/reply, TASK_STATE_QUERY trap state) - sim/msgq_attach.py: image task discovery, bounded two-task schedule, second-task-frontier divergence fields (first ring poll still blocked on post-init resume + GSP_ARGUMENTS_CACHED handoff; no fabricated polls) - harness/state_decode.py: aggregate 'group: key=value' state parsing (20-gsp-phys-state-* dumps) + kv diff classification - tests: 127 green across the five observability modules - docs/51/53: status and changelog updates
* vgsp: mode 34 - add GOLDEN_CTXSHARE to the GR ctx FBMEM MAIN selector (m46 ↵Arthur Hanson Rasmusson7 days
| | | | sysmem MAIN hang class)
* vgsp: add read-only gsp-phys-reg-probe debugfs register snapshotArthur Hanson Rasmusson7 days
| | | | | | | | | | | | Add a read-only BAR0 register-liveness probe at /sys/kernel/debug/vgsp/gsp-phys-reg-probe that prints "name addr value" for the PMC chip-id/clock gate, PGRAPH status/fault, SKED/HWW and FECS/GPCCS falcon state, the front-end QMD virtual-window controls and the GSP context registers, followed by decoded field lines. Read-only (readl only); additive to gsp_phys_boot_debugfs_init(); no ladder logic changed. Used to distinguish a clock/power-gated engine from a halted or running one during a physical cycle.
* vgsp: mode 34 - context-share golden execution lane (compile-verified, untested)Arthur Hanson Rasmusson7 days
| | | | | | | | | | | | | Mode 34 allocates FERMI_CONTEXT_SHARE_A (0x9067) on the ladder TSG before the golden replay; the replay's golden channel A (0xcaf00054) attaches to the share with hVASpace=0 and keeps the captured unwired shape, runs its 9-entry promote and carries TURING_A (0xc597) plus a TURING_COMPUTE_A (0xc5c0, handle 0xcaf00090). V6 (0xcaf00034) attaches to the same share, constructs no class object of its own, and its FWCLIENT promote is suppressed; stage 4 and the forwarded launches run on V6 in A's shared VEID/subcontext. Default off; all paths gated by gsp_phys_rmcall_gr_promote=34. New pr_info cycle landmarks for the share alloc, A alloc/promote, A construct (rpc_result), V6 alloc and the instance/RAMFC decode. No hardware run.
* risc-v-gsp-rm-debugger: land docs 45-53 + harness/sim tool set with testsArthur Hanson Rasmusson7 days
| | | | | | | rm_capture (chunked decode), launch_audit, state_seed/state_decode, valprobe, rehost, contracts+run_contracts, host_traffic, gmmu_walk, msgq_attach, libos_port, log_decode, server_snapshot; doc index updates in the tool overview, operations pages and the repo README.
* STATE-CURRENT: 2026-10-06 evening snapshot - TSG commit lane + IQ2M deposit ↵Arthur Hanson Rasmusson7 days
| | | | proven, method space exhausted, structural levers next
* vgsp: mode 33 construct A object pre-promote (m43 post-promote 0x57)Arthur Hanson Rasmusson7 days
|
* vgsp: mode 33 - wired golden sibling A as execution channel ↵Arthur Hanson Rasmusson7 days
| | | | (compile-verified, untested)
* vgsp: SKED/FE readback + QMD w50..53 + two-step PCAS gate (m41 instrumentation)Arthur Hanson Rasmusson7 days
|
* vgsp: m37 pcas gate (window-only stock form) + QMD w48..50 post-mortemArthur Hanson Rasmusson7 days
|
* vgsp: preserve the pointer page offset in the shadow QMD rewrite (program ↵Arthur Hanson Rasmusson7 days
| | | | +0x800)
* vgsp: m32 rank-2 qmdwin - relocate the inline-QMD destination to a proven ↵Arthur Hanson Rasmusson7 days
| | | | ring-chunk page (compile-verified, untested)
* vgsp: mode 31 sibling A promote skips the one-shot FECS entry (m30: atomic 0x1f)Arthur Hanson Rasmusson7 days
|
* vgsp: mode 31 sibling A free ChID index (m29 decode: fixed index 3 collided ↵Arthur Hanson Rasmusson7 days
| | | | with D)
* vgsp: mode 31 sibling A userd memdesc (m28: TSG channel alloc rejected ↵Arthur Hanson Rasmusson7 days
| | | | without it)
* vgsp: mode 31 FBMEM ctx + pre-PDB aux prepare (m27: sysmem MAIN hung the ↵Arthur Hanson Rasmusson7 days
| | | | golden construct)
* vgsp: gate mode 31 on golden replay + physical backend (SA-CHK F1 fix)Arthur Hanson Rasmusson7 days
|
* vgsp: default the QMD-virt 0x29c pair off (m26 falsified it; non-vendor ↵Arthur Hanson Rasmusson7 days
| | | | without BASE)
* vgsp: mode 31 - D-golden-first TSG-sibling ordering (compile-verified, untested)Arthur Hanson Rasmusson7 days
|
* vgsp: m26 GR launch discriminator - rebuilt window (prelude off), QMD-virt ↵Arthur Hanson Rasmusson7 days
| | | | 0x29c, w63 sentinel
* docs: add the GR compute-launch frontier page and align execution status ↵Arthur Hanson Rasmusson7 days
| | | | | | | | | | | | | | | | | | across the tree New page docs/04-implementation/03-execution-frontier.md describes the chain that must fire for a guest CUDA launch (guest push -> GPFIFO/front-end -> inline launch-descriptor install -> engine read/dispatch -> completion), where the leading edge is (the descriptor install path), how we know (front-end vs engine-authored observables and their limits), what is exonerated (context validity at dispatch, destination window mapping, fetch alignment, shared-buffer rule, parenting), the ranked issues (verbatim prelude targets, missing descriptor-virtualization control, sentinel hygiene), live investigation lines and labelled theories. Align every page that still said GR execution is blocked on engine-context validity to the current frontier, and add the new page to the README reading order (row 15, later rows renumbered). Docs only; no code.
* vgsp: TSG-sibling mode 30, UVM-stall Patch C, QMD shadow-window ensure + ↵Arthur Hanson Rasmusson7 days
| | | | launch diagnostics
* vgsp: install the Tier-2 scratch-pool window spine via PDE_UPDATE + IQ2M ↵Arthur Hanson Rasmusson7 days
| | | | | | | | | | | | | | | | | | | sentinel diagnostic - The Tier-2 shadow VAs (0x200000 + page<<21 + line<<16) had no PTE chain in the engine's table view on the shared-management VAS: pdb_build's client PD0 spine for the guest scratch PT pool is discarded by the server's root migration, so every param/program/release/alias leg the launch rewrites to a shadow VA was unreachable by the engine. Install each scratch pool window lazily through DMA_UPDATE_PDE_2 (same control shape as the Tier-1 installer, pool chunk as the leaf PT) the first time a shadow line in it is consumed; shared VAS only, idempotent via rmcall_guest_pt_win_mask. m17 confirmed the install is accepted (pdeIndex=1 VA 0x200000 status 0x0). - IQ2M sentinel: write 0xdeadbeef to the inline-QMD destination word 0 after the prewrite and report iq2m=ran/not-run in the post-mortem so 'engine stalled before the inline window' is distinguishable from 'QMD deposited but not executed' without a server capture.
* vgsp: mode-29 construct-last golden execution lane + fetch-aligned USERD ↵Arthur Hanson Rasmusson7 days
| | | | | | | | | | | | | | | | | control offset - New mode 29 (GOLDEN_EXEC_LAST): identical to mode 28 but skips the TURING_COMPUTE_A alloc on the client-wired golden channel (every GR object construct there blocks RM); stage 3 completes with the golden handle swapped and BIND/GPFIFO_SCHEDULE/token are accepted. Param clamp 0..29. - Shape bits: bit6 TSG parent (alloc accepted, same no-fetch), bit7 host USERD control offset 0 (THE FETCH FIX: the server applies the sysmem userd_mem base directly and ignores the captured USERD_INDEX_VALUE=3, so GP_PUT/GP_GET live at +0x8c/+0x88; m14: GP_GET advanced 1), bit8 pre-promote compute object (invalid order: RM blocked -110 + NOCAT 0x52a8b04). - Failure diagnostics: REAL GR SEM FAILED now dumps both candidate USERD control offsets (ctl and alt).
* vgsp: PRIV VA-only booking bit + verify the exact slot before consuming ↵Arthur Hanson Rasmusson7 days
| | | | | | | | | | | | | unreadable CE entries - fwclient mask bit 15 (0x8000): book the PRIV_ACCESS_MAP VA (the FWCLIENT entry form is init-only; the golden9 form carries the VA at VA_GOLDEN9_PRIV). Accepted on V6 (status 0), completing the maximal promoted context. - gsp_sema_service: svc_entry_want_reached() verifies the exact tracking slot against entry_want before the three unreadable-CE consume shortcuts treat the entry as delivered; when the slot lags, re-seed the expectation and let svc_fake_release author or queue the exact slot (UVM registration stall pair with the pool-VA verified-resolver queue).
* vgsp: golden-exec shape bisection + fwclient per-entry promotion + pool-VA ↵Arthur Hanson Rasmusson7 days
| | | | | | | | | | | | | | | | | | | | | | | | | stall fix - Mode 28 golden execution lane behind gsp_phys_rmcall_gr_promote=28 with a shape bitmask (gsp_phys_rmcall_golden_exec_shape: ring / entries=8 / sysmem USERD / USERD size / hObjectBuffer=VAS / skip replay TURING_A) and a USERD control-offset helper. Finding: the RM-managed golden channel hangs any GR object construct (-110, no assert) as soon as client submission wiring (ring or sysmem USERD) is attached, so only the captured server-owned shape constructs; the machinery is kept for future wiring ideas. - fwclient mask bit 11 (0x800): send each non-MAIN FWCLIENT promote entry as its own one-entry control and continue past refusals. V6 acceptance matrix: PM, PATCH, PRIV_ACCESS_MAP, UNRESTRICTED_PRIV_ACCESS_MAP accepted, FECS_EVENT refused 0x1f. - fwclient mask bit 12 (0x1000): golden9 VA-only global bookings (BUNDLE_CB, PAGEPOOL, ATTRIBUTE_CB, RTV_CB_GLOBAL) accepted on V6; bits 13/14 (0x2000/0x4000): FECS PA-only (refused 0x1f) and FECS VA-only (accepted). - gsp_phys_rmcall_srv_main_ignore: ignore a server-reported MAIN in the srv-ctx commit and force the client INITIALIZE_CTX + VA-only fallback. - gsp_sema_service: pool semaphores never fall back to the learned map; queue the absolute release via svc_pending_add until svc_pool_pa_resolve succeeds, and judge pool slots through the verified resolver in svc_apply_pending and the release decode (UVM registration stall fix).
* STATE-CURRENT: check-back snapshot (2026-10-06 10:57) - GR context partial ↵Arthur Hanson Rasmusson7 days
| | | | acceptance, golden lane walled, engine dispatch still absent
* vgsp: size the fwclient non-MAIN promote entries from the golden FBMEM aux ↵Arthur Hanson Rasmusson7 days
| | | | buffers
* vgsp: mode 27 - golden9 context promote on the V6 execution channel onlyArthur Hanson Rasmusson7 days
|
* vgsp: verbatim replay of the captured GR launch prelude+windowArthur Hanson Rasmusson7 days
|
* vgsp: replay the vendor per-channel compute init before the forwarded GR launchArthur Hanson Rasmusson7 days
|
* vgsp: prewrite QMD to destination and send explicit PCAS INVALIDATE|SCHEDULE ↵Arthur Hanson Rasmusson7 days
| | | | (IQ2M bisect)
* vgsp: drop SET_OBJECT from the forwarded GR launch replay (guest push has none)Arthur Hanson Rasmusson7 days
|
* vgsp: dump the full captured guest push stream for method decodeArthur Hanson Rasmusson8 days
|
* vgsp: mode 26 - full golden9 context promote on the V6 execution channelArthur Hanson Rasmusson8 days
|
* vgsp: raise GR launch release poll to 5 s with progress telemetryArthur Hanson Rasmusson8 days
|
* vgsp: point inline-QMD launch at the guest QMD buffer + GR post-mortem loggingArthur Hanson Rasmusson8 days
|
* vgsp: alias-map indirect high-VA GR pages and fix up shadow pointersArthur Hanson Rasmusson8 days
| | | | | | | | | The mail kernel's output buffer has no QMD pointer word; the engine reaches it through a pointer inside the parameter bank, so the Tier-1 refusal at its high VA killed the launch. Alias-map such a page's guest HPA at a fresh ladder line and rewrite every matching 8-byte pointer inside the shadowed copy pages (param/program) to the alias, so engine writes land in the guest's own page and the guest's DtoH sees them.
* vgsp: track shadow ranges per record for multi-page GR buffersArthur Hanson Rasmusson8 days
| | | | | | | The inline-record path appends pages after the pointer pages, so the adjacent-entry heuristic missed the second param page. Record each shadowed range (base guest VA, line, mapped PTE count) and extend any page that continues a recorded range, up to 16 pages per 128 B line.
* vgsp: contiguous shadow PTEs for multi-page GR buffers (R4)Arthur Hanson Rasmusson8 days
| | | | | | | | | The mail launch's param buffer spans two pages but the QMD names only the base page. The second page has no pointer word, so the Tier-2 shadow path skipped it and the launch was refused. Map a page with no pointer word that is contiguous with the previous shadow-mapped page into the next PTE of the same 128 B fetch line (each line covers up to 16 consecutive 4 KB pages), keeping the rewritten base-pointer buffer contiguous for the engine.
* vgsp: raise GR forward shadow pool to 24 pagesArthur Hanson Rasmusson8 days
| | | | | | | The mail launch has 8 pointer/QMD pages plus up to two release/sem shadow lines; the 4-page pool exhausted and refused the launch even with the HPA-copy fallback. 24 covers the 16-page launch cap plus the two release shadows.