diff options
author | ming_qian <ming.qian@nxp.com> | 2018-11-28 10:37:24 +0800 |
---|---|---|
committer | Bryan O'Donoghue <bryan.odonoghue@linaro.org> | 2019-05-01 17:43:25 +0100 |
commit | 1bb190375c88297a078e49d4cafa1751f2decf00 (patch) | |
tree | 3764a80db2b6085a1f69575dde85624086bd6b8f | |
parent | 666f176541445656a7dd3fd0b7cce067351a527f (diff) |
MLK-20478:VPU Encoder:drop invalid frame
Signed-off-by: ming_qian <ming.qian@nxp.com>
-rw-r--r-- | drivers/mxc/vpu-encoder-b0/vpu_encoder_b0.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/mxc/vpu-encoder-b0/vpu_encoder_b0.c b/drivers/mxc/vpu-encoder-b0/vpu_encoder_b0.c index 83e92b7e694e..3697818e0eaf 100644 --- a/drivers/mxc/vpu-encoder-b0/vpu_encoder_b0.c +++ b/drivers/mxc/vpu-encoder-b0/vpu_encoder_b0.c @@ -2114,6 +2114,7 @@ static int precheck_frame(struct vpu_ctx *ctx, struct vpu_frame_info *frame) vpu_err("[%d][%d]'s frame is invalid, want %d but %d, drop\n", ctx->core_dev->id, ctx->str_index, frame->bytesleft, length); + add_rptr(frame, length); return -EINVAL; } @@ -2234,6 +2235,7 @@ static bool process_frame_done(struct queue_data *queue) frame->rptr = get_ptr(stream_buffer_desc->rptr); if (precheck_frame(ctx, frame)) { + stream_buffer_desc->rptr = frame->rptr; put_frame_idle(frame); frame = NULL; return true; |