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

Reply via email to