diff options
| author | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-09-28 07:34:34 -0400 |
|---|---|---|
| committer | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-09-28 07:34:34 -0400 |
| commit | 17e1f522e4e9e04d13c4ca9495a2f4f1bdc58c36 (patch) | |
| tree | 350dc2707e5ddc471ab93686cd32a4d7ea92f40e /kernel/main.c | |
| parent | d8f1069384dbfb1d8e453e71614a9baaf3438f5c (diff) | |
| download | open-iov-17e1f522e4e9e04d13c4ca9495a2f4f1bdc58c36.tar.gz open-iov-17e1f522e4e9e04d13c4ca9495a2f4f1bdc58c36.zip | |
sema-svc: apply releases promptly and decode compute-push releases
The content sweep now:
- decodes a release whose method stream continues with any INC_METHOD,
not only the CE LAUNCH_DMA group, so the releases at the head of a
compute/GR channel's first push are applied too;
- remembers releases whose target VA had no translation (deferred list)
and retries them every service pass, so a VA->PA injection lands them
immediately instead of after the next full sweep;
- re-arms the fast sliced sweep for a few seconds after an injection;
- treats a channel whose USERD/ring cannot be resolved as stalled, so the
sweep keeps looking for the releases its unreadable pushes carry.
tools: add per-cdt client-pin helper (sem pages + /dev/nvidia0 windows),
sem-page scanner and memprobe fixes (short-read guard, --brief).
Live-verified: injecting a client sem page applied 12 deferred releases
within a second; the service kept applying (89 -> 202) while cdt ran.
Diffstat (limited to 'kernel/main.c')
0 files changed, 0 insertions, 0 deletions
