Re: [PATCH 5.15 228/917] media: videobuf2: rework vb2_mem_ops API

From: Greg Kroah-Hartman
Date: Tue Nov 16 2021 - 09:10:26 EST


On Tue, Nov 16, 2021 at 10:22:36AM +0900, Sergey Senozhatsky wrote:
> On (21/11/15 17:55), Greg Kroah-Hartman wrote:
> > From: Sergey Senozhatsky <senozhatsky@xxxxxxxxxxxx>
> >
> > [ Upstream commit a4b83deb3e76fb9385ca58e2c072a145b3a320d6 ]
> >
> > With the new DMA API we need an extension of the videobuf2 API.
> > Previously, videobuf2 core would set the non-coherent DMA bit
> > in the vb2_queue dma_attr field (if user-space would pass a
> > corresponding memory hint); the vb2 core then would pass the
> > vb2_queue dma_attrs to the vb2 allocators. The vb2 allocator
> > would use the queue's dma_attr and the DMA API would allocate
> > either coherent or non-coherent memory.
> >
> > But we cannot do this anymore, since there is no corresponding DMA
> > attr flag and, hence, there is no way for the allocator to become
> > aware of what type of allocation user-space has requested. So we
> > need to pass more context from videobuf2 core to the allocators.
> >
> > Fix this by changing the call_ptr_memop() macro to pass the
> > vb2 pointer to the corresponding op callbacks.
> >
> > Signed-off-by: Sergey Senozhatsky <senozhatsky@xxxxxxxxxxxx>
> > Signed-off-by: Hans Verkuil <hverkuil-cisco@xxxxxxxxx>
> > Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@xxxxxxxxxx>
> > Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>
>
> Hello Greg, Sasha,
>
> This patch needs two fix up patches to be applied.
>
> The first one is in Linus's tree (media: videobuf2: always set buffer vb2 pointer)
> 67f85135c57c8ea20b5417b28ae65e53dc2ec2c3

Now applied, thanks.

> The second one isn't yet (media: videobuf2-dma-sg: Fix buf->vb NULL pointer dereference)
> https://lore.kernel.org/all/20211101145355.533704-1-hdegoede@xxxxxxxxxx/raw

I've grabbed this from linux-next now.

thanks,

greg k-h