[PATCH 3/3] drm/amdgpu: Fix dmesg warning from xarray

Christian König christian.koenig at amd.com
Wed Nov 20 10:36:58 UTC 2024


Am 20.11.24 um 10:26 schrieb Arunpravin Paneer Selvam:
> Fix the warning issue generated at lib/xarray.c:1849.
>
> v2: keep the error handling same as before when the
>      xalloc() call fails to store the fence_drv ref.
>
> Signed-off-by: Arunpravin Paneer Selvam <Arunpravin.PaneerSelvam at amd.com>
> ---
>   drivers/gpu/drm/amd/amdgpu/amdgpu_userq_fence.c | 6 ++++--
>   1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_userq_fence.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_userq_fence.c
> index 76f7babd7a54..bfe7d1d139d1 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_userq_fence.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_userq_fence.c
> @@ -842,8 +842,10 @@ int amdgpu_userq_wait_ioctl(struct drm_device *dev, void *data,
>   			 * have any more space left and crash.
>   			 */
>   			if (fence_drv->fence_drv_xa_ptr) {
> -				r = xa_alloc(fence_drv->fence_drv_xa_ptr, &index, fence_drv,
> -					     xa_limit_32b, GFP_KERNEL);
> +				xa_lock(fence_drv->fence_drv_xa_ptr);
> +				r = __xa_alloc(fence_drv->fence_drv_xa_ptr, &index, fence_drv,
> +					       xa_limit_32b, GFP_KERNEL);
> +				xa_unlock(fence_drv->fence_drv_xa_ptr);

Why should that fix anything? That code looks identical, just with 
explicit locking.

Regards,
Christian.

>   				if (r)
>   					goto free_fences;
>   



More information about the amd-gfx mailing list