diff --git a/recipes-multimedia/libva/files/0001-Fix-uClibc-build.patch b/recipes-multimedia/libva/files/0001-Fix-uClibc-build.patch new file mode 100644 index 00000000..dbe93872 --- /dev/null +++ b/recipes-multimedia/libva/files/0001-Fix-uClibc-build.patch @@ -0,0 +1,64 @@ +From 2e0a1de5fee7899cc7d4e67ec9893a621a3cf024 Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +Date: Fri, 10 Jun 2022 18:42:34 +0200 +Subject: [PATCH] Fix uClibc build + +uClibc does not provide execinfo.h + +Upstream-Status: Submitted [https://github.com/intel/media-driver/pull/1437] +Signed-off-by: Lim Siew Hoon +--- + CMakeLists.txt | 6 ++++++ + .../linux/common/os/osservice/mos_utilities_specific.cpp | 4 ++++ + 2 files changed, 10 insertions(+) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 8305acfdb..6bec00f7d 100755 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -53,6 +53,12 @@ option (BUILD_CMRTLIB "Build and Install cmrtlib together with media driver" ON) + + option (ENABLE_PRODUCTION_KMD "Enable Production KMD header files" OFF) + ++include(CheckIncludeFileCXX) ++check_include_file_cxx("execinfo.h" HAVE_EXECINFO) ++if (HAVE_EXECINFO) ++ add_definitions(-DHAVE_EXECINFO) ++endif() ++ + include(GNUInstallDirs) + + if (BUILD_CMRTLIB AND NOT CMAKE_WDDM_LINUX) +diff --git a/media_softlet/linux/common/os/osservice/mos_utilities_specific.cpp b/media_softlet/linux/common/os/osservice/mos_utilities_specific.cpp +index ff0b68655..8ea621f0e 100644 +--- a/media_softlet/linux/common/os/osservice/mos_utilities_specific.cpp ++++ b/media_softlet/linux/common/os/osservice/mos_utilities_specific.cpp +@@ -51,7 +51,9 @@ + #include + #include // fork + #include ++#ifdef HAVE_EXECINFO + #include // backtrace ++#endif + + const char *MosUtilitiesSpecificNext::m_szUserFeatureFile = USER_FEATURE_FILE; + MOS_PUF_KEYLIST MosUtilitiesSpecificNext::m_ufKeyList = nullptr; +@@ -2492,6 +2494,7 @@ void MosUtilities::MosTraceEvent( + MOS_FreeMemory(pTraceBuf); + } + } ++#ifdef HAVE_EXECINFO + if (m_mosTraceFilter & (1ULL << TR_KEY_CALL_STACK)) + { + // reserve space for header and stack size field. +@@ -2511,6 +2514,7 @@ void MosUtilities::MosTraceEvent( + size_t ret = write(MosUtilitiesSpecificNext::m_mosTraceFd, traceBuf, nLen); + } + } ++#endif + } + return; + } +-- +2.34.1 + diff --git a/recipes-multimedia/libva/files/c8457540aed1ab9424661087276fb788c0e3aabb.patch b/recipes-multimedia/libva/files/c8457540aed1ab9424661087276fb788c0e3aabb.patch deleted file mode 100644 index 046778b2..00000000 --- a/recipes-multimedia/libva/files/c8457540aed1ab9424661087276fb788c0e3aabb.patch +++ /dev/null @@ -1,109 +0,0 @@ -From c8457540aed1ab9424661087276fb788c0e3aabb Mon Sep 17 00:00:00 2001 -From: "Wang, Pingli" -Date: Wed, 23 Mar 2022 20:14:04 +0800 -Subject: [PATCH] Fixes #1354 - -Fixes #1354. It is to fix the compiling issue for gcc12.0.1. -[-Werror=address] [-Werror=dangling-pointer=][-Werror=alloc-size-larger-than=] - -Signed-off-by: Wang, Pingli - -Upstream-Status: Backport -Signed-off-by: Anuj Mittal ---- - .../agnostic/common/os/mos_utilities.h | 4 +-- - .../codec/hal/codechal_encoder_base.cpp | 2 +- - .../common/codec/ddi/media_ddi_decode_vp8.cpp | 25 ++++++++----------- - .../agnostic/common/os/mos_utilities_next.h | 4 +-- - 4 files changed, 16 insertions(+), 19 deletions(-) - -diff --git a/media_common/agnostic/common/os/mos_utilities.h b/media_common/agnostic/common/os/mos_utilities.h -index 7c395816f..d41a3a065 100644 ---- a/media_common/agnostic/common/os/mos_utilities.h -+++ b/media_common/agnostic/common/os/mos_utilities.h -@@ -181,10 +181,10 @@ _Ty* MOS_NewUtil(_Types&&... _Args) - template - _Ty *MOS_NewArrayUtil(const char *functionName, - const char *filename, -- int32_t line, int32_t numElements) -+ int32_t line, size_t numElements) - #else - template --_Ty* MOS_NewArrayUtil(int32_t numElements) -+_Ty* MOS_NewArrayUtil(size_t numElements) - #endif - { - #if MOS_MESSAGES_ENABLED -diff --git a/media_driver/agnostic/common/codec/hal/codechal_encoder_base.cpp b/media_driver/agnostic/common/codec/hal/codechal_encoder_base.cpp -index 4bf869c60..e9b3575fd 100644 ---- a/media_driver/agnostic/common/codec/hal/codechal_encoder_base.cpp -+++ b/media_driver/agnostic/common/codec/hal/codechal_encoder_base.cpp -@@ -3891,6 +3891,7 @@ MOS_STATUS CodechalEncoderState::ReadCounterValue(uint16_t index, EncodeStatusRe - CODECHAL_ENCODE_FUNCTION_ENTER; - CODECHAL_ENCODE_CHK_NULL_RETURN(encodeStatusReport); - uint64_t *address2Counter = nullptr; -+ uint32_t ctr[4] = { 0 }; - - if (m_hwInterface->GetCpInterface()->IsHwCounterIncrement(m_osInterface)) - { -@@ -3923,7 +3924,6 @@ MOS_STATUS CodechalEncoderState::ReadCounterValue(uint16_t index, EncodeStatusRe - else - { - //Report driver generated counter which was submitted to HW by command -- uint32_t ctr[4] = { 0 }; - eStatus = m_hwInterface->GetCpInterface()->GetCounterValue(ctr); - if (MOS_STATUS_SUCCESS == eStatus) - { -diff --git a/media_driver/linux/common/codec/ddi/media_ddi_decode_vp8.cpp b/media_driver/linux/common/codec/ddi/media_ddi_decode_vp8.cpp -index 72891d584..fac4c415d 100644 ---- a/media_driver/linux/common/codec/ddi/media_ddi_decode_vp8.cpp -+++ b/media_driver/linux/common/codec/ddi/media_ddi_decode_vp8.cpp -@@ -235,20 +235,17 @@ VAStatus DdiDecodeVP8::ParsePicParams( - codecPicParams->ucUvModeProbs[0] = picParam->uv_mode_probs[0]; - codecPicParams->ucUvModeProbs[1] = picParam->uv_mode_probs[1]; - codecPicParams->ucUvModeProbs[2] = picParam->uv_mode_probs[2]; -- if (codecPicParams->ucMvUpdateProb[0] && picParam->mv_probs[0]) -- { -- MOS_SecureMemcpy(codecPicParams->ucMvUpdateProb[0], -- sizeof(codecPicParams->ucMvUpdateProb[0]), -- picParam->mv_probs[0], -- sizeof(codecPicParams->ucMvUpdateProb[0])); -- } -- if (codecPicParams->ucMvUpdateProb[1] && picParam->mv_probs[1]) -- { -- MOS_SecureMemcpy(codecPicParams->ucMvUpdateProb[1], -- sizeof(codecPicParams->ucMvUpdateProb[1]), -- picParam->mv_probs[1], -- sizeof(codecPicParams->ucMvUpdateProb[1])); -- } -+ -+ MOS_SecureMemcpy(codecPicParams->ucMvUpdateProb[0], -+ sizeof(codecPicParams->ucMvUpdateProb[0]), -+ picParam->mv_probs[0], -+ sizeof(codecPicParams->ucMvUpdateProb[0])); -+ -+ MOS_SecureMemcpy(codecPicParams->ucMvUpdateProb[1], -+ sizeof(codecPicParams->ucMvUpdateProb[1]), -+ picParam->mv_probs[1], -+ sizeof(codecPicParams->ucMvUpdateProb[1])); -+ - codecPicParams->ucP0EntropyCount = (8 - picParam->bool_coder_ctx.count) & 0x7; //hardware needs used bits not remaining bits in bool decoder - codecPicParams->ucP0EntropyValue = picParam->bool_coder_ctx.value; - codecPicParams->uiP0EntropyRange = picParam->bool_coder_ctx.range; -diff --git a/media_softlet/agnostic/common/os/mos_utilities_next.h b/media_softlet/agnostic/common/os/mos_utilities_next.h -index 509f2de3d..b6069bbc8 100644 ---- a/media_softlet/agnostic/common/os/mos_utilities_next.h -+++ b/media_softlet/agnostic/common/os/mos_utilities_next.h -@@ -90,10 +90,10 @@ class MosUtilities - template - static _Ty *MosNewArrayUtil(const char *functionName, - const char *filename, -- int32_t line, int32_t numElements) -+ int32_t line, size_t numElements) - #else - template -- static _Ty* MosNewArrayUtil(int32_t numElements) -+ static _Ty* MosNewArrayUtil(size_t numElements) - #endif - { - #if (_DEBUG || _RELEASE_INTERNAL) diff --git a/recipes-multimedia/libva/intel-media-driver_22.3.1.bb b/recipes-multimedia/libva/intel-media-driver_22.4.4.bb similarity index 92% rename from recipes-multimedia/libva/intel-media-driver_22.3.1.bb rename to recipes-multimedia/libva/intel-media-driver_22.4.4.bb index 4e64c1b6..22fd4d06 100644 --- a/recipes-multimedia/libva/intel-media-driver_22.3.1.bb +++ b/recipes-multimedia/libva/intel-media-driver_22.4.4.bb @@ -19,10 +19,10 @@ REQUIRED_DISTRO_FEATURES = "opengl" DEPENDS += "libva gmmlib" SRC_URI = "git://github.com/intel/media-driver.git;protocol=https;nobranch=1 \ - file://c8457540aed1ab9424661087276fb788c0e3aabb.patch \ + file://0001-Fix-uClibc-build.patch \ " -SRCREV = "6547f46584633a7619440b39b34908e13c8c857d" +SRCREV = "9ca43202d5ff3d1bf22f1b7ff1fe3bd2980b90dc" S = "${WORKDIR}/git" COMPATIBLE_HOST:x86-x32 = "null"