Control: tags -1 + moreinfo On 2021-03-02 12:23:08 +0100, Giovanni Mascellani wrote: > Package: intel-media-va-driver > Version: 21.1.1+dfsg1-1 > Severity: important > > On my CPU iHD_drv_video.so segfaults when decoding an MP4 movie. I can for > example reproduce it by installing gstreamer1.0-vaapi and running: Which CPU/GPU is that? Cheers > > $ gst-launch-1.0 playbin uri=https://test- > videos.co.uk/vids/bigbuckbunny/mp4/h264/360/Big_Buck_Bunny_360_10s_1MB.mp4 > > Gdb shows this backtrace (truncated, because it's more than 100 frames, > and the interesting ones are at the top): > > #0 KernelDll_AllocateStates(void*, uint32_t, void*, uint32_t, Kdll_RuleEntry > const*, void (*)(PKdll_State)) (pKernelBin=pKernelBin@entry=0x7fffd42e59f0, > uKernelSize=0x0, pFcPatchCache=pFcPatchCache@entry=0x0, > uFcPatchCacheSize=<optimized out>, pDefaultRules=0x0, > ModifyFunctionPointers=0x0) at > ./media_driver/agnostic/common/vp/kdll/hal_kerneldll.c:3350 > #1 0x00007fffd296bfdb in VphalRenderer::Initialize(VphalSettings const*, bool) > (this=0x7fffd4327e30, pSettings=0x7ffff1745ac0, isApoEnabled=<optimized out>) > at ./media_driver/agnostic/common/vp/hal/vphal_renderer.cpp:1414 > #2 0x00007fffd2952e15 in VphalState::Allocate(VphalSettings const*) > (pVpHalSettings=0x7ffff1745ac0, this=0x7fffd42e23a0) at > ./media_driver/agnostic/common/vp/hal/vphal.cpp:146 > #3 VphalState::Allocate(VphalSettings const*) (this=0x7fffd42e23a0, > pVpHalSettings=0x7ffff1745ac0) at > ./media_driver/agnostic/common/vp/hal/vphal.cpp:75 > #4 0x00007fffd2b56105 in DdiVp_InitVpHal(DDI_VP_CONTEXT*) > (pVpCtx=0x7fffd42c1680) at > ./media_driver/linux/common/vp/ddi/media_libva_vp.c:1800 > #5 0x00007fffd2b5a59f in DdiVp_InitCtx(VADriverContext*, DDI_VP_CONTEXT*) > (pVaDrvCtx=<optimized out>, pVpCtx=0x7fffd42c1680) at > ./media_driver/linux/common/vp/ddi/media_libva_vp.c:1660 > #6 0x00007fffd2b5a99e in DdiVp_CreateContext(VADriverContext*, unsigned int, > int, int, int, unsigned int*, int, unsigned int*) > (pVaDrvCtx=pVaDrvCtx@entry=0x7fffd4265240, vaConfigID=vaConfigID@entry=0x0, > iWidth=iWidth@entry=0x0, iHeight=iHeight@entry=0x0, iFlag=iFlag@entry=0x0, > vaSurfIDs=vaSurfIDs@entry=0x0, iNumSurfs=0x0, pVaCtxID=0x7ffff1745dec) at > ./media_driver/linux/common/vp/ddi/media_libva_vp.c:3109 > #7 0x00007fffd2b21be2 in DdiMedia_PutImage(VADriverContext*, unsigned int, > unsigned int, int, int, unsigned int, unsigned int, int, int, unsigned int, > unsigned int) (ctx=0x7fffd4265240, surface=0x0, image=<optimized out>, > src_x=0x0, src_y=0x0, src_width=0x40, src_height=0x40, dest_x=0x0, dest_y=0x0, > dest_width=0x40, dest_height=0x40) at > ./media_driver/linux/common/ddi/media_libva.cpp:5407 > #8 0x00007ffff006a17c in vaPutImage () at /usr/lib/x86_64-linux-gnu/libva.so.2 > #9 0x00007ffff00efb2c in gst_vaapi_surface_put_image > (surface=surface@entry=0x7fffd4252d60, image=image@entry=0x7fffd42742d0) at > ../gst-libs/gst/vaapi/gstvaapisurface.c:761 > #10 0x00007ffff00ae476 in extract_allowed_surface_formats > (img_formats=0x7fffd425c290, display=0x7fffec0046c0 > [GstVaapiDisplay|vaapidisplayglx0]) at ../gst/vaapi/gstvaapipluginbase.c:1451 > #11 ensure_allowed_raw_caps (plugin=0x7fffd424e910) at > ../gst/vaapi/gstvaapipluginbase.c:1483 > #12 gst_vaapi_plugin_base_get_allowed_sinkpad_raw_caps > (plugin=plugin@entry=0x7fffd424e910) at ../gst/vaapi/gstvaapipluginbase.c:1515 > #13 0x00007ffff00b567e in ensure_allowed_sinkpad_caps (postproc=0x7fffd424e910) > at ../gst/vaapi/gstvaapipostproc.c:1312 > #14 gst_vaapipostproc_transform_caps_impl (direction=<optimized out>, > trans=0x7fffd424e910 [GstBaseTransform|vaapipostproc0]) at > ../gst/vaapi/gstvaapipostproc.c:1422 > #15 gst_vaapipostproc_transform_caps (trans=0x7fffd424e910 > [GstBaseTransform|vaapipostproc0], direction=<optimized out>, > caps=0x7fffd4264ad0, filter=0x7fffd4264c50) at > ../gst/vaapi/gstvaapipostproc.c:1445 > #16 0x00007ffff67154b3 in gst_base_transform_transform_caps > (trans=trans@entry=0x7fffd424e910 [GstBaseTransform|vaapipostproc0], > direction=GST_PAD_SRC, caps=caps@entry=0x7fffd4264ad0, > filter=filter@entry=0x7fffd4264c50) at ../libs/gst/base/gstbasetransform.c:474 > #17 0x00007ffff6718e6d in gst_base_transform_query_caps (filter=0x7fffd4264c50, > pad=0x7fffd41f9840 [GstPad|sink], trans=0x7fffd424e910 > [GstBaseTransform|vaapipostproc0]) at ../libs/gst/base/gstbasetransform.c:698 > #18 gst_base_transform_default_query (trans=0x7fffd424e910 > [GstBaseTransform|vaapipostproc0], direction=<optimized out>, > query=0x7fffd4264ca0) at ../libs/gst/base/gstbasetransform.c:1597 > #19 0x00007ffff7eace58 in gst_pad_query (pad=pad@entry=0x7fffd41f9840 > [GstPad|sink], query=query@entry=0x7fffd4264ca0) at ../gst/gstpad.c:4144 > #20 0x00007ffff7ead5bb in gst_pad_peer_query (pad=pad@entry=0x7fffd41f95f0 > [GstPad|src], query=query@entry=0x7fffd4264ca0) at ../gst/gstpad.c:4276 > > Debugging more in depth, I discovered that pKernelBin and uKernelSize > (parameters > of KernelDll_AllocateStates, frame #0) are not initialized by the caller. The > caller > (VphalRenderer::Initialize in > media_driver/agnostic/common/vp/hal/vphal_renderer.cpp) > should initialize the parameters from VphalRenderer members pcKernelBin and > dwKernelBinSize, but these members are in turn never changed from their default > zero value. Initialization should happen (on my CPU, at least) in > VphalRendererG9::InitKdllParam, but the assignment is disabled because the > macro > _FULL_OPEN_SOURCE is defined. > > Of course I am not contesting that non-free kernels are not provided in the > free > version of the package; but if they are not provided, neither should they be > expected by another piece of the code. > > Thanks, Giovanni. > > > -- System Information: > Debian Release: bullseye/sid > APT prefers unstable-debug > APT policy: (500, 'unstable-debug'), (500, 'unstable'), (500, 'testing'), (1, > 'experimental') > Architecture: amd64 (x86_64) > Foreign Architectures: i386 > > Kernel: Linux 5.10.0-3-amd64 (SMP w/12 CPU threads) > Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_OOT_MODULE, > TAINT_UNSIGNED_MODULE > Locale: LANG=it_IT.utf8, LC_CTYPE=it_IT.utf8 (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.31-9 > ii libgcc-s1 10.2.1-6 > ii libigdgmm11 20.4.1+ds1-1 > ii libstdc++6 10.2.1-6 > ii libva2 [libva-driver-abi-1.10] 2.10.0-1 > > intel-media-va-driver recommends no packages. > > intel-media-va-driver suggests no packages. > -- Sebastian Ramacher
Attachment:
signature.asc
Description: PGP signature