From: Sunil Khatri Date: Tue, 3 Mar 2026 16:55:57 +0000 (+0530) Subject: drm/amdgpu/userq: remove queue from doorbell xarray X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f0e46fd06c3f7590b0f06aea3c877f441c2cbccc;p=thirdparty%2Flinux.git drm/amdgpu/userq: remove queue from doorbell xarray In case of failure in xa_alloc, remove the queue during clean up from the userq_doorbell_xa. Signed-off-by: Sunil Khatri Reviewed-by: Christian König Signed-off-by: Alex Deucher --- diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_userq.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_userq.c index 7c450350847d6..2716811756d2c 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_userq.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_userq.c @@ -865,6 +865,7 @@ amdgpu_userq_create(struct drm_file *filp, union drm_amdgpu_userq *args) if (r) { drm_file_err(uq_mgr->file, "Failed to allocate a queue id\n"); amdgpu_userq_fence_driver_free(queue); + xa_erase_irq(&adev->userq_doorbell_xa, index); uq_funcs->mqd_destroy(queue); kfree(queue); r = -ENOMEM;