summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAnuj Mittal <anuj.mittal@intel.com>2022-04-18 10:00:38 +0800
committerAnuj Mittal <anuj.mittal@intel.com>2022-04-20 10:01:31 +0800
commit6b82568ac37b8ff0b9f018a9e7a8044f9e61fe35 (patch)
tree7e22e4ff9786834b22286d87127a3d0a1c10b7ed
parent9b54de056d65140c819209bfec14de18a1fb144d (diff)
downloadmeta-intel-6b82568ac37b8ff0b9f018a9e7a8044f9e61fe35.tar.gz
intel-media-driver: fix build with gcc12
Backport a patch to fix: | error: the address of '_CODEC_VP8_PIC_PARAMS::ucMvUpdateProb' will | never be NULL [-Werror=address] | 238 | if (codecPicParams->ucMvUpdateProb[0] && picParam->mv_probs[0]) Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
-rw-r--r--recipes-multimedia/libva/files/c8457540aed1ab9424661087276fb788c0e3aabb.patch109
-rw-r--r--recipes-multimedia/libva/intel-media-driver_22.1.1.bb1
2 files changed, 110 insertions, 0 deletions
diff --git a/recipes-multimedia/libva/files/c8457540aed1ab9424661087276fb788c0e3aabb.patch b/recipes-multimedia/libva/files/c8457540aed1ab9424661087276fb788c0e3aabb.patch
new file mode 100644
index 00000000..046778b2
--- /dev/null
+++ b/recipes-multimedia/libva/files/c8457540aed1ab9424661087276fb788c0e3aabb.patch
@@ -0,0 +1,109 @@
1From c8457540aed1ab9424661087276fb788c0e3aabb Mon Sep 17 00:00:00 2001
2From: "Wang, Pingli" <pingli.wang@intel.com>
3Date: Wed, 23 Mar 2022 20:14:04 +0800
4Subject: [PATCH] Fixes #1354
5
6Fixes #1354. It is to fix the compiling issue for gcc12.0.1.
7[-Werror=address] [-Werror=dangling-pointer=][-Werror=alloc-size-larger-than=]
8
9Signed-off-by: Wang, Pingli <pingli.wang@intel.com>
10
11Upstream-Status: Backport
12Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
13---
14 .../agnostic/common/os/mos_utilities.h | 4 +--
15 .../codec/hal/codechal_encoder_base.cpp | 2 +-
16 .../common/codec/ddi/media_ddi_decode_vp8.cpp | 25 ++++++++-----------
17 .../agnostic/common/os/mos_utilities_next.h | 4 +--
18 4 files changed, 16 insertions(+), 19 deletions(-)
19
20diff --git a/media_common/agnostic/common/os/mos_utilities.h b/media_common/agnostic/common/os/mos_utilities.h
21index 7c395816f..d41a3a065 100644
22--- a/media_common/agnostic/common/os/mos_utilities.h
23+++ b/media_common/agnostic/common/os/mos_utilities.h
24@@ -181,10 +181,10 @@ _Ty* MOS_NewUtil(_Types&&... _Args)
25 template<class _Ty, class... _Types>
26 _Ty *MOS_NewArrayUtil(const char *functionName,
27 const char *filename,
28- int32_t line, int32_t numElements)
29+ int32_t line, size_t numElements)
30 #else
31 template<class _Ty, class... _Types>
32-_Ty* MOS_NewArrayUtil(int32_t numElements)
33+_Ty* MOS_NewArrayUtil(size_t numElements)
34 #endif
35 {
36 #if MOS_MESSAGES_ENABLED
37diff --git a/media_driver/agnostic/common/codec/hal/codechal_encoder_base.cpp b/media_driver/agnostic/common/codec/hal/codechal_encoder_base.cpp
38index 4bf869c60..e9b3575fd 100644
39--- a/media_driver/agnostic/common/codec/hal/codechal_encoder_base.cpp
40+++ b/media_driver/agnostic/common/codec/hal/codechal_encoder_base.cpp
41@@ -3891,6 +3891,7 @@ MOS_STATUS CodechalEncoderState::ReadCounterValue(uint16_t index, EncodeStatusRe
42 CODECHAL_ENCODE_FUNCTION_ENTER;
43 CODECHAL_ENCODE_CHK_NULL_RETURN(encodeStatusReport);
44 uint64_t *address2Counter = nullptr;
45+ uint32_t ctr[4] = { 0 };
46
47 if (m_hwInterface->GetCpInterface()->IsHwCounterIncrement(m_osInterface))
48 {
49@@ -3923,7 +3924,6 @@ MOS_STATUS CodechalEncoderState::ReadCounterValue(uint16_t index, EncodeStatusRe
50 else
51 {
52 //Report driver generated counter which was submitted to HW by command
53- uint32_t ctr[4] = { 0 };
54 eStatus = m_hwInterface->GetCpInterface()->GetCounterValue(ctr);
55 if (MOS_STATUS_SUCCESS == eStatus)
56 {
57diff --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
58index 72891d584..fac4c415d 100644
59--- a/media_driver/linux/common/codec/ddi/media_ddi_decode_vp8.cpp
60+++ b/media_driver/linux/common/codec/ddi/media_ddi_decode_vp8.cpp
61@@ -235,20 +235,17 @@ VAStatus DdiDecodeVP8::ParsePicParams(
62 codecPicParams->ucUvModeProbs[0] = picParam->uv_mode_probs[0];
63 codecPicParams->ucUvModeProbs[1] = picParam->uv_mode_probs[1];
64 codecPicParams->ucUvModeProbs[2] = picParam->uv_mode_probs[2];
65- if (codecPicParams->ucMvUpdateProb[0] && picParam->mv_probs[0])
66- {
67- MOS_SecureMemcpy(codecPicParams->ucMvUpdateProb[0],
68- sizeof(codecPicParams->ucMvUpdateProb[0]),
69- picParam->mv_probs[0],
70- sizeof(codecPicParams->ucMvUpdateProb[0]));
71- }
72- if (codecPicParams->ucMvUpdateProb[1] && picParam->mv_probs[1])
73- {
74- MOS_SecureMemcpy(codecPicParams->ucMvUpdateProb[1],
75- sizeof(codecPicParams->ucMvUpdateProb[1]),
76- picParam->mv_probs[1],
77- sizeof(codecPicParams->ucMvUpdateProb[1]));
78- }
79+
80+ MOS_SecureMemcpy(codecPicParams->ucMvUpdateProb[0],
81+ sizeof(codecPicParams->ucMvUpdateProb[0]),
82+ picParam->mv_probs[0],
83+ sizeof(codecPicParams->ucMvUpdateProb[0]));
84+
85+ MOS_SecureMemcpy(codecPicParams->ucMvUpdateProb[1],
86+ sizeof(codecPicParams->ucMvUpdateProb[1]),
87+ picParam->mv_probs[1],
88+ sizeof(codecPicParams->ucMvUpdateProb[1]));
89+
90 codecPicParams->ucP0EntropyCount = (8 - picParam->bool_coder_ctx.count) & 0x7; //hardware needs used bits not remaining bits in bool decoder
91 codecPicParams->ucP0EntropyValue = picParam->bool_coder_ctx.value;
92 codecPicParams->uiP0EntropyRange = picParam->bool_coder_ctx.range;
93diff --git a/media_softlet/agnostic/common/os/mos_utilities_next.h b/media_softlet/agnostic/common/os/mos_utilities_next.h
94index 509f2de3d..b6069bbc8 100644
95--- a/media_softlet/agnostic/common/os/mos_utilities_next.h
96+++ b/media_softlet/agnostic/common/os/mos_utilities_next.h
97@@ -90,10 +90,10 @@ class MosUtilities
98 template<class _Ty, class... _Types>
99 static _Ty *MosNewArrayUtil(const char *functionName,
100 const char *filename,
101- int32_t line, int32_t numElements)
102+ int32_t line, size_t numElements)
103 #else
104 template<class _Ty, class... _Types>
105- static _Ty* MosNewArrayUtil(int32_t numElements)
106+ static _Ty* MosNewArrayUtil(size_t numElements)
107 #endif
108 {
109 #if (_DEBUG || _RELEASE_INTERNAL)
diff --git a/recipes-multimedia/libva/intel-media-driver_22.1.1.bb b/recipes-multimedia/libva/intel-media-driver_22.1.1.bb
index eb1f0284..3613bb1b 100644
--- a/recipes-multimedia/libva/intel-media-driver_22.1.1.bb
+++ b/recipes-multimedia/libva/intel-media-driver_22.1.1.bb
@@ -21,6 +21,7 @@ DEPENDS += "libva gmmlib"
21SRC_URI = "git://github.com/intel/media-driver.git;protocol=https;nobranch=1 \ 21SRC_URI = "git://github.com/intel/media-driver.git;protocol=https;nobranch=1 \
22 file://0001-upstream-ADLN.patch \ 22 file://0001-upstream-ADLN.patch \
23 file://0002-Add-support-for-ADL-N-Enable-the-cmake-options.patch \ 23 file://0002-Add-support-for-ADL-N-Enable-the-cmake-options.patch \
24 file://c8457540aed1ab9424661087276fb788c0e3aabb.patch \
24 " 25 "
25 26
26SRCREV = "31c1b995f49ef118a4b02f0b8e45bccdacf0d15e" 27SRCREV = "31c1b995f49ef118a4b02f0b8e45bccdacf0d15e"