Bug 23121 - vlc may cause a machine hang with h264 videos (and "OpenGL/VAAPI backend for VDPAU" )
Summary: vlc may cause a machine hang with h264 videos (and "OpenGL/VAAPI backend for ...
Status: RESOLVED FIXED
Alias: None
Product: Mageia
Classification: Unclassified
Component: RPM Packages (show other bugs)
Version: 6
Hardware: x86_64 Linux
Priority: Low critical
Target Milestone: ---
Assignee: Kernel and Drivers maintainers
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-06-06 17:41 CEST by Alain Choucroot
Modified: 2019-01-12 11:35 CET (History)
1 user (show)

See Also:
Source RPM: vlc-3.0.2-0.1.mga6.tainted.src.rpm
CVE:
Status comment:


Attachments
video vlc hang part1 (999.00 KB, video/mp4)
2018-06-06 22:39 CEST, Alain Choucroot
Details
video vlc hang part2 (999.00 KB, application/octet-stream)
2018-06-06 22:40 CEST, Alain Choucroot
Details
video vlc hang part3 (502.00 KB, application/octet-stream)
2018-06-06 22:41 CEST, Alain Choucroot
Details
hang when opened with mpv (vdpau) (253.42 KB, image/jpeg)
2018-06-07 11:51 CEST, Alain Choucroot
Details

Description Alain Choucroot 2018-06-06 17:41:45 CEST
Description of problem:

     When vlc hardware acceleration mode is set to "automatic", it chooses the "OpenGL/VAAPI backend for VDPAU". Then it may cause my 2 machines hang with some H264 videos. When "disabled" or forced with "VA-API", hanging never happens.


Version-Release number of selected component (if applicable):
     vlc-3.0.2-0.1.mga6.tainted


How reproducible: always.
     The 2 machines are {Celeron N3050/Intel HD Graphics 400} and {Pentium N3710/Intel HD Graphics 405}.

Steps to Reproduce:

     1. in a shell, launch vlc.
     2. Ensure the hardware acceleration mode is "automatic" (in tools/settings/codec)
     3. Launch an h264 video => with some videos, screen hangs. Cannot control the machine anymore. Before hanging, the following logs are displayed:

VLC media player 3.0.2 Vetinari (revision 3.0.2-0-gd7b653cf14)
[00000000023851a0] main libvlc: Lancement de vlc avec l'interface par défaut. Utilisez « cvlc » pour démarrer VLC sans interface.
libva info: VA-API version 0.39.4
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib64/dri/i965_drv_video.so
libva info: Found init function __vaDriverInit_0_39
failed to open /usr/lib64/dri/hybrid_drv_video.so
Failed to wrapper hybrid_drv_video.so
libva info: va_openDriver() returns 0
[00007f52d0c3d4e0] avcodec decoder: Using OpenGL/VAAPI backend for VDPAU for hardware decoding

     

Workaround : in "tools/settings/codec/hardware accerelation":
- set "disabled".
- or set "VA-API". in this case, machine never hangs. If the same error with /usr/lib64/dri/hybrid_drv_video.so is logged, another avcodec is chosen ( "Using Intel i965 driver for Intel(R) CherryView - 1.7.3 for hardware decoding" )
Alain Choucroot 2018-06-06 17:42:22 CEST

Priority: Normal => Low

David Walser 2018-06-06 18:58:10 CEST

Assignee: bugsquad => shlomif

Comment 1 Shlomi Fish 2018-06-06 20:16:26 CEST
Can you provide a sample problem video? You can use https://rg3.github.io/youtube-dl/ .
Comment 2 Alain Choucroot 2018-06-06 22:39:39 CEST
Created attachment 10226 [details]
video vlc hang part1
Comment 3 Alain Choucroot 2018-06-06 22:40:34 CEST
Created attachment 10227 [details]
video vlc hang part2
Comment 4 Alain Choucroot 2018-06-06 22:41:27 CEST
Created attachment 10228 [details]
video vlc hang part3
Comment 5 Alain Choucroot 2018-06-06 22:44:11 CEST
Added a three part splitted little video that makes vlc ( and the computer ) hang.
You can rebuild the mp4 file via "cat xaa xab xac > video.mp4"
Comment 6 Shlomi Fish 2018-06-06 23:46:15 CEST
On my comp with:

<ul>

<li>
An Intel Core i3 CPU (x86-64).
</li>

<li>
8 GB of RAM.
</li>

<li>
Intel Corporation Sandy Bridge Integrated Graphics Controller (rev 09)
</li>

<li>
A 2 TB hard-disk.
</li>

<li>
A 21″ Wide LCD Screen by LG.
</li>

<li>
Intel Corporation Cougar Point High Definition Audio Controller.
</li>

<li>
Intel Corporation 82579V Gigabit Network Connection.
</li>

</ul>


and mga7 cauldron x64, vlc does not hang the system with that configuration. I also host your file here:

http://www.shlomifish.org/Files/files/video/mga23121-vid1.mp4

I have mga6 installed on a different partition and can reboot to it to check.
Comment 7 Alain Choucroot 2018-06-07 09:09:58 CEST
Thanks for testing and sharing the file. I am not surprised it works on your side. It might be really hardware specific. Yet some guys from MLO (french forum) wonder what is that missing hybrid_drv_video.so. And why vlc chooses the problematic "OpenGL/VAAPI backend for VDPAU", which leads into hanging, instead of VA-API which actually works.
Comment 8 Shlomi Fish 2018-06-07 11:07:04 CEST
(In reply to Alain Choucroot from comment #7)
> Thanks for testing and sharing the file. I am not surprised it works on your
> side. It might be really hardware specific. Yet some guys from MLO (french
> forum) wonder what is that missing hybrid_drv_video.so. And why vlc chooses
> the problematic "OpenGL/VAAPI backend for VDPAU", which leads into hanging,
> instead of VA-API which actually works.

What happens when you play that file using mpv?
Comment 9 Alain Choucroot 2018-06-07 11:48:32 CEST
I installed mpv and tried => hang !
I attached a photo (vdpau_hang.jpg)
Comment 10 Alain Choucroot 2018-06-07 11:51:42 CEST
Created attachment 10229 [details]
hang when opened with mpv (vdpau)
Comment 11 Shlomi Fish 2018-06-07 12:13:10 CEST
Since it happens with mpv as well, it is likely a driver's problem. Assigning to "kernel".

Assignee: shlomif => kernel

Comment 12 José Jorge 2019-01-12 11:35:03 CET
As this is triggered by a misuse of vdpau on vaapi hardware, now that vlc plays directly with vaapi, I have removed the requires on vagl for vdpau plugin. This will come with next vlc update.

Markign as fixed as for vlc it will stop the bug.

Resolution: (none) => FIXED
Status: NEW => RESOLVED
CC: (none) => lists.jjorge


Note You need to log in before you can comment on or make changes to this bug.