diff options
| author | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-09-23 11:46:33 -0400 |
|---|---|---|
| committer | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-09-23 11:46:33 -0400 |
| commit | 534131933ef24d602314281573db4ef16cc08a93 (patch) | |
| tree | 5ec97ff6576e1d67e559dddffcb9d4b03c68f984 /docs/06-portability | |
| parent | 7ec899ccdfd0298f365e1613c1ac5bfcfa551475 (diff) | |
| download | open-iov-534131933ef24d602314281573db4ef16cc08a93.tar.gz open-iov-534131933ef24d602314281573db4ef16cc08a93.zip | |
kernel: coherent GSP-RM replies for engine-context creation
- GSP_RM_ALLOC: echo the request payload back with status forced to NV_OK.
The kernel driver copies the reply params over the caller's params buffer
using the class-expected size, so a zeroed reply smashed libcuda's stack
(SIGSEGV at the engine-registration continuation); echoing makes the
copy-back idempotent.
- CE_GET_PHYSICAL_CAPS / CE_GET_ALL(_PHYSICAL)_CAPS: report sysmem, P2P and
BL copy caps and mark the GR-synchronous CE (GRCE, COPY0). Without a GRCE
the client's context walk ends with an empty secondary-engine record and
the engine RM alloc is issued with class 0 (rejected -> cuCtxCreate fails).
- TU104 engine table: CE0 shares the GR PBDMA ids (the driver's GR/GRCE
runqueue validation requires it), plus an entry for the async copy engine
(COPY14) advertised in the GSP static info engine caps.
- tools/guest-diag/ioctl_trace: decode the RM status fields of alloc,
control and free so the first failing driver call is visible in traces.
gitignore: keep the CUDA analysis scratch tree (incl. WORKING-HERE.md) local.
Diffstat (limited to 'docs/06-portability')
0 files changed, 0 insertions, 0 deletions
