summaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorArthur Hanson Rasmusson <arthur@vgpu.io>2026-10-27 03:26:43 -0400
committerArthur Hanson Rasmusson <arthur@vgpu.io>2026-10-27 03:26:43 -0400
commitfed296788cb8ac846642c362a4599a9bc94eaea0 (patch)
tree82f6477397d7a639c73596a73d24044a804d0fd2 /tools
parentf43f8154f6e97b29d4b2a02692d4826339eef8a5 (diff)
downloadopen-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')
-rw-r--r--tools/guest-diag/guest_pin_stream.py9
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():