]> git.ipfire.org Git - thirdparty/qemu.git/commitdiff
tests/functional/test_aarch64_virt_gpu: Skip test if EGL won't initialize
authorPeter Maydell <peter.maydell@linaro.org>
Tue, 26 Aug 2025 12:34:55 +0000 (13:34 +0100)
committerThomas Huth <thuth@redhat.com>
Wed, 27 Aug 2025 05:07:53 +0000 (07:07 +0200)
If you are using the Nvidia drivers and have installed new versions
of those packages but have not yet rebooted the host kernel,
attempting to use the egl-headless display will cause QEMU to fail to
start with

$ qemu-system-aarch64 -M virt -display egl-headless
qemu-system-aarch64: egl: eglInitialize failed: EGL_NOT_INITIALIZED
qemu-system-aarch64: egl: render node init failed

together with this complaint in the host kernel dmesg:

[7874777.555649] NVRM: API mismatch: the client has the version 535.247.01, but
                 NVRM: this kernel module has the version 535.230.02.  Please
                 NVRM: make sure that this kernel module and all NVIDIA driver
                 NVRM: components have the same version.

This isn't a problem with QEMU itself, so reporting this as a test
failure is misleading.  Instead skip the tests, as we already do for
various other kinds of "host system can't actually run the EGL
display" situation.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Message-ID: <20250826123455.2856988-1-peter.maydell@linaro.org>
Reviewed-by: Manos Pitsidianakis <manos.pitsidianakis@linaro.org>
Acked-by: Alex Bennée <alex.bennee@linaro.org>
Acked-by: Dmitry Osipenko <dmitry.osipenko@collabora.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
tests/functional/test_aarch64_virt_gpu.py

index 38447278579e3efcbed8620fdd91a84ca4d2dc0d..4e50887c3e9fe061c9af7e4aa3046d0b7a350abe 100755 (executable)
@@ -76,6 +76,8 @@ class Aarch64VirtGPUMachine(LinuxKernelTest):
                 self.skipTest("egl-headless support is not available")
             elif "'type' does not accept value 'dbus'" in excp.output:
                 self.skipTest("dbus display support is not available")
+            elif "eglInitialize failed: EGL_NOT_INITIALIZED" in excp.output:
+                self.skipTest("EGL failed to initialize on this host")
             else:
                 self.log.info("unhandled launch failure: %s", excp.output)
                 raise excp