[Intel-gfx] [PATCH] drm/i915: Redefine EINVAL for debugging

Joonas Lahtinen joonas.lahtinen at linux.intel.com
Thu Jun 21 08:53:20 UTC 2018


Quoting Chris Wilson (2018-06-21 11:01:50)
> To aide debugging spurious EINVALs, include a debug message every time
> we emit one from execbuf.
> 
> References: https://bugs.freedesktop.org/show_bug.cgi?id=106744
> Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
> Cc: Joonas Lahtinen <joonas.lahtinen at linux.intel.com>

That's special kind of evil. But should do the job.

Reviewed-by: Joonas Lahtinen <joonas.lahtinen at linux.intel.com>

You might be able to get away from hardcoding the 22 with first
calling the macro __EINVAL and then doing some trickery.

Regards, Joonas

> ---
>  drivers/gpu/drm/i915/i915_gem_execbuffer.c | 9 +++++++++
>  1 file changed, 9 insertions(+)
> 
> diff --git a/drivers/gpu/drm/i915/i915_gem_execbuffer.c b/drivers/gpu/drm/i915/i915_gem_execbuffer.c
> index 437441f4af41..c2dd9b4cdace 100644
> --- a/drivers/gpu/drm/i915/i915_gem_execbuffer.c
> +++ b/drivers/gpu/drm/i915/i915_gem_execbuffer.c
> @@ -66,6 +66,15 @@ enum {
>  #define __I915_EXEC_ILLEGAL_FLAGS \
>         (__I915_EXEC_UNKNOWN_FLAGS | I915_EXEC_CONSTANTS_MASK)
>  
> +/* Catch emission of unexpected errors for CI! */
> +#if IS_ENABLED(CONFIG_DRM_I915_DEBUG_GEM)
> +#undef EINVAL
> +#define EINVAL ({ \
> +       DRM_DEBUG_DRIVER("EINVAL at %s:%d\n", __func__, __LINE__); \
> +       22; \
> +})
> +#endif
> +
>  /**
>   * DOC: User command execution
>   *
> -- 
> 2.18.0.rc2
> 


More information about the Intel-gfx mailing list