diff options
| author | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-10-22 18:09:30 -0400 |
|---|---|---|
| committer | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-10-22 18:09:30 -0400 |
| commit | f9ddd5a3004ab08feda43c3d17e674ab132969cb (patch) | |
| tree | 991b6f819e640fd5092a50e9a1520776d804d1f9 /scripts/test_cuda_workloads.sh | |
| parent | 4d4bb3ca0f8c23b8a8bd9893a0f0b4ebbfddd7a8 (diff) | |
| download | open-iov-f9ddd5a3004ab08feda43c3d17e674ab132969cb.tar.gz open-iov-f9ddd5a3004ab08feda43c3d17e674ab132969cb.zip | |
r496f discover the kernel-RM client VAS page directory by verification
The X/GL channel's pushbuffer pages and progress semaphore live in a
kernel-RM internal VAS whose page directory is never published (fn 54 is
UVM/external-VAS only), so no translation source can resolve them: the
tracker push reads zeros/garbage and the driver's DMA sanity poll (which
waits on the progress-tracker semaphore the GPU writes when it consumes the
tracker push) never completes.
With the ring content-validated, try each 4 KB page of the vidmem shadow as
a walk root and register the first whose walk reproduces the ring
VA -> ring PA translation. The walker then resolves every other VA of the
same client - pushbuffer pages, the tracker push, the progress semaphore.
Diffstat (limited to 'scripts/test_cuda_workloads.sh')
0 files changed, 0 insertions, 0 deletions
