diff options
| author | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-11-02 12:17:10 -0500 |
|---|---|---|
| committer | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-11-02 12:17:10 -0500 |
| commit | f07da6a78ae3189740ac72cd99783c4f3d835749 (patch) | |
| tree | b245a01e060a95043c08ac180ec2b563ce4b600b /tools/cuda-ab/run | |
| parent | 32ec1ca305fe60da413cfe7262e2fbb4bc199a1d (diff) | |
| download | open-iov-f07da6a78ae3189740ac72cd99783c4f3d835749.tar.gz open-iov-f07da6a78ae3189740ac72cd99783c4f3d835749.zip | |
vgsp-diag: re-assert GL setup-push pins end-to-end (strict window re-emit + host GL-family exception)
The r1397 cycle located and content-validated the 60 216 B GL setup push
(the MME 0x114 carrier: 15-page window at a client rw-s mapping, 3728 code
words / 74 SA pairs) and the strict client-mem parse emitted all 15 pins -
yet the host entry stayed unreadable (src=255) on every re-read: pages
0x400a000..0x400e000 never reached the pin table (no injection line, no
re-resolution), so the per-page read always failed on a missing tail page,
and the loose family-learn could additionally overwrite a validated page
with a wrong one (weak 0x200-byte prefix learn).
Two one-line-class changes, mirroring the proven CE-window rationale
('a pin batch that raced in must be allowed to land again even when the
pair is unchanged'):
* guest_pin_stream: a strict-window success stashes its content-validated
pairs (_strict_reemit) and re-emits them every ~4 s, so a page dropped
in burst delivery heals without a new resolution and without defeating
the done latch (r1397: the missing pages were never retried).
* pin_gr_stream: re-asserts GL setup-push family pairs (0x4000000-0x4160000,
0x4200000-0x4300000, 0xcc80000-0xcc90000, 0x6f00000-0x6f10000) like the
CE window, instead of dropping unchanged repeats via the seen dedup.
SESSION 153 r1397b; follows the r1397 offline brief Change 1 (pagemap
window fallback, kept).
Diffstat (limited to 'tools/cuda-ab/run')
0 files changed, 0 insertions, 0 deletions
