From: Philipp Stanner Date: Mon, 1 Dec 2025 10:50:07 +0000 (+0100) Subject: amd/amdkfd: Use dma_fence_check_and_signal() X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=06bc18e0def7d926265480faa555bf0b67a35a90;p=thirdparty%2Fkernel%2Flinux.git amd/amdkfd: Use dma_fence_check_and_signal() amdkfd is one of the few users which relies on the return code of dma_fence_signal(), which, so far, informs the caller whether the fence had already been signaled. As there are barely any users, dma_fence signaling functions shall get the return value void. To do so, the few users must be ported to a function which preserves the old behavior. Replace the call to dma_fence_signal() with one to dma_fence_check_and_signal(). Suggested-by: Christian König Reviewed-by: Christian König Reviewed-by: Felix Kuehling Signed-off-by: Philipp Stanner Link: https://patch.msgid.link/20251201105011.19386-5-phasta@kernel.org --- diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_process.c b/drivers/gpu/drm/amd/amdkfd/kfd_process.c index a085faac9fe1a..bb252ec437330 100644 --- a/drivers/gpu/drm/amd/amdkfd/kfd_process.c +++ b/drivers/gpu/drm/amd/amdkfd/kfd_process.c @@ -1987,10 +1987,10 @@ kfd_process_gpuid_from_node(struct kfd_process *p, struct kfd_node *node, return -EINVAL; } -static int signal_eviction_fence(struct kfd_process *p) +static bool signal_eviction_fence(struct kfd_process *p) { struct dma_fence *ef; - int ret; + bool ret; rcu_read_lock(); ef = dma_fence_get_rcu_safe(&p->ef); @@ -1998,7 +1998,7 @@ static int signal_eviction_fence(struct kfd_process *p) if (!ef) return -EINVAL; - ret = dma_fence_signal(ef); + ret = dma_fence_check_and_signal(ef); dma_fence_put(ef); return ret;