[PATCH 2/4] drm/amdgpu: Optimization of critical section
Christian König
deathsimple at vodafone.de
Mon Jun 12 22:47:14 UTC 2017
Am 12.06.2017 um 22:31 schrieb Alex Xie:
> Make the critical section smaller. There is no
> need to protect the bo_list, because there is
> no other task can access the newly created BO
> list yet.
NAK, a task can guess the next id number so could get the kernel to use
the structure before it is initialized.
Christian.
>
> Signed-off-by: Alex Xie <AlexBin.Xie at amd.com>
> ---
> drivers/gpu/drm/amd/amdgpu/amdgpu_bo_list.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_bo_list.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_bo_list.c
> index 02c138f..c994a04 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_bo_list.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_bo_list.c
> @@ -48,8 +48,9 @@ static int amdgpu_bo_list_create(struct amdgpu_fpriv *fpriv,
> mutex_lock(&fpriv->bo_list_lock);
> r = idr_alloc(&fpriv->bo_list_handles, *result,
> 1, 0, GFP_KERNEL);
> + mutex_unlock(&fpriv->bo_list_lock);
> +
> if (r < 0) {
> - mutex_unlock(&fpriv->bo_list_lock);
> kfree(*result);
> return r;
> }
> @@ -60,7 +61,6 @@ static int amdgpu_bo_list_create(struct amdgpu_fpriv *fpriv,
> (*result)->array = NULL;
>
> mutex_lock(&(*result)->lock);
> - mutex_unlock(&fpriv->bo_list_lock);
>
> return 0;
> }
More information about the amd-gfx
mailing list