Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug]: SMT failed with MFX_ERR_DEVICE_FAILED when compiling UMD with G++ 8.3.0 #1586

Closed
TangZhiZhen opened this issue Jan 5, 2023 · 1 comment
Assignees
Labels
Reserved Information to describe some implementation detail or restriction

Comments

@TangZhiZhen
Copy link
Contributor

Which component impacted?

Encode

Is it regression? Good in old configuration?

Yes, it's good in old version

What happened?

In Linux or Browser or Applications: sample_multi_transcode
With libva/libva-utils/gmmlib/media-driver version:
VA-API version: 1.16 (libva 2.16.0)
Driver version: Intel iHD driver for Intel(R) Gen Graphics - 2022Q4 release
Graphic hardware: ATS-M
Run
Compiling UMD with Debian10 default G++(8.3.0).
a) /usr/bin/sample_multi_transcode -i::h265 /home/media/streams/conformance/hevc/resolutions/HEVC_ReadySetGo_3840x2160_60_10bit.bin -MaxKbps 0 -b 40000 -cbr -ext_allocator -f 60 -h 2160 -lowpower:on -n 60 -w 3840 -hw -async 5 -u 4 -memory 2 -o::h265 0001.0.h265

b)/usr/bin/sample_multi_transcode -i::h264 /home/media/streams/conformance/h264/PV/HDDVD/toys_and_calendar_1920x1080_25Hz_main_IBBP_f200_15M.264 -cqp -ext_allocator -h 1080 -lowpower:on -n 250 -qpb 32 -qpi 32 -qpp 32 -w 1920 -hw -async 1 -u 4 -o::h265 0001.0.h265

3)/usr/bin/sample_multi_transcode -i::h264 /home/media/streams/conformance/h264/PV/HDDVD/toys_and_calendar_1920x1080_25Hz_main_IBBP_f200_15M.264 -MaxKbps 4800 -b 4000 -dec::sys -ext_allocator -f 30 -h 720 -lowpower:on -n 250 -override_decoder_framerate 30 -vbr -w 1280 -hw -async 5 -u 7 -o::av1 0001.0.av1

Errors
[ERROR], sts=MFX_ERR_DEVICE_FAILED(-17),

What's the usage scenario when you are seeing the problem?

Transcode for media delivery

What impacted?

sample_multi_transcode
sample_encode

Debug Information

What's libva/libva-utils/gmmlib/media-driver version?

VA-API version: 1.16 (libva 2.16.0)
Driver version: Intel iHD driver for Intel(R) Gen Graphics - 2022Q4 release
Graphic hardware: ATS-M
Distro:
Distributor ID: Debian
Description: Debian GNU/Linux 10 (buster)
Release: 10
Codename: buster

Could you provide vainfo log by vainfo >vainfo.log 2>&1?
root@debian:/home/media# vainfo
Trying display: wayland
error: XDG_RUNTIME_DIR not set in the environment.
Trying display: x11
X11 connection rejected because of wrong authentication.
error: can't connect to X server!
Trying display: drm
libva info: VA-API version 1.16.0
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/iHD_drv_video.so
libva info: Found init function __vaDriverInit_1_16
libva info: va_openDriver() returns 0
vainfo: VA-API version: 1.16 (libva 2.16.0)
vainfo: Driver version: Intel iHD driver for Intel(R) Gen Graphics - 22.6.1-12384 (ef04e2e)
vainfo: Supported profile and entrypoints
VAProfileNone : VAEntrypointVideoProc
VAProfileNone : VAEntrypointStats
VAProfileMPEG2Simple : VAEntrypointVLD
VAProfileMPEG2Main : VAEntrypointVLD
VAProfileH264Main : VAEntrypointVLD
VAProfileH264Main : VAEntrypointEncSliceLP
VAProfileH264High : VAEntrypointVLD
VAProfileH264High : VAEntrypointEncSliceLP
VAProfileJPEGBaseline : VAEntrypointVLD
VAProfileJPEGBaseline : VAEntrypointEncPicture
VAProfileH264ConstrainedBaseline: VAEntrypointVLD
VAProfileH264ConstrainedBaseline: VAEntrypointEncSliceLP
VAProfileHEVCMain : VAEntrypointVLD
VAProfileHEVCMain : VAEntrypointEncSliceLP
VAProfileHEVCMain10 : VAEntrypointVLD
VAProfileHEVCMain10 : VAEntrypointEncSliceLP
VAProfileVP9Profile0 : VAEntrypointVLD
VAProfileVP9Profile0 : VAEntrypointEncSliceLP
VAProfileVP9Profile1 : VAEntrypointVLD
VAProfileVP9Profile1 : VAEntrypointEncSliceLP
VAProfileVP9Profile2 : VAEntrypointVLD
VAProfileVP9Profile2 : VAEntrypointEncSliceLP
VAProfileVP9Profile3 : VAEntrypointVLD
VAProfileVP9Profile3 : VAEntrypointEncSliceLP
VAProfileHEVCMain12 : VAEntrypointVLD
VAProfileHEVCMain422_10 : VAEntrypointVLD
VAProfileHEVCMain422_12 : VAEntrypointVLD
VAProfileHEVCMain444 : VAEntrypointVLD
VAProfileHEVCMain444 : VAEntrypointEncSliceLP
VAProfileHEVCMain444_10 : VAEntrypointVLD
VAProfileHEVCMain444_10 : VAEntrypointEncSliceLP
VAProfileHEVCMain444_12 : VAEntrypointVLD
VAProfileHEVCSccMain : VAEntrypointVLD
VAProfileHEVCSccMain : VAEntrypointEncSliceLP
VAProfileHEVCSccMain10 : VAEntrypointVLD
VAProfileHEVCSccMain10 : VAEntrypointEncSliceLP
VAProfileHEVCSccMain444 : VAEntrypointVLD
VAProfileHEVCSccMain444 : VAEntrypointEncSliceLP
VAProfileAV1Profile0 : VAEntrypointVLD
VAProfileAV1Profile0 : VAEntrypointEncSliceLP
VAProfileHEVCSccMain444_10 : VAEntrypointVLD
VAProfileHEVCSccMain444_10 : VAEntrypointEncSliceLP

Do you want to contribute a patch to fix the issue?

No.

@walter-bai
Copy link
Contributor

Root cause: driver code uses SFINAE while some g++ versions have a regression about SFINAE.
Last known good version: 7.3.0
Fix: 8.4
Versions between 7.3.0 and 8.4 may have this regression.

@Sherry-Lin Sherry-Lin added the Reserved Information to describe some implementation detail or restriction label Jan 5, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Reserved Information to describe some implementation detail or restriction
Projects
None yet
Development

No branches or pull requests

6 participants