fimc-is: temporary workaround for more strict vb2 buffer state tracking
authorMarek Szyprowski <m.szyprowski@samsung.com>
Fri, 7 Aug 2015 08:42:08 +0000 (10:42 +0200)
committerMarek Szyprowski <m.szyprowski@samsung.com>
Fri, 27 Apr 2018 08:25:07 +0000 (10:25 +0200)
Change-Id: I72897d4cbf6cf0b6bd349fe5f99ebc45b8c461f9
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
drivers/media/platform/exynos/fimc-is/fimc-is-video-isp.c

index 4645a92a43d2acda55aa7a8080ab0bd12d80e7ce..1128f08017b5a564c0e71b6ae4495769e11df6c0 100644 (file)
@@ -934,6 +934,11 @@ static void fimc_is_isp_buffer_finish(struct vb2_buffer *vb)
        struct fimc_is_video_ctx *vctx = vb->vb2_queue->drv_priv;
        struct fimc_is_device_ischain *device = vctx->device;
 
+       if (vb->state != VB2_BUF_STATE_DONE && vb->state != VB2_BUF_STATE_ERROR) {
+               merr("unsupported buffer state %d", vctx, vb->state);
+               return;
+       }
+
 #ifdef DBG_STREAMING
        mdbgv_isp("%s(%d)\n", vctx, __func__, vb->v4l2_buf.index);
 #endif