summaryrefslogtreecommitdiffstats
path: root/STATE-CURRENT.md
diff options
context:
space:
mode:
authorArthur Hanson Rasmusson <arthur@vgpu.io>2026-11-13 05:49:55 -0500
committerArthur Hanson Rasmusson <arthur@vgpu.io>2026-11-13 05:49:55 -0500
commitac741b2a993d4ff8f4b67e385df00d1a58fe3a4f (patch)
tree2eca2d68c05e014138b7f78912006b1748139363 /STATE-CURRENT.md
parentfd5685b1653e98ad0ae0dfaa3e4e958a8666a410 (diff)
downloadopen-iov-ac741b2a993d4ff8f4b67e385df00d1a58fe3a4f.tar.gz
open-iov-ac741b2a993d4ff8f4b67e385df00d1a58fe3a4f.zip
vgsp: CB parser decode fix + pre-replay FE context clear attempt (cwd3 latch survives; zero-store persists)
(a) svc_gl_cb_upload_scan decode now follows the class definitions (cla16f.h: method 11:0, subchannel 15:13): addr=(hdr&0xfff)<<2, subch=(hdr>>13)&7; selector B/C swapped (0x2384=B=ADDRESS_UPPER high dword, 0x2388=C=lower, cla097.h); 0x238c runs apply [offset][constants...] inline data. CB-DIAG prints subch. Other classes untouched. (b) Pre-replay CWD poison clear for the stream3d lane: new gsp_phys_gr_cwd_clear_locked() (checks 0x404490/0x40706c/0x400504 for 0xbadf, runs the wedge recovery's bounded TSG preempt/resched re-arm + shared latch wipe) before build_gr_launch; once per launch, stream3d+sema_gr_wedge_recover gated (CUDA/CE unaffected). Validation (c250-c254, rich args, ladder armed): the re-arm probes green ('WEDGE-REARM probe rc=0 (engine ALIVE)') but the cwd3 latch does NOT move ('CWD-CLEAR after re-arm ... cwd3=badf5040') and wrote=0 persists (0/1024) with the 0x1528 trap gone under sema_gl_shader_exc=0 - clause (b) is falsified as sufficient: the poison is not the TSG/PBDMA context the re-arm touches. CB-DIAG on these draws shows n3800/n39c8/n2390=0 because bit 12 is 0 on that stream (old/new decodes identical there) - the parser fix stands on the class definition. X regressed to the DDX DMA wall on these cycles (DMA-init 0x51 + per-start SIGSEGVs), so clean gl_frames windows were rare.
Diffstat (limited to 'STATE-CURRENT.md')
0 files changed, 0 insertions, 0 deletions