meta-intel/recipes-multimedia/libva/files/8aa866dc650e6b0e0b7425bafc7b1039232c377a.patch
Lim Siew Hoon f77e45d588 intel-media-driver: upgrade 23.4.3 -> 24.1.5
Drops list of patches already merged:
 - 0004-Add-device-ID-for-ARL.patch
 - 0005-Add-XR24-support-to-DMABuf.patch
 - 0006-add-INTEL-MEDIA-ALLOC-refineE-to-specify-the-memory-.patch
 - 0007-Skip-report-keys.patch
 - 0008-Limit-INTEL-MEDIA-ALLOC-MODE-to-MTL-and-ARL-only.patch
 - 0009-Skip-cache-bucket-realloc-for-default-mode-0.patch
 - 0010-Fix-failed-4k-video-wall-test-case-and-color-corrupt.patch
 - 0011-Disable-422H-format-output.patch
 - 0012-Decode-Fix-AVC-decode-SFC-4K-hang-issue.patch

Backport a patch to fix build errors:

| error: comparing the result of pointer addition ‘(avcDirectmodeParams._MHW_VDBOX_AVC_DIRECTMODE_PARAMS::presAvcDmvBuffers + ((((sizetype)n) + 1) * 328))’ and NULL [-Werror=address]
| 592 | if (&avcDirectmodeParams.presAvcDmvBuffers[n+1] != nullptr)
| | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~

Signed-off-by: Lim Siew Hoon <siew.hoon.lim@intel.com>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
2024-05-07 18:23:24 +08:00

155 lines
7.1 KiB
Diff

From 8aa866dc650e6b0e0b7425bafc7b1039232c377a Mon Sep 17 00:00:00 2001
From: "Xu, Zhengguo" <zhengguo.xu@intel.com>
Date: Tue, 16 Apr 2024 09:53:41 +0800
Subject: [PATCH] [Decode] Correct condition check when dump avc mv buffer
Fixes: #1791
Signed-off-by: Xu, Zhengguo <zhengguo.xu@intel.com>
Upstream-Status: Backport [https://github.com/intel/media-driver/commit/8aa866dc650e6b0e0b7425bafc7b1039232c377a]
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
---
.../common/codec/hal/codechal_decode_avc.cpp | 33 ++++++++-----------
.../decode_avc_picture_xe_m_base_packet.cpp | 28 +++++++---------
.../avc/packet/decode_avc_picture_packet.cpp | 30 +++++++----------
3 files changed, 37 insertions(+), 54 deletions(-)
diff --git a/media_driver/agnostic/common/codec/hal/codechal_decode_avc.cpp b/media_driver/agnostic/common/codec/hal/codechal_decode_avc.cpp
index 3adf6994ce..4bac426802 100644
--- a/media_driver/agnostic/common/codec/hal/codechal_decode_avc.cpp
+++ b/media_driver/agnostic/common/codec/hal/codechal_decode_avc.cpp
@@ -1619,28 +1619,23 @@ MOS_STATUS CodechalDecodeAvc::InitPicMhwParams(
uint8_t picID = picMhwParams->AvcDirectmodeParams.bPicIdRemappingInUse ? i : refList[idx]->ucFrameId;
uint8_t mvIdx = refList[idx]->ucDMVIdx[0];
- if (&picMhwParams->AvcDirectmodeParams.presAvcDmvBuffers[i] != nullptr)
- {
- // dump Reference mvdata
- std::string mvBufDumpName = "_DEC_Ref_MV_" + std::to_string(i);
- CODECHAL_DECODE_CHK_STATUS_RETURN(m_debugInterface->DumpBuffer(
- &picMhwParams->AvcDirectmodeParams.presAvcDmvBuffers[mvIdx],
- CodechalDbgAttr::attrMvData,
- mvBufDumpName.c_str(),
- m_avcDmvBufferSize));
- }
+ // dump Reference mvdata
+ std::string mvBufDumpName = "_DEC_Ref_MV_" + std::to_string(i);
+ CODECHAL_DECODE_CHK_STATUS_RETURN(m_debugInterface->DumpBuffer(
+ &picMhwParams->AvcDirectmodeParams.presAvcDmvBuffers[mvIdx],
+ CodechalDbgAttr::attrMvData,
+ mvBufDumpName.c_str(),
+ m_avcDmvBufferSize));
}
}
- if (&picMhwParams->AvcDirectmodeParams.presAvcDmvBuffers[picMhwParams->AvcDirectmodeParams.ucAvcDmvIdx])
- {
- // dump Current mvdata
- CODECHAL_DECODE_CHK_STATUS_RETURN(m_debugInterface->DumpBuffer(
- &picMhwParams->AvcDirectmodeParams.presAvcDmvBuffers[picMhwParams->AvcDirectmodeParams.ucAvcDmvIdx],
- CodechalDbgAttr::attrMvData,
- "DEC_Cur_MV_",
- m_avcDmvBufferSize));
- });
+ // dump Current mvdata
+ CODECHAL_DECODE_CHK_STATUS_RETURN(m_debugInterface->DumpBuffer(
+ &picMhwParams->AvcDirectmodeParams.presAvcDmvBuffers[picMhwParams->AvcDirectmodeParams.ucAvcDmvIdx],
+ CodechalDbgAttr::attrMvData,
+ "DEC_Cur_MV_",
+ m_avcDmvBufferSize));
+ );
return eStatus;
}
diff --git a/media_driver/media_softlet/agnostic/Xe_M/Xe_M_base/codec/hal/dec/avc/packet/decode_avc_picture_xe_m_base_packet.cpp b/media_driver/media_softlet/agnostic/Xe_M/Xe_M_base/codec/hal/dec/avc/packet/decode_avc_picture_xe_m_base_packet.cpp
index bd0611f6fa..035a7e6149 100644
--- a/media_driver/media_softlet/agnostic/Xe_M/Xe_M_base/codec/hal/dec/avc/packet/decode_avc_picture_xe_m_base_packet.cpp
+++ b/media_driver/media_softlet/agnostic/Xe_M/Xe_M_base/codec/hal/dec/avc/packet/decode_avc_picture_xe_m_base_packet.cpp
@@ -589,26 +589,20 @@ namespace decode{
{
if (m_avcBasicFeature->m_refFrames.m_avcPicIdx[n].bValid)
{
- if (&avcDirectmodeParams.presAvcDmvBuffers[n+1] != nullptr)
- {
- std::string mvBufDumpName = "_DEC_Ref_MV_" + std::to_string(n);
- DECODE_CHK_STATUS(debugInterface->DumpBuffer(
- &avcDirectmodeParams.presAvcDmvBuffers[n+1],
- CodechalDbgAttr::attrMvData,
- mvBufDumpName.c_str(),
- mvBufferSize));
- }
+ std::string mvBufDumpName = "_DEC_Ref_MV_" + std::to_string(n);
+ DECODE_CHK_STATUS(debugInterface->DumpBuffer(
+ &avcDirectmodeParams.presAvcDmvBuffers[n+1],
+ CodechalDbgAttr::attrMvData,
+ mvBufDumpName.c_str(),
+ mvBufferSize));
}
}
- if (&avcDirectmodeParams.presAvcDmvBuffers[0] != nullptr)
- {
- DECODE_CHK_STATUS(debugInterface->DumpBuffer(
- &avcDirectmodeParams.presAvcDmvBuffers[0],
- CodechalDbgAttr::attrMvData,
- "DEC_Cur_MV_",
- mvBufferSize));
- }
+ DECODE_CHK_STATUS(debugInterface->DumpBuffer(
+ &avcDirectmodeParams.presAvcDmvBuffers[0],
+ CodechalDbgAttr::attrMvData,
+ "DEC_Cur_MV_",
+ mvBufferSize));
return MOS_STATUS_SUCCESS;
}
diff --git a/media_softlet/agnostic/common/codec/hal/dec/avc/packet/decode_avc_picture_packet.cpp b/media_softlet/agnostic/common/codec/hal/dec/avc/packet/decode_avc_picture_packet.cpp
index 88ed0bb832..8cdc05e585 100644
--- a/media_softlet/agnostic/common/codec/hal/dec/avc/packet/decode_avc_picture_packet.cpp
+++ b/media_softlet/agnostic/common/codec/hal/dec/avc/packet/decode_avc_picture_packet.cpp
@@ -646,26 +646,20 @@ MOS_STATUS AvcDecodePicPkt::DumpResources(uint32_t mvBufferSize) const
CodechalDbgAttr::attrDecodeReferenceSurfaces,
refSurfName.c_str()));
- if (&mvParam.presAvcDmvBuffers[n+1] != nullptr)
- {
- std::string mvBufDumpName = "_DEC_Ref_MV_" + std::to_string(n);
- DECODE_CHK_STATUS(debugInterface->DumpBuffer(
- &mvParam.presAvcDmvBuffers[n+1],
- CodechalDbgAttr::attrMvData,
- mvBufDumpName.c_str(),
- mvBufferSize));
- }
+ std::string mvBufDumpName = "_DEC_Ref_MV_" + std::to_string(n);
+ DECODE_CHK_STATUS(debugInterface->DumpBuffer(
+ &mvParam.presAvcDmvBuffers[n+1],
+ CodechalDbgAttr::attrMvData,
+ mvBufDumpName.c_str(),
+ mvBufferSize));
}
}
- if (&mvParam.presAvcDmvBuffers[0] != nullptr)
- {
- DECODE_CHK_STATUS(debugInterface->DumpBuffer(
- &mvParam.presAvcDmvBuffers[0],
- CodechalDbgAttr::attrMvData,
- "DEC_Cur_MV_",
- mvBufferSize));
- }
+ DECODE_CHK_STATUS(debugInterface->DumpBuffer(
+ &mvParam.presAvcDmvBuffers[0],
+ CodechalDbgAttr::attrMvData,
+ "DEC_Cur_MV_",
+ mvBufferSize));
return MOS_STATUS_SUCCESS;
}
@@ -699,4 +693,4 @@ MOS_STATUS AvcDecodePicPkt::SetSurfaceMmcState() const
return MOS_STATUS_SUCCESS;
}
-} // namespace decode
\ No newline at end of file
+} // namespace decode