Use unrcu_pointer() instead of the manual cast.

Signed-off-by: Christian König <christian.koe...@amd.com>
---
 drivers/dma-buf/dma-fence-chain.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/dma-buf/dma-fence-chain.c 
b/drivers/dma-buf/dma-fence-chain.c
index 06f8ef97c6e8..a0d920576ba6 100644
--- a/drivers/dma-buf/dma-fence-chain.c
+++ b/drivers/dma-buf/dma-fence-chain.c
@@ -62,8 +62,8 @@ struct dma_fence *dma_fence_chain_walk(struct dma_fence 
*fence)
                        replacement = NULL;
                }
 
-               tmp = cmpxchg((struct dma_fence __force **)&chain->prev,
-                             prev, replacement);
+               tmp = unrcu_pointer(cmpxchg(&chain->prev, RCU_INITIALIZER(prev),
+                                            RCU_INITIALIZER(replacement)));
                if (tmp == prev)
                        dma_fence_put(tmp);
                else
-- 
2.25.1

Reply via email to