diff options
| author | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-10-27 03:26:43 -0400 |
|---|---|---|
| committer | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-10-27 03:26:43 -0400 |
| commit | fed296788cb8ac846642c362a4599a9bc94eaea0 (patch) | |
| tree | 82f6477397d7a639c73596a73d24044a804d0fd2 /tools/guest-diag/guest_pin_stream.py | |
| parent | f43f8154f6e97b29d4b2a02692d4826339eef8a5 (diff) | |
| download | open-iov-fed296788cb8ac846642c362a4599a9bc94eaea0.tar.gz open-iov-fed296788cb8ac846642c362a4599a9bc94eaea0.zip | |
guest-diag/pin scanner: allow Xorg/X as pin targets (GL path)
The nvidia-push DMA test in Xorg screen init fails with 'Failed to initialize
DMA / Failed to allocate push buffer' (observed r816) because the X server's
pages are never pinned - the scanner excluded Xorg/X alongside the
nvidia-smi/persistenced transients. Xorg is long-lived and a legitimate GL
client of the vGPU, so it is now a valid pin target; the transient exclusions
stay.
Diffstat (limited to 'tools/guest-diag/guest_pin_stream.py')
| -rw-r--r-- | tools/guest-diag/guest_pin_stream.py | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/tools/guest-diag/guest_pin_stream.py b/tools/guest-diag/guest_pin_stream.py index 175ed23..8768f2f 100644 --- a/tools/guest-diag/guest_pin_stream.py +++ b/tools/guest-diag/guest_pin_stream.py @@ -1432,7 +1432,14 @@ def cdt_pid(): # Processes that hold a /dev/nvidia* fd but are not CUDA clients; the # scanner must never commit to them (a transient nvidia-smi at boot was # picked once and its exited pagemap read back EOF forever). - non_clients = ("nvidia-smi", "nvidia-persistenced", "Xorg", "X") + # + # SESSION 146: Xorg/X used to be excluded here too, but the GL/GZDOOM + # path needs the X server's pages pinned - Xorg screen init fails with + # "Failed to initialize DMA / Failed to allocate push buffer" when the + # nvidia-push buffers cannot be resolved (observed r816). Xorg is a + # long-lived process (unlike the nvidia-smi transient the exclusion + # guarded against), so it is a valid, stable pin target. + non_clients = ("nvidia-smi", "nvidia-persistenced") cands = [] for d in os.listdir('/proc'): if not d.isdigit(): |
