Message ID | 20220331193726.289559-3-nicolas.dufresne@collabora.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [v2,01/23] media: doc: Document dual use of H.264 pic_num/frame_num | expand |
On Thu, Mar 31, 2022 at 03:37:04PM -0400, Nicolas Dufresne wrote: > If the timestamp of the src buffer differs from the timestamp of a held > dst buffer, the held buffer is implicitly removed and marked as done. > Add a trace to help debugging if someone hits that case. > > Signed-off-by: Nicolas Dufresne <nicolas.dufresne@collabora.com> > Reviewed-by: Sebastian Fricke <sebastian.fricke@collabora.com> > --- > drivers/media/v4l2-core/v4l2-mem2mem.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/drivers/media/v4l2-core/v4l2-mem2mem.c b/drivers/media/v4l2-core/v4l2-mem2mem.c > index 675e22895ebe..fbcd79763e8f 100644 > --- a/drivers/media/v4l2-core/v4l2-mem2mem.c > +++ b/drivers/media/v4l2-core/v4l2-mem2mem.c > @@ -336,6 +336,7 @@ static void __v4l2_m2m_try_queue(struct v4l2_m2m_dev *m2m_dev, > if (src && dst && dst->is_held && > dst->vb2_buf.copied_timestamp && > dst->vb2_buf.timestamp != src->vb2_buf.timestamp) { > + dprintk("src and dst timestamp mismatch, removing held capture buffer.\n"); Nitpick: I would try to make this log consistent with the other logs, avoid refering to "src" and "dst" and start with a capital letter. How about "Timestamp mismatch, returning held capture buffer". Either way, thanks for improving this. Reviewed-by: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar> > dst->is_held = false; > v4l2_m2m_dst_buf_remove(m2m_ctx); > v4l2_m2m_buf_done(dst, VB2_BUF_STATE_DONE); > -- > 2.34.1 >
diff --git a/drivers/media/v4l2-core/v4l2-mem2mem.c b/drivers/media/v4l2-core/v4l2-mem2mem.c index 675e22895ebe..fbcd79763e8f 100644 --- a/drivers/media/v4l2-core/v4l2-mem2mem.c +++ b/drivers/media/v4l2-core/v4l2-mem2mem.c @@ -336,6 +336,7 @@ static void __v4l2_m2m_try_queue(struct v4l2_m2m_dev *m2m_dev, if (src && dst && dst->is_held && dst->vb2_buf.copied_timestamp && dst->vb2_buf.timestamp != src->vb2_buf.timestamp) { + dprintk("src and dst timestamp mismatch, removing held capture buffer.\n"); dst->is_held = false; v4l2_m2m_dst_buf_remove(m2m_ctx); v4l2_m2m_buf_done(dst, VB2_BUF_STATE_DONE);