[Intel-gfx] [PATCH 2/3] drm/i915/selftests: Use full release for local ppgtt allocation

Tvrtko Ursulin tvrtko.ursulin at linux.intel.com
Thu Jul 5 09:50:36 UTC 2018


On 05/07/2018 07:56, Chris Wilson wrote:
> We can now use the full release mechanism (i915_ppgtt_put) for our local
> ppgtt allocation in igt_ppgtt_alloc.
> 
> Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
> ---
>   drivers/gpu/drm/i915/selftests/i915_gem_gtt.c | 3 +--
>   1 file changed, 1 insertion(+), 2 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c b/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c
> index 4bfb0537f9be..e108fe4e0fd9 100644
> --- a/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c
> +++ b/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c
> @@ -202,9 +202,8 @@ static int igt_ppgtt_alloc(void *arg)
>   
>   err_ppgtt_cleanup:
>   	mutex_lock(&dev_priv->drm.struct_mutex);
> -	ppgtt->vm.cleanup(&ppgtt->vm);
> +	i915_ppgtt_put(ppgtt);
>   	mutex_unlock(&dev_priv->drm.struct_mutex);
> -	kfree(ppgtt);
>   	return err;
>   }
>   
> 

Hm, it's not obvious why this works, if it does. This ppgtt it creates 
does not call kref_init on ppgtt->ref, or i915_address_space_init. 
Colour me confused.

Regards,

Tvrtko


More information about the Intel-gfx mailing list