[Intel-gfx] [PATCH] drm/i915: Mark i915.inject_load_failure as being hit

Michal Wajdeczko michal.wajdeczko at intel.com
Wed Jun 6 13:25:34 UTC 2018


On Wed, 06 Jun 2018 15:09:37 +0200, Chris Wilson  
<chris at chris-wilson.co.uk> wrote:

> When we reach the magic value and do inject a fault into our module load,
> mark the module option as being hit. Since we fail from inside pci
> probe, the module load isn't actually aborted and the module (and
> paramters) are left lingering. igt can then inspect the parameter on its

typo

> synchronous completion of modprobe to see if the fault injection was
> successful, and will keeping on injecting new faults until the module
> succeeds in loading having surpassed the number of fault points.
>
> Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
> Cc: MichaƂ Winiarski <michal.winiarski at intel.com>
> Cc: Imre Deak <imre.deak at intel.com>
> ---
>  drivers/gpu/drm/i915/i915_drv.c    | 1 +
>  drivers/gpu/drm/i915/i915_params.h | 2 +-
>  2 files changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/i915/i915_drv.c  
> b/drivers/gpu/drm/i915/i915_drv.c
> index 6b599b1837dc..71b7302e6f8c 100644
> --- a/drivers/gpu/drm/i915/i915_drv.c
> +++ b/drivers/gpu/drm/i915/i915_drv.c
> @@ -67,6 +67,7 @@ bool __i915_inject_load_failure(const char *func, int  
> line)
>  	if (++i915_load_fail_count == i915_modparams.inject_load_failure) {
>  		DRM_INFO("Injecting failure at checkpoint %u [%s:%d]\n",
>  			 i915_modparams.inject_load_failure, func, line);
> +		i915_modparams.inject_load_failure = -1;

maybe we can just reset inject_load_failure to 0 then we can
avoid changing modparam type and/or use -1 for other purposes,
like proposed in [1]

Michal

[1] https://patchwork.freedesktop.org/patch/201798/

>  		return true;
>  	}
> diff --git a/drivers/gpu/drm/i915/i915_params.h  
> b/drivers/gpu/drm/i915/i915_params.h
> index aebe0469ddaa..3b115975745a 100644
> --- a/drivers/gpu/drm/i915/i915_params.h
> +++ b/drivers/gpu/drm/i915/i915_params.h
> @@ -55,7 +55,7 @@ struct drm_printer;
>  	param(int, mmio_debug, 0) \
>  	param(int, edp_vswing, 0) \
>  	param(int, reset, 2) \
> -	param(unsigned int, inject_load_failure, 0) \
> +	param(int, inject_load_failure, 0) \
>  	/* leave bools at the end to not create holes */ \
>  	param(bool, alpha_support, IS_ENABLED(CONFIG_DRM_I915_ALPHA_SUPPORT)) \
>  	param(bool, enable_hangcheck, true) \


More information about the Intel-gfx mailing list