On Sun, Nov 13, 2022 at 07:35:20PM +0300, Dmitry Osipenko wrote:
On 11/13/22 18:05, Lukasz Wiecaszek wrote:
+static int vmap_udmabuf(struct dma_buf *buf, struct iosys_map *map) +{
- struct udmabuf *ubuf = buf->priv;
- if (!ubuf->vaddr) {
ubuf->vaddr = vm_map_ram(ubuf->pages, ubuf->pagecount, -1);
if (!ubuf->vaddr)
return -EINVAL;
- }
Create a new mapping on each vmap_udmabuf() and add the corresponding vunmap.
Otherwise persistent vmapping shall be released together with udmabuf. It doesn't look that persistent vmapping is needed for udmabufs.
-- Best regards, Dmitry
Right. Thanks for review and remarks. Adding vunmap sounds reasonable to me. Will add it somehow this week.
Regards, Lukasz