The buffer arguments to v4l2_m2m_buf_copy_data args were swapped. The reason is confusing naming conventions in vim2m. It certainly could be improved. Fixes: 7aca565ee3d0 ("media: vim2m: use v4l2_m2m_buf_copy_data") Signed-off-by: Hans Verkuil <hverkuil-cisco@xxxxxxxxx> --- diff --git a/drivers/media/platform/vim2m.c b/drivers/media/platform/vim2m.c index 33397d4a1402..a7a152fb3075 100644 --- a/drivers/media/platform/vim2m.c +++ b/drivers/media/platform/vim2m.c @@ -241,7 +241,7 @@ static int device_process(struct vim2m_ctx *ctx, out_vb->sequence = get_q_data(ctx, V4L2_BUF_TYPE_VIDEO_CAPTURE)->sequence++; in_vb->sequence = q_data->sequence++; - v4l2_m2m_buf_copy_data(out_vb, in_vb, true); + v4l2_m2m_buf_copy_data(in_vb, out_vb, true); switch (ctx->mode) { case MEM2MEM_HFLIP | MEM2MEM_VFLIP: