Hi Wu, Wu, Xia wrote: > Add dma_buf_put() to decrease refcount of the dmabuf in error path if DMABUF size is smaller than the requirement. > > Signed-off-by: wu xia <xia.wu@xxxxxxxxx> > --- > drivers/media/v4l2-core/videobuf2-core.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/drivers/media/v4l2-core/videobuf2-core.c b/drivers/media/v4l2-core/videobuf2-core.c > index 33bdd81..1f232e7 100644 > --- a/drivers/media/v4l2-core/videobuf2-core.c > +++ b/drivers/media/v4l2-core/videobuf2-core.c > @@ -1084,6 +1084,7 @@ static int __qbuf_dmabuf(struct vb2_buffer *vb, const void *pb) > if (planes[plane].length < q->plane_sizes[plane]) { > dprintk(1, "invalid dmabuf length for plane %d\n", > plane); > + dma_buf_put(dbuf); > ret = -EINVAL; > goto err; > } Acked-by: Sakari Ailus <sakari.ailus@xxxxxxxxxxxxxxx> Looks like the bug has been also in the original implementation, and the code has been in a bit of flux since, yet the bug has remained... I think it'd be nice to have this in stable kernels. Mauro, Hans, what do you think? -- Kind regards, Sakari Ailus sakari.ailus@xxxxxxxxxxxxxxx -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html