Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 940e83f3 authored by Yunke Cao's avatar Yunke Cao Committed by Greg Kroah-Hartman
Browse files

media: videobuf2-core: clear memory related fields in __vb2_plane_dmabuf_put()



[ Upstream commit 6a9c97ab6b7e85697e0b74e86062192a5ffffd99 ]

Clear vb2_plane's memory related fields in __vb2_plane_dmabuf_put(),
including bytesused, length, fd and data_offset.

Remove the duplicated code in __prepare_dmabuf().

Signed-off-by: default avatarYunke Cao <yunkec@chromium.org>
Acked-by: default avatarTomasz Figa <tfiga@chromium.org>
Signed-off-by: default avatarHans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: default avatarSasha Levin <sashal@kernel.org>
parent 8e019d91
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -281,6 +281,10 @@ static void __vb2_plane_dmabuf_put(struct vb2_buffer *vb, struct vb2_plane *p)
	p->mem_priv = NULL;
	p->dbuf = NULL;
	p->dbuf_mapped = 0;
	p->bytesused = 0;
	p->length = 0;
	p->m.fd = 0;
	p->data_offset = 0;
}

/*
@@ -1169,10 +1173,6 @@ static int __prepare_dmabuf(struct vb2_buffer *vb, const void *pb)

		/* Release previously acquired memory if present */
		__vb2_plane_dmabuf_put(vb, &vb->planes[plane]);
		vb->planes[plane].bytesused = 0;
		vb->planes[plane].length = 0;
		vb->planes[plane].m.fd = 0;
		vb->planes[plane].data_offset = 0;

		/* Acquire each plane's memory */
		mem_priv = call_ptr_memop(vb, attach_dmabuf,