From fed296788cb8ac846642c362a4599a9bc94eaea0 Mon Sep 17 00:00:00 2001 From: Arthur Hanson Rasmusson Date: Tue, 27 Oct 2026 03:26:43 -0400 Subject: 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. --- tools/guest-diag/guest_pin_stream.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'tools/guest-diag') 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(): -- cgit v1.2.3