Am Mittwoch, dem 28.10.2026 um 11:31 +0100 schrieb Philipp Stanner: > The dma_fence->ops->release() callback is deprecated because it prevents > drivers from unloading. All etnaviv does in its implementation is invoke > a kfree_rcu() on the fence. > > The fence backend by now also frees fences with kfree_rcu() if > ops->release() is not implemented. > > Remove the deprecated callback. > > Signed-off-by: Philipp Stanner <[email protected]>
Reviewed-by: Lucas Stach <[email protected]> Please take this through drm-misc or whatever tree is convenient. Regards, Lucas > --- > Just compile-tested. > --- > drivers/gpu/drm/etnaviv/etnaviv_gpu.c | 8 -------- > 1 file changed, 8 deletions(-) > > diff --git a/drivers/gpu/drm/etnaviv/etnaviv_gpu.c > b/drivers/gpu/drm/etnaviv/etnaviv_gpu.c > index e51a310c8d70..e75dab5e407d 100644 > --- a/drivers/gpu/drm/etnaviv/etnaviv_gpu.c > +++ b/drivers/gpu/drm/etnaviv/etnaviv_gpu.c > @@ -1176,18 +1176,10 @@ static bool etnaviv_fence_signaled(struct dma_fence > *fence) > return (s32)(f->gpu->completed_fence - f->base.seqno) >= 0; > } > > -static void etnaviv_fence_release(struct dma_fence *fence) > -{ > - struct etnaviv_fence *f = to_etnaviv_fence(fence); > - > - kfree_rcu(f, base.rcu); > -} > - > static const struct dma_fence_ops etnaviv_fence_ops = { > .get_driver_name = etnaviv_fence_get_driver_name, > .get_timeline_name = etnaviv_fence_get_timeline_name, > .signaled = etnaviv_fence_signaled, > - .release = etnaviv_fence_release, > }; > > static struct dma_fence *etnaviv_gpu_fence_alloc(struct etnaviv_gpu *gpu)
