The function dma_fence_free() works fine because struct dma_fence is the first member of sync object.
Use `kfree` make it more reasonable.
Signed-off-by: wangshumin pdsrazor@gmail.com --- drivers/dma-buf/dma-fence-array.c | 2 +- drivers/dma-buf/dma-fence-chain.c | 2 +- drivers/dma-buf/sw_sync.c | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/dma-buf/dma-fence-array.c b/drivers/dma-buf/dma-fence-array.c index cb1bacb5a42b..fc52d837e579 100644 --- a/drivers/dma-buf/dma-fence-array.c +++ b/drivers/dma-buf/dma-fence-array.c @@ -120,7 +120,7 @@ static void dma_fence_array_release(struct dma_fence *fence) dma_fence_put(array->fences[i]);
kfree(array->fences); - dma_fence_free(fence); + kfree(array); }
const struct dma_fence_ops dma_fence_array_ops = { diff --git a/drivers/dma-buf/dma-fence-chain.c b/drivers/dma-buf/dma-fence-chain.c index 06f8ef97c6e8..b29e1f22f08e 100644 --- a/drivers/dma-buf/dma-fence-chain.c +++ b/drivers/dma-buf/dma-fence-chain.c @@ -203,7 +203,7 @@ static void dma_fence_chain_release(struct dma_fence *fence) dma_fence_put(prev);
dma_fence_put(chain->fence); - dma_fence_free(fence); + kfree(chain); }
const struct dma_fence_ops dma_fence_chain_ops = { diff --git a/drivers/dma-buf/sw_sync.c b/drivers/dma-buf/sw_sync.c index 348b3a9170fa..80432eeb58c3 100644 --- a/drivers/dma-buf/sw_sync.c +++ b/drivers/dma-buf/sw_sync.c @@ -142,7 +142,7 @@ static void timeline_fence_release(struct dma_fence *fence) spin_unlock_irqrestore(fence->lock, flags);
sync_timeline_put(parent); - dma_fence_free(fence); + kfree(pt); }
static bool timeline_fence_signaled(struct dma_fence *fence)