Add mixed-vendor GPU summary and fix startup heap corruption

Collect AMD amdgpu sysfs and optional NVIDIA nvidia-smi stats in the
background, auto-detecting supported adapters in PCI order and rotating
additional pairs alongside CPU/RAM. Explicit PCI selection and off mode
remain supported; missing metrics render as N/A.

Initialize the bitmap-only canvas locally instead of the ABI-dependent
libg15render initializer: the installed TTF-enabled renderer wrote an
8-byte FreeType pointer past the smaller bitmap-only allocation, corrupting
the heap before GPU threads started. Add collector, rendering and full-main
regression tests.
This commit is contained in:
Mikhail Yevchenko committed 2026-09-07 17:06:32 +00:00
1 parent 076641c867
commit 7c06a8089d
12 files changed
+1417 -4

No files matched your search

+13
View File
@@ -0,0 +1,13 @@
#!/bin/sh
# Native-pixel checks only: no image conversion, daemon or input-device access.
set -eu
renderer=${RENDER_TEST:-./render-test}
out=$(mktemp -d "${TMPDIR:-/tmp}/g15stats-layouts-XXXXXX")
trap 'rm -rf "$out"' EXIT HUP INT TERM
"$renderer" off "$out/off"
"$renderer" off "$out/single" 1
"$renderer" off "$out/dual" 2
"$renderer" off "$out/large" 2 0 large
"$renderer" off "$out/unknown" 2 0 unknown
"$renderer" off "$out/odd" 3 1
"$renderer" off "$out/maximum" 64 31