The dma_fence_ops function ops->release() has been deprecated because it
prevents drivers from unloading. f_fs's implementation merely frees the
fence. The dma_fence backend performs this deallocation automatically in
the correct manner if ops->release() is not implemented.

The backend simultaneously correctly frees struct ffs_dma_fence since
struct dma_fence is its base class.

Remove ops->release().

Signed-off-by: Philipp Stanner <[email protected]>
---
 drivers/usb/gadget/function/f_fs.c | 9 ---------
 1 file changed, 9 deletions(-)

diff --git a/drivers/usb/gadget/function/f_fs.c 
b/drivers/usb/gadget/function/f_fs.c
index c64a268e98a4..e8672b37e890 100644
--- a/drivers/usb/gadget/function/f_fs.c
+++ b/drivers/usb/gadget/function/f_fs.c
@@ -1479,18 +1479,9 @@ static const char *ffs_dmabuf_get_timeline_name(struct 
dma_fence *fence)
        return "";
 }
 
-static void ffs_dmabuf_fence_release(struct dma_fence *fence)
-{
-       struct ffs_dma_fence *dma_fence =
-               container_of(fence, struct ffs_dma_fence, base);
-
-       kfree(dma_fence);
-}
-
 static const struct dma_fence_ops ffs_dmabuf_fence_ops = {
        .get_driver_name        = ffs_dmabuf_get_driver_name,
        .get_timeline_name      = ffs_dmabuf_get_timeline_name,
-       .release                = ffs_dmabuf_fence_release,
 };
 
 static int ffs_dma_resv_lock(struct dma_buf *dmabuf, bool nonblock)
-- 
2.56.0

Reply via email to