mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-06 19:08:57 +09:00
di: fix mirror buffer recycle error cause crash
PD#160504: di: fix keep buffer pointer error 1) fix keep buffer pointer error for seek case Change-Id: I9ad34b86f6cc3c9a5cd5840571346bf180e45c39 Signed-off-by: kele bai <kele.bai@amlogic.com>
This commit is contained in:
@@ -1844,8 +1844,10 @@ static void di_cma_release(struct di_dev_s *devp)
|
||||
pr_err("DI CMA release buf[%d] fail.\n", i);
|
||||
}
|
||||
} else {
|
||||
pr_err("DI buf[%d] page:0x%p no release.\n",
|
||||
buf_p->index, buf_p->pages);
|
||||
if (!IS_ERR_OR_NULL(buf_p->pages)) {
|
||||
pr_err("DI buf[%d] page:0x%p no release.\n",
|
||||
buf_p->index, buf_p->pages);
|
||||
}
|
||||
}
|
||||
}
|
||||
if (post_wr_en && post_wr_support) {
|
||||
@@ -1978,7 +1980,7 @@ static int di_init_buf(int width, int height, unsigned char prog_flag)
|
||||
int ii = USED_LOCAL_BUF_MAX;
|
||||
if (!IS_ERR_OR_NULL(keep_buf)) {
|
||||
for (ii = 0; ii < USED_LOCAL_BUF_MAX; ii++) {
|
||||
if (di_buf == di_buf->di_buf_dup_p[ii]) {
|
||||
if (di_buf == keep_buf->di_buf_dup_p[ii]) {
|
||||
di_print("%s skip %d\n", __func__, i);
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -38,7 +38,6 @@
|
||||
#define TRIGGER_PRE_BY_VFRAME_READY 'r'
|
||||
#define TRIGGER_PRE_BY_PROVERDER_UNREG 'n'
|
||||
#define TRIGGER_PRE_BY_DEBUG_DISABLE 'd'
|
||||
#define TRIGGER_PRE_BY_TIMERC 'T'
|
||||
#define TRIGGER_PRE_BY_PROVERDER_REG 'R'
|
||||
|
||||
#define DI_RUN_FLAG_RUN 0
|
||||
|
||||
Reference in New Issue
Block a user