[Intel-gfx] [PATCH v2] drm/i915: Tune down init error message due to failure injection

Chris Wilson chris at chris-wilson.co.uk
Thu Mar 17 15:55:39 UTC 2016


On Thu, Mar 17, 2016 at 05:46:11PM +0200, Imre Deak wrote:
> Atm, in case failure injection forces an error the subsequent
> "*ERROR* failed to init modeset" error message will make automated
> tests (CI) report this event as a breakage even though the event is
> expected. To fix this print the error message with debug log level
> in this case.
> 
> While at it print the error message for any init failure for
> consistency.
> 
> v2:
> - Include the problematic error message in the commit log, add a
>   request to file an fdo bug to the message (Chris)

And the new one! Helps when cross-referencing a message in dmesg.
> 
> CC: Chris Wilson <chris at chris-wilson.co.uk>
> Signed-off-by: Imre Deak <imre.deak at intel.com>
> ---
>  drivers/gpu/drm/i915/i915_dma.c | 14 +++++++++++---
>  1 file changed, 11 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
> index 68592b0..b4ece9e 100644
> --- a/drivers/gpu/drm/i915/i915_dma.c
> +++ b/drivers/gpu/drm/i915/i915_dma.c
> @@ -66,6 +66,14 @@ bool __i915_inject_load_failure(const char *func, int line)
>  	return false;
>  }
>  
> +#define i915_load_error(fmt, ...) do {					\
> +	if (i915.inject_load_failure &&					\
> +	    i915_load_fail_count == i915.inject_load_failure)		\
> +		DRM_DEBUG_DRIVER(fmt, ##__VA_ARGS__);			\
> +	else								\
> +		DRM_ERROR(fmt, ##__VA_ARGS__);				\
> +} while(0)
> +
>  static int i915_getparam(struct drm_device *dev, void *data,
>  			 struct drm_file *file_priv)
>  {
> @@ -1332,10 +1340,8 @@ int i915_driver_load(struct drm_device *dev, unsigned long flags)
>  	}
>  
>  	ret = i915_load_modeset_init(dev);
> -	if (ret < 0) {
> -		DRM_ERROR("failed to init modeset\n");
> +	if (ret < 0)
>  		goto out_cleanup_vblank;
> -	}
>  
>  	i915_driver_register(dev_priv);
>  
> @@ -1357,6 +1363,8 @@ out_runtime_pm_put:
>  out_free_priv:
>  	kfree(dev_priv);
>  
> +	i915_load_error("Device initialization failed (%d), please file a bug at https://bugs.freedesktop.org providing the dmesg log by booting with drm.debug=0xf\n", ret);

80cols rules still apply to messages :)

"Device initialization failed (%d). "
"Please file a bug at https://bugs.freedesktop.org/enter_bug.cgi "
"against DRI/DRM/Intel providing the dmesg log by booting "
"with drm.debug=0xf\n",

I would personally make i915_load_error() a proper function and add the
"Please..." output there at a lower logging level than ERROR.
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre


More information about the Intel-gfx mailing list