diff options
| author | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-10-08 23:22:07 -0400 |
|---|---|---|
| committer | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-10-08 23:22:07 -0400 |
| commit | 06deaccd97b69f0beffe7d98ff9bfc1b0428591e (patch) | |
| tree | 43581557c4cb8147e8dd8b4d2c57ce2aa54c5bab /debug/risc-v-gsp-rm-vm | |
| parent | c31485b90d903bf8d3b20805b6aee2591911ad63 (diff) | |
| download | open-iov-06deaccd97b69f0beffe7d98ff9bfc1b0428591e.tar.gz open-iov-06deaccd97b69f0beffe7d98ff9bfc1b0428591e.zip | |
vgsp-sema: flush per-session discovery state when the last channel closes (ISSUE-0002)
A second CUDA client in the same guest runs in a new UVM VA space that
reuses the same VAs backed by new pages. The service's discovery state
(merged scan map, pinned push-buffer pairs, discovered page-directory
latch, direct_base, pool-PA cache, CE ring-done ranks, retry queue,
forward-release records, GRCE dst ring records, pending releases, VA
spaces) is learned from the live client and was never reset, so the next
session inherited translations for the previous session's pages: its
rings never auto-pinned, releases queued unresolved in svc_pending and
the client spun at its first channel. One clean boot always works, so
make the next session look like one: when the channel set empties mark
a flush; the next rebuild (forced immediately) resets the same state a
fresh boot starts with, and the new client re-discovers from its own
content.
Diffstat (limited to 'debug/risc-v-gsp-rm-vm')
0 files changed, 0 insertions, 0 deletions
