diff options
| author | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-10-12 14:38:24 -0400 |
|---|---|---|
| committer | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-10-12 14:38:24 -0400 |
| commit | 2a5621c8ac5c11fd4c41300a88c4fa08c03c5079 (patch) | |
| tree | 6617052bf52d35c6cc7bd307d556883262ee1a33 /userspace/cuda/docs/04-virtualization-and-emulation.md | |
| parent | b1075d754f6547b57fc4bdc3e1fc542001cbb981 (diff) | |
| download | open-iov-2a5621c8ac5c11fd4c41300a88c4fa08c03c5079.tar.gz open-iov-2a5621c8ac5c11fd4c41300a88c4fa08c03c5079.zip | |
guest-diag: content-score CE mem candidates and refresh stale pin sets
The kptr-keyed one-shot latches assumed object identity, but UVM frees and
re-creates CE push-buffer rm_mems and channels mid-session and the slab
reuses the same addresses; a resolution taken before such a move pinned
pages that read all-zero when the host used them, so every CE ring entry
stalled in the 8 s grace (r125: the live pushes sat at new vmap pages of
the same rm_mem kptr). Candidates are now scored by their window content
(a live push buffer is full of method streams, a freed range reads zeros)
and the best is pinned - all-zero candidate sets emit nothing instead of
poisoning the host map. A resolved mem is re-validated every ~2 s against
its own {cpu,gpu} fields and first-page PA; when they move, the latches
drop and the current truth is re-emitted.
Diffstat (limited to 'userspace/cuda/docs/04-virtualization-and-emulation.md')
0 files changed, 0 insertions, 0 deletions
