[Intel-gfx] [PATCH] drm/i915/gt: Use the correct error value when kernel_context() fails

Andrzej Hajda andrzej.hajda at intel.com
Thu Jun 1 12:44:25 UTC 2023


On 26.05.2023 14:41, Andi Shyti wrote:
> kernel_context() returns an error pointer. Use pointer-error
> conversion functions to evaluate its return value, rather than
> checking for a '0' return.
> 
> Fixes: eb5c10cbbc2f ("drm/i915: Remove I915_USER_PRIORITY_SHIFT")
> Reported-by: Dan Carpenter <dan.carpenter at linaro.org>
> Signed-off-by: Andi Shyti <andi.shyti at linux.intel.com>
> Cc: Chris Wilson < chris at chris-wilson.co.uk>
> Cc: <stable at vger.kernel.org> # v5.13+

Reviewed-by: Andrzej Hajda <andrzej.hajda at intel.com>

Regards
Andrzej

> ---
>   drivers/gpu/drm/i915/gt/selftest_execlists.c | 12 ++++++++----
>   1 file changed, 8 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/gt/selftest_execlists.c b/drivers/gpu/drm/i915/gt/selftest_execlists.c
> index 736b89a8ecf54..4202df5b8c122 100644
> --- a/drivers/gpu/drm/i915/gt/selftest_execlists.c
> +++ b/drivers/gpu/drm/i915/gt/selftest_execlists.c
> @@ -1530,8 +1530,8 @@ static int live_busywait_preempt(void *arg)
>   	struct drm_i915_gem_object *obj;
>   	struct i915_vma *vma;
>   	enum intel_engine_id id;
> -	int err = -ENOMEM;
>   	u32 *map;
> +	int err;
>   
>   	/*
>   	 * Verify that even without HAS_LOGICAL_RING_PREEMPTION, we can
> @@ -1539,13 +1539,17 @@ static int live_busywait_preempt(void *arg)
>   	 */
>   
>   	ctx_hi = kernel_context(gt->i915, NULL);
> -	if (!ctx_hi)
> -		return -ENOMEM;
> +	if (IS_ERR(ctx_hi))
> +		return PTR_ERR(ctx_hi);
> +
>   	ctx_hi->sched.priority = I915_CONTEXT_MAX_USER_PRIORITY;
>   
>   	ctx_lo = kernel_context(gt->i915, NULL);
> -	if (!ctx_lo)
> +	if (IS_ERR(ctx_lo)) {
> +		err = PTR_ERR(ctx_lo);
>   		goto err_ctx_hi;
> +	}
> +
>   	ctx_lo->sched.priority = I915_CONTEXT_MIN_USER_PRIORITY;
>   
>   	obj = i915_gem_object_create_internal(gt->i915, PAGE_SIZE);



More information about the dri-devel mailing list