| From 473509cef08a20c66e6dea33934eb69f727baf51 Mon Sep 17 00:00:00 2001 |
| From: LeyuYao <leyu.yao@intel.com> |
| Date: Tue, 7 Mar 2023 18:31:41 +0800 |
| Subject: [PATCH 1/3] [Encode] Fix surface lock segment fault |
| |
| Fix vp9 regression when trying to lock a NV12 surface, add protection for transform from tileY to tileLinear |
| --- |
| media_softlet/agnostic/common/os/mos_utilities_next.cpp | 8 ++++---- |
| 1 file changed, 4 insertions(+), 4 deletions(-) |
| |
| diff --git a/media_softlet/agnostic/common/os/mos_utilities_next.cpp b/media_softlet/agnostic/common/os/mos_utilities_next.cpp |
| index 00592006533d..d72225af9882 100644 |
| --- a/media_softlet/agnostic/common/os/mos_utilities_next.cpp |
| +++ b/media_softlet/agnostic/common/os/mos_utilities_next.cpp |
| @@ -998,8 +998,8 @@ void MosUtilities::MosSwizzleData( |
| SrcTiling, |
| false, |
| extFlags); |
| - |
| - *(pDst + LinearOffset) = *(pSrc + TileOffset); |
| + if(TileOffset < iHeight * iPitch) |
| + *(pDst + LinearOffset) = *(pSrc + TileOffset); |
| } |
| // linear --> x or y |
| else if (IS_LINEAR_TO_TILED(SrcTiling, DstTiling)) |
| @@ -1011,8 +1011,8 @@ void MosUtilities::MosSwizzleData( |
| DstTiling, |
| false, |
| extFlags); |
| - |
| - *(pDst + TileOffset) = *(pSrc + LinearOffset); |
| + if(TileOffset < iHeight * iPitch) |
| + *(pDst + TileOffset) = *(pSrc + LinearOffset); |
| } |
| else |
| { |
| -- |
| 2.7.4 |
| |