Bug#974772: intel-media-va-driver: Programs crash with "Illegal instruction" in iHD_drv_video.so
Package: intel-media-va-driver
Version: 20.3.0+dfsg1-1
Severity: important
Tags: ftbfs
Dear Maintainer,
Since my latest debian update, VLC is crashing when playing video with the message:
Illegal instruction
After a bit of debug in GDB, I have confirmed that the crash comes from:
/usr/lib/x86_64-linux-gnu/dri/iHD_drv_video.so
(gdb) bt
#0 0x00007fffa133ba6b in ?? () from /usr/lib/x86_64-linux-gnu/dri/iHD_drv_video.so
#1 0x00007fffa133bb8f in ?? () from /usr/lib/x86_64-linux-gnu/dri/iHD_drv_video.so
#2 0x00007fffa133b2c8 in ?? () from /usr/lib/x86_64-linux-gnu/dri/iHD_drv_video.so
#3 0x00007fffa133bc67 in ?? () from /usr/lib/x86_64-linux-gnu/dri/iHD_drv_video.so
#4 0x00007fffa1342a05 in ?? () from /usr/lib/x86_64-linux-gnu/dri/iHD_drv_video.so
#5 0x00007fffa12c6597 in ?? () from /usr/lib/x86_64-linux-gnu/dri/iHD_drv_video.so
#6 0x00007fffac244e86 in ?? () from /usr/lib/x86_64-linux-gnu/libva.so.2
#7 0x00007fffac245feb in vaInitialize () from /usr/lib/x86_64-linux-gnu/libva.so.2
I am suspecting it is because the package is compiled from a very recent architecture
(i7 with sse4.1 explicitely enabled) which my processor does not support.
I have tryed compiling the package from source, but after tweaking the flags to
set -march=native, the compilation fails:
In file included from [...]/intel-media-driver-20.3.0+dfsg1/media_driver/linux/common/cm/hal/cm_mem_os.h:30,
from [...]/intel-media-driver-20.3.0+dfsg1/media_driver/agnostic/common/cm/cm_mem.h:128,
from [...]/intel-media-driver-20.3.0+dfsg1/media_driver/agnostic/common/cm/cm_buffer_rt.cpp:33:
/usr/lib/gcc/x86_64-linux-gnu/10/include/smmintrin.h: In function ‘void CmFastMemCopyFromWC(void*, const void*, size_t, CPU_INSTRUCTION_LEVEL)’:
/usr/lib/gcc/x86_64-linux-gnu/10/include/smmintrin.h:582:1: error: inlining failed in call to ‘always_inline’ ‘__m128i _mm_stream_load_si128(__m128i*)’: target specific option mismatch
582 | _mm_stream_load_si128 (__m128i *__X)
| ^~~~~~~~~~~~~~~~~~~~~
In file included from [...]/intel-media-driver-20.3.0+dfsg1/media_driver/agnostic/common/cm/cm_mem.h:128,
from [...]/intel-media-driver-20.3.0+dfsg1/media_driver/agnostic/common/cm/cm_buffer_rt.cpp:33:
[...]/intel-media-driver-20.3.0+dfsg1/media_driver/linux/common/cm/hal/cm_mem_os.h:201:53: note: called from here
201 | xmm3 = _mm_stream_load_si128(mmSrc + 3);
| ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
I am wondering what would be a good solution to at least avoid crashes...
Regards,
Christophe
-- System Information:
Debian Release: bullseye/sid
APT prefers testing
APT policy: (500, 'testing')
Architecture: amd64 (x86_64)
Foreign Architectures: i386
Kernel: Linux 5.2.0-2-amd64 (SMP w/2 CPU threads)
Kernel taint flags: TAINT_WARN
Locale: LANG=C.UTF-8, LC_CTYPE=C.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled
Versions of packages intel-media-va-driver depends on:
ii libc6 2.30-4
ii libgcc-s1 10.2.0-16
ii libigdgmm11 20.3.2+ds1-1
ii libstdc++6 10.2.0-16
ii libva2 [libva-driver-abi-1.9] 2.9.0-1
intel-media-va-driver recommends no packages.
intel-media-va-driver suggests no packages.
-- no debconf information
Reply to: