Max Nikulin [2024-01-21 10:51:36] wrote: > On 21/01/2024 06:51, Stefan Monnier wrote: >> [GFX1-]: vaapitest: VA-API test failed: failed to initialise VAAPI >> connection. > [...] >> Any idea what might be going on? Any hint how I could diagnose the problem? > I would start from comparison of "vainfo" output and related sections in > about:support.
Thanks, I didn't know about either of those :-) Sadly, `vainfo` doesn't tell me much more info than that it fails: % vainfo libva info: VA-API version 1.20.0 libva info: Trying to open /usr/lib/i386-linux-gnu/dri/iHD_drv_video.so libva info: Found init function __vaDriverInit_1_20 libva error: /usr/lib/i386-linux-gnu/dri/iHD_drv_video.so init failed libva info: va_openDriver() returns 1 libva info: Trying to open /usr/lib/i386-linux-gnu/dri/i965_drv_video.so libva info: Found init function __vaDriverInit_1_8 libva error: /usr/lib/i386-linux-gnu/dri/i965_drv_video.so init failed libva info: va_openDriver() returns -1 vaInitialize failed with error code -1 (unknown libva error),exit % But at least, it seems to indicate that my problems don't have to do with Firefox. > Internally Firefox likely uses a test like > > /usr/lib/firefox-esr/vaapitest -d /dev/dri/renderD128 > > https://searchfox.org/mozilla-central/source/widget/gtk/GfxInfo.cpp#line-649 Indeed that gives me the same error message: % /usr/lib/firefox-esr/vaapitest -d /dev/dri/renderD128 ERROR VA-API test failed: failed to initialise VAAPI connection. % I can't see any "verbose" option for those so I tried `strace`: % strace vainfo [...] write(2, "libva info: Found init function __vaDriverInit_1_20", 52) = 52 openat(AT_FDCWD, "/etc/igfx_user_feature_next.txt", O_RDONLY|O_LARGEFILE) = -1 ENOENT (Aucun fichier ou dossier de ce type) openat(AT_FDCWD, "/etc/igfx_user_feature.txt", O_RDONLY|O_LARGEFILE) = -1 ENOENT (Aucun fichier ou dossier de ce type) openat(AT_FDCWD, "/dev/shm/GFX_MEDIA_TRACE", O_RDONLY|O_LARGEFILE) = -1 ENOENT (Aucun fichier ou dossier de ce type) getpid() = 14840 ioctl(4, DRM_IOCTL_VERSION, 0xffdde780) = 0 ioctl(4, DRM_IOCTL_I915_GETPARAM or DRM_IOCTL_TEGRA_CLOSE_CHANNEL, 0xffdde780) = 0 ioctl(4, DRM_IOCTL_VERSION, 0xffdde820) = 0 ioctl(4, DRM_IOCTL_I915_GEM_GET_APERTURE, 0xffdde7e8) = 0 geteuid32() = 20848 getuid32() = 20848 ioctl(4, DRM_IOCTL_I915_GETPARAM or DRM_IOCTL_TEGRA_CLOSE_CHANNEL, 0xffdde820) = 0 ioctl(4, DRM_IOCTL_I915_GETPARAM or DRM_IOCTL_TEGRA_CLOSE_CHANNEL, 0xffdde7e0) = 0 ioctl(4, DRM_IOCTL_I915_GETPARAM or DRM_IOCTL_TEGRA_CLOSE_CHANNEL, 0xffdde7e0) = 0 ioctl(4, DRM_IOCTL_I915_GETPARAM or DRM_IOCTL_TEGRA_CLOSE_CHANNEL, 0xffdde7e0) = 0 ioctl(4, DRM_IOCTL_I915_GETPARAM or DRM_IOCTL_TEGRA_CLOSE_CHANNEL, 0xffdde7e0) = 0 ioctl(4, DRM_IOCTL_I915_GETPARAM or DRM_IOCTL_TEGRA_CLOSE_CHANNEL, 0xffdde7e0) = 0 ioctl(4, DRM_IOCTL_I915_GETPARAM or DRM_IOCTL_TEGRA_CLOSE_CHANNEL, 0xffdde7e0) = 0 ioctl(4, DRM_IOCTL_I915_GETPARAM or DRM_IOCTL_TEGRA_CLOSE_CHANNEL, 0xffdde7e0) = 0 ioctl(4, DRM_IOCTL_I915_GETPARAM or DRM_IOCTL_TEGRA_CLOSE_CHANNEL, 0xffdde7e0) = 0 ioctl(4, DRM_IOCTL_I915_GETPARAM or DRM_IOCTL_TEGRA_CLOSE_CHANNEL, 0xffdde7e0) = 0 ioctl(4, DRM_IOCTL_I915_GETPARAM or DRM_IOCTL_TEGRA_CLOSE_CHANNEL, 0xffdde7e0) = 0 ioctl(4, DRM_IOCTL_I915_GETPARAM or DRM_IOCTL_TEGRA_CLOSE_CHANNEL, 0xffdde7e0) = 0 ioctl(4, DRM_IOCTL_I915_GETPARAM or DRM_IOCTL_TEGRA_CLOSE_CHANNEL, 0xffdde7e0) = 0 ioctl(4, DRM_IOCTL_I915_GETPARAM or DRM_IOCTL_TEGRA_CLOSE_CHANNEL, 0xffdde7e0) = 0 ioctl(4, DRM_IOCTL_I915_GETPARAM or DRM_IOCTL_TEGRA_CLOSE_CHANNEL, 0xffdde7e0) = 0 ioctl(4, DRM_IOCTL_I915_GETPARAM or DRM_IOCTL_TEGRA_CLOSE_CHANNEL, 0xffdde7e0) = 0 ioctl(4, DRM_IOCTL_I915_GEM_CONTEXT_GETPARAM, 0xffdde808) = 0 ioctl(4, DRM_IOCTL_I915_QUERY, 0xffdde7f8) = 0 ioctl(4, DRM_IOCTL_I915_QUERY, 0xffdde7f8) = 0 ioctl(4, DRM_IOCTL_I915_GETPARAM or DRM_IOCTL_TEGRA_CLOSE_CHANNEL, 0xffdde7a4) = 0 ioctl(4, DRM_IOCTL_I915_GETPARAM or DRM_IOCTL_TEGRA_CLOSE_CHANNEL, 0xffdde7a4) = 0 ioctl(4, DRM_IOCTL_I915_GETPARAM or DRM_IOCTL_TEGRA_CLOSE_CHANNEL, 0xffdde7a4) = 0 ioctl(4, DRM_IOCTL_I915_GETPARAM or DRM_IOCTL_TEGRA_CLOSE_CHANNEL, 0xffdde7a4) = 0 ioctl(4, DRM_IOCTL_I915_GETPARAM or DRM_IOCTL_TEGRA_CLOSE_CHANNEL, 0xffdde7a4) = -1 ENODEV (Aucun périphérique de ce type) ioctl(4, DRM_IOCTL_I915_GETPARAM or DRM_IOCTL_TEGRA_CLOSE_CHANNEL, 0xffdde7a4) = 0 ioctl(4, DRM_IOCTL_I915_GETPARAM or DRM_IOCTL_TEGRA_CLOSE_CHANNEL, 0xffdde7a4) = 0 ioctl(4, DRM_IOCTL_I915_GETPARAM or DRM_IOCTL_TEGRA_CLOSE_CHANNEL, 0xffdde7a4) = -1 ENODEV (Aucun périphérique de ce type) ioctl(4, DRM_IOCTL_I915_GETPARAM or DRM_IOCTL_TEGRA_CLOSE_CHANNEL, 0xffdde7a4) = -1 ENODEV (Aucun périphérique de ce type) write(2, "libva error: /usr/lib/i386-linux-gnu/dri/iHD_drv_video.so init failed", 70) = 70 [...] write(2, "libva info: Found init function __vaDriverInit_1_8", 51) = 51 ioctl(4, DRM_IOCTL_I915_GEM_GET_APERTURE, 0xffde593c) = 0 geteuid32() = 20848 getuid32() = 20848 ioctl(4, DRM_IOCTL_I915_GETPARAM or DRM_IOCTL_TEGRA_CLOSE_CHANNEL, 0xffde5934) = 0 ioctl(4, DRM_IOCTL_I915_GETPARAM or DRM_IOCTL_TEGRA_CLOSE_CHANNEL, 0xffde5934) = 0 ioctl(4, DRM_IOCTL_I915_GETPARAM or DRM_IOCTL_TEGRA_CLOSE_CHANNEL, 0xffde5934) = 0 ioctl(4, DRM_IOCTL_I915_GETPARAM or DRM_IOCTL_TEGRA_CLOSE_CHANNEL, 0xffde5934) = 0 ioctl(4, DRM_IOCTL_I915_GETPARAM or DRM_IOCTL_TEGRA_CLOSE_CHANNEL, 0xffde5934) = 0 ioctl(4, DRM_IOCTL_I915_GETPARAM or DRM_IOCTL_TEGRA_CLOSE_CHANNEL, 0xffde5934) = 0 ioctl(4, DRM_IOCTL_I915_GETPARAM or DRM_IOCTL_TEGRA_CLOSE_CHANNEL, 0xffde5934) = 0 ioctl(4, DRM_IOCTL_I915_GETPARAM or DRM_IOCTL_TEGRA_CLOSE_CHANNEL, 0xffde5934) = 0 ioctl(4, DRM_IOCTL_I915_GETPARAM or DRM_IOCTL_TEGRA_CLOSE_CHANNEL, 0xffde5934) = 0 ioctl(4, DRM_IOCTL_I915_GETPARAM or DRM_IOCTL_TEGRA_CLOSE_CHANNEL, 0xffde5934) = 0 write(2, "libva error: /usr/lib/i386-linux-gnu/dri/i965_drv_video.so init failed", 71) = 71 [...] % I'm not even sure which of the two drivers is supposed to work :-( Stefan