FS#67054 - [libva] SIGSEGV instead of failing

Attached to Project: Arch Linux
Opened by Benjamin Terrier (bterrier) - Saturday, 20 June 2020, 10:20 GMT
Last edited by Maxime Gauduin (Alucryd) - Thursday, 22 September 2022, 15:52 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To Maxime Gauduin (Alucryd)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Description:
I am trying to run Chiaki with VA-API enabled on a PC with an nvidia GPU.
I end up with an error because `av_hwdevice_ctx_create()` failed.
I tried to set LIBVA_DRIVER_NAME=vdpau but then Chiaki crashes with SIGSEGV inside `av_hwdevice_ctx_create()`.
I could also make VLC crash by forcing it to use VA-API.

I was able to build libva-vdpau-driver in debug and see that it SIGSEGV because ctx->native_dpy is NULL, therefore driver_data->x11_dpy is NULL, and finally XDisplayString(driver_data->x11_dpy) crashes (see vdpau_driver.c:188).

I have then rebuilt libva in debug, but could not start Chiaki: chiaki: symbol lookup error: /usr/lib/libavutil.so.56: undefined symbol: vaSetErrorCallback

libavutil.so.56 being owned by ffmpeg, I have rebuilt ffmpeg.

And now, it still does not work but it does not crashes anymore.
Regardless of `LIBVA_DRIVER_NAME=vdpau` being set Chiaki fails at `avcodec_get_hw_config()` and does not even attempts to call `av_hwdevice_ctx_create()` (see videodecoder.cpp:63).

Given that just by rebuilding the packages I went from SIGSEGV to a simple error, it seems that at least these packages need to be rebuilt.



Additional info:
* libva 2.7.1-1
* libva-vdpau-driver 0.7.4-4
* ffmpeg 2:4.2.3-1
* config and/or log files etc.
* https://bbs.archlinux.org/viewtopic.php?pid=1911277#p1911277
* https://github.com/thestr4ng3r/chiaki
This task depends upon

Closed by  Maxime Gauduin (Alucryd)
Thursday, 22 September 2022, 15:52 GMT
Reason for closing:  No response
Comment by Maxime Gauduin (Alucryd) - Tuesday, 06 September 2022, 13:53 GMT
Is this still happening?

Loading...