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 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