diff options
| author | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-10-18 12:00:52 -0400 |
|---|---|---|
| committer | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-10-18 12:10:03 -0400 |
| commit | 04aad03adc45683d03fe1451b8f234061e6b88ff (patch) | |
| tree | bd354b50006a57bf54a302ba6a086fdca137f902 /tools/site/check_site.py | |
| parent | 2658fedd556f872f11dd3aeefa88ff6eb76c5342 (diff) | |
| download | open-iov-04aad03adc45683d03fe1451b8f234061e6b88ff.tar.gz open-iov-04aad03adc45683d03fe1451b8f234061e6b88ff.zip | |
vgsp: fail4 discrimination tooling - copy-out page witnesses + full-boot bigcopy resolution budget
Four guest CUDA clients fail all-bad while four pass; the aggregate
counters cannot separate 'engine result never produced' from 'produced
but written to a different guest page than the client's read resolves'.
Add the two per-page witnesses that correlate the write side with the
read side:
- gsp_phys_gr_copyout_dump (booter, default 1): per-changed-page
OUT-PAGE-WIT va=<device VA> hpa=<guest PA written> first8/last8=<bytes
shipped>, bounded 12 pages per launch, plus one RELOC-CENSUS line per
launch (gaps vs late-resolved words vs late pages).
- sema_bigcopy_log (sema service, default 24, was a hardcoded per-boot
budget): the svc_copy large-copy proof already logs both operands'
resolved VA -> pa/aperture/provenance and the first 16 bytes each side;
raising the budget past the boot's head makes the failing clients'
H2D/D2H resolutions visible.
Discrimination test for the next cycle: same device VA on OUT-PAGE-WIT
(copy-out HPA) and sema-bigcopy (D2H source pa) with different PAs proves
the produced-but-misplaced class; equal PAs redirects to the readback
content/engine-input path.
(cherry picked from commit 78ea8b7807231ac418a17b85c29ed1845e1b0062)
Diffstat (limited to 'tools/site/check_site.py')
0 files changed, 0 insertions, 0 deletions
