Message ID | 20250317131923.238374-4-tzimmermann@suse.de (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | drm: Do not use import_attach in drivers | expand |
Hi Thomas, Am Montag, dem 17.03.2025 um 14:06 +0100 schrieb Thomas Zimmermann: > Avoid dereferencing struct drm_gem_object.import_attach for the > imported dma-buf. The dma_buf field in the GEM object instance refers > to the same buffer. Prepares to make import_attach optional. > Both etnaviv patches are Reviewed-by: Lucas Stach <l.stach@pengutronix.de> Feel free to take them through drm-misc if you want to put further cleanups on top of that series. Regards, Lucas > Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de> > Cc: Lucas Stach <l.stach@pengutronix.de> > Cc: Russell King <linux+etnaviv@armlinux.org.uk> > Cc: Christian Gmeiner <christian.gmeiner@gmail.com> > Cc: etnaviv@lists.freedesktop.org > --- > drivers/gpu/drm/etnaviv/etnaviv_gem_prime.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/gpu/drm/etnaviv/etnaviv_gem_prime.c b/drivers/gpu/drm/etnaviv/etnaviv_gem_prime.c > index 40a50c60dfff..917ad527c961 100644 > --- a/drivers/gpu/drm/etnaviv/etnaviv_gem_prime.c > +++ b/drivers/gpu/drm/etnaviv/etnaviv_gem_prime.c > @@ -65,7 +65,7 @@ static void etnaviv_gem_prime_release(struct etnaviv_gem_object *etnaviv_obj) > struct iosys_map map = IOSYS_MAP_INIT_VADDR(etnaviv_obj->vaddr); > > if (etnaviv_obj->vaddr) > - dma_buf_vunmap_unlocked(etnaviv_obj->base.import_attach->dmabuf, &map); > + dma_buf_vunmap_unlocked(etnaviv_obj->base.dma_buf, &map); > > /* Don't drop the pages for imported dmabuf, as they are not > * ours, just free the array we allocated: > @@ -82,7 +82,7 @@ static void *etnaviv_gem_prime_vmap_impl(struct etnaviv_gem_object *etnaviv_obj) > > lockdep_assert_held(&etnaviv_obj->lock); > > - ret = dma_buf_vmap(etnaviv_obj->base.import_attach->dmabuf, &map); > + ret = dma_buf_vmap(etnaviv_obj->base.dma_buf, &map); > if (ret) > return NULL; > return map.vaddr;
diff --git a/drivers/gpu/drm/etnaviv/etnaviv_gem_prime.c b/drivers/gpu/drm/etnaviv/etnaviv_gem_prime.c index 40a50c60dfff..917ad527c961 100644 --- a/drivers/gpu/drm/etnaviv/etnaviv_gem_prime.c +++ b/drivers/gpu/drm/etnaviv/etnaviv_gem_prime.c @@ -65,7 +65,7 @@ static void etnaviv_gem_prime_release(struct etnaviv_gem_object *etnaviv_obj) struct iosys_map map = IOSYS_MAP_INIT_VADDR(etnaviv_obj->vaddr); if (etnaviv_obj->vaddr) - dma_buf_vunmap_unlocked(etnaviv_obj->base.import_attach->dmabuf, &map); + dma_buf_vunmap_unlocked(etnaviv_obj->base.dma_buf, &map); /* Don't drop the pages for imported dmabuf, as they are not * ours, just free the array we allocated: @@ -82,7 +82,7 @@ static void *etnaviv_gem_prime_vmap_impl(struct etnaviv_gem_object *etnaviv_obj) lockdep_assert_held(&etnaviv_obj->lock); - ret = dma_buf_vmap(etnaviv_obj->base.import_attach->dmabuf, &map); + ret = dma_buf_vmap(etnaviv_obj->base.dma_buf, &map); if (ret) return NULL; return map.vaddr;
Avoid dereferencing struct drm_gem_object.import_attach for the imported dma-buf. The dma_buf field in the GEM object instance refers to the same buffer. Prepares to make import_attach optional. Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de> Cc: Lucas Stach <l.stach@pengutronix.de> Cc: Russell King <linux+etnaviv@armlinux.org.uk> Cc: Christian Gmeiner <christian.gmeiner@gmail.com> Cc: etnaviv@lists.freedesktop.org --- drivers/gpu/drm/etnaviv/etnaviv_gem_prime.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)