On Wed Feb 26 15:52:51 2025 +0530, Aakarsh Jain wrote:
> There is a possibility of getting page fault if the overall
> buffer size is not aligned to 256bytes. Since MFC does read
> operation only and it won't corrupt the data values even if
> it reads the extra bytes.
> Corrected luma and chroma plane sizes for V4L2_PIX_FMT_NV12M
> and V4L2_PIX_FMT_NV21M pixel format.
> 
> Suggested-by: Hans Verkuil <hverk...@xs4all.nl>
> Signed-off-by: Aakarsh Jain <aakarsh.j...@samsung.com>
> Reviewed-by: Nicolas Dufresne <nicolas.dufre...@collabora.com>
> Acked-by: Marek Szyprowski <m.szyprow...@samsung.com>
> Signed-off-by: Hans Verkuil <hverk...@xs4all.nl>

Patch committed.

Thanks,
Hans Verkuil

 drivers/media/platform/samsung/s5p-mfc/s5p_mfc_opr_v6.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

---

diff --git a/drivers/media/platform/samsung/s5p-mfc/s5p_mfc_opr_v6.c 
b/drivers/media/platform/samsung/s5p-mfc/s5p_mfc_opr_v6.c
index 73f7af674c01..0c636090d723 100644
--- a/drivers/media/platform/samsung/s5p-mfc/s5p_mfc_opr_v6.c
+++ b/drivers/media/platform/samsung/s5p-mfc/s5p_mfc_opr_v6.c
@@ -549,8 +549,9 @@ static void s5p_mfc_enc_calc_src_size_v6(struct s5p_mfc_ctx 
*ctx)
                case V4L2_PIX_FMT_NV21M:
                        ctx->stride[0] = ALIGN(ctx->img_width, 
S5P_FIMV_NV12M_HALIGN_V6);
                        ctx->stride[1] = ALIGN(ctx->img_width, 
S5P_FIMV_NV12M_HALIGN_V6);
-                       ctx->luma_size = ctx->stride[0] * 
ALIGN(ctx->img_height, 16);
-                       ctx->chroma_size =  ctx->stride[0] * 
ALIGN(ctx->img_height / 2, 16);
+                       ctx->luma_size = ALIGN(ctx->stride[0] * 
ALIGN(ctx->img_height, 16), 256);
+                       ctx->chroma_size = ALIGN(ctx->stride[0] * 
ALIGN(ctx->img_height / 2, 16),
+                                       256);
                        break;
                case V4L2_PIX_FMT_YUV420M:
                case V4L2_PIX_FMT_YVU420M:

Reply via email to