61 lines
1.9 KiB
Diff
61 lines
1.9 KiB
Diff
From 3a4a2ec0b8ce17ae5129ea415939a18bc1504e24 Mon Sep 17 00:00:00 2001
|
||
From: miaohong chen <miaohong.chen@amlogic.com>
|
||
Date: Tue, 4 Aug 2026 16:39:34 +0800
|
||
Subject: [PATCH] v4ldec: CB2 Log flooding caused by UVM attachment [1/1]
|
||
MIME-Version: 1.0
|
||
Content-Type: text/plain; charset=UTF-8
|
||
Content-Transfer-Encoding: 8bit
|
||
|
||
PD#SWPL-282824
|
||
|
||
Problem:
|
||
Failed to attach UVM buffer.
|
||
|
||
Solution:
|
||
Non‑UVM buffers do not need to be attached to UVM.
|
||
|
||
Verify:
|
||
a9
|
||
|
||
Change-Id: Idb0332d90ec398c02d48d8f0b33e7c8abc516a22
|
||
Signed-off-by: miaohong chen <miaohong.chen@amlogic.com>
|
||
---
|
||
drivers/amvdec_ports/aml_vcodec_dec.c | 7 +++++--
|
||
1 file changed, 5 insertions(+), 2 deletions(-)
|
||
|
||
diff --git a/drivers/amvdec_ports/aml_vcodec_dec.c b/drivers/amvdec_ports/aml_vcodec_dec.c
|
||
index 0aca995a3..f461ce81a 100644
|
||
--- a/drivers/amvdec_ports/aml_vcodec_dec.c
|
||
+++ b/drivers/amvdec_ports/aml_vcodec_dec.c
|
||
@@ -1213,6 +1213,9 @@ static void aml_uvm_mark_status(struct aml_vcodec_ctx *ctx, struct dma_buf *dma)
|
||
struct uvm_hook_mod_info u_info = {0};
|
||
int ret = 0;
|
||
|
||
+ if (IS_ERR_OR_NULL(dma) || !dmabuf_is_uvm(dma))
|
||
+ return;
|
||
+
|
||
if (uvm_get_hook_mod(dma, PROCESS_SRC_DECODER)) {
|
||
uvm_put_hook_mod(dma, PROCESS_SRC_DECODER);
|
||
v4l_dbg(ctx, V4L_DEBUG_CODEC_EXINFO,
|
||
@@ -1224,7 +1227,7 @@ static void aml_uvm_mark_status(struct aml_vcodec_ctx *ctx, struct dma_buf *dma)
|
||
u_info.free = aml_uvm_free_callback;
|
||
ret = uvm_attach_hook_mod(dma, &u_info);
|
||
if (ret < 0) {
|
||
- v4l_dbg(ctx, V4L_DEBUG_CODEC_ERROR,
|
||
+ v4l_dbg(ctx, V4L_DEBUG_CODEC_EXINFO,
|
||
"fail to set dmabuf decoder hook\n");
|
||
}
|
||
|
||
@@ -1239,7 +1242,7 @@ static void aml_uvm_unmark_status(struct aml_vcodec_ctx *ctx, struct dma_buf *dm
|
||
v4l_dbg(ctx, V4L_DEBUG_CODEC_EXINFO,
|
||
"%s dbuf:%px\n", __func__ , dma);
|
||
|
||
- if (!dmabuf_is_uvm(dma)) {
|
||
+ if (IS_ERR_OR_NULL(dma) || !dmabuf_is_uvm(dma)) {
|
||
v4l_dbg(ctx, V4L_DEBUG_CODEC_EXINFO,
|
||
"%s not uvm dmabuf!\n", __func__);
|
||
return;
|
||
--
|
||
2.43.2
|
||
|