All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] drm/i915: Mark i915.inject_load_failure as being hit
@ 2018-06-06 13:09 Chris Wilson
  2018-06-06 13:25 ` Michal Wajdeczko
                   ` (7 more replies)
  0 siblings, 8 replies; 19+ messages in thread
From: Chris Wilson @ 2018-06-06 13:09 UTC (permalink / raw)
  To: intel-gfx

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
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@chris-wilson.co.uk>
Cc: Michał Winiarski <michal.winiarski@intel.com>
Cc: Imre Deak <imre.deak@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;
 		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) \
-- 
2.17.1

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply related	[flat|nested] 19+ messages in thread

* Re: [PATCH] drm/i915: Mark i915.inject_load_failure as being hit
  2018-06-06 13:09 [PATCH] drm/i915: Mark i915.inject_load_failure as being hit Chris Wilson
@ 2018-06-06 13:25 ` Michal Wajdeczko
  2018-06-06 13:33   ` Chris Wilson
  2018-06-06 13:57 ` ✗ Fi.CI.CHECKPATCH: warning for " Patchwork
                   ` (6 subsequent siblings)
  7 siblings, 1 reply; 19+ messages in thread
From: Michal Wajdeczko @ 2018-06-06 13:25 UTC (permalink / raw)
  To: intel-gfx, Chris Wilson

On Wed, 06 Jun 2018 15:09:37 +0200, Chris Wilson  
<chris@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@chris-wilson.co.uk>
> Cc: Michał Winiarski <michal.winiarski@intel.com>
> Cc: Imre Deak <imre.deak@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) \
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH] drm/i915: Mark i915.inject_load_failure as being hit
  2018-06-06 13:25 ` Michal Wajdeczko
@ 2018-06-06 13:33   ` Chris Wilson
  2018-06-06 14:19     ` Chris Wilson
  0 siblings, 1 reply; 19+ messages in thread
From: Chris Wilson @ 2018-06-06 13:33 UTC (permalink / raw)
  To: Michal Wajdeczko, intel-gfx

Quoting Michal Wajdeczko (2018-06-06 14:25:34)
> On Wed, 06 Jun 2018 15:09:37 +0200, Chris Wilson  
> <chris@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@chris-wilson.co.uk>
> > Cc: Michał Winiarski <michal.winiarski@intel.com>
> > Cc: Imre Deak <imre.deak@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]

0 would be fine for my purpose.
-Chris
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 19+ messages in thread

* ✗ Fi.CI.CHECKPATCH: warning for drm/i915: Mark i915.inject_load_failure as being hit
  2018-06-06 13:09 [PATCH] drm/i915: Mark i915.inject_load_failure as being hit Chris Wilson
  2018-06-06 13:25 ` Michal Wajdeczko
@ 2018-06-06 13:57 ` Patchwork
  2018-06-06 14:12 ` ✗ Fi.CI.BAT: failure " Patchwork
                   ` (5 subsequent siblings)
  7 siblings, 0 replies; 19+ messages in thread
From: Patchwork @ 2018-06-06 13:57 UTC (permalink / raw)
  To: Chris Wilson; +Cc: intel-gfx

== Series Details ==

Series: drm/i915: Mark i915.inject_load_failure as being hit
URL   : https://patchwork.freedesktop.org/series/44354/
State : warning

== Summary ==

$ dim checkpatch origin/drm-tip
a17a013ca1ef drm/i915: Mark i915.inject_load_failure as being hit
-:12: WARNING:TYPO_SPELLING: 'paramters' may be misspelled - perhaps 'parameters'?
#12: 
paramters) are left lingering. igt can then inspect the parameter on its

total: 0 errors, 1 warnings, 0 checks, 15 lines checked

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 19+ messages in thread

* ✗ Fi.CI.BAT: failure for drm/i915: Mark i915.inject_load_failure as being hit
  2018-06-06 13:09 [PATCH] drm/i915: Mark i915.inject_load_failure as being hit Chris Wilson
  2018-06-06 13:25 ` Michal Wajdeczko
  2018-06-06 13:57 ` ✗ Fi.CI.CHECKPATCH: warning for " Patchwork
@ 2018-06-06 14:12 ` Patchwork
  2018-06-06 14:26 ` [PATCH v2] " Chris Wilson
                   ` (4 subsequent siblings)
  7 siblings, 0 replies; 19+ messages in thread
From: Patchwork @ 2018-06-06 14:12 UTC (permalink / raw)
  To: Chris Wilson; +Cc: intel-gfx

== Series Details ==

Series: drm/i915: Mark i915.inject_load_failure as being hit
URL   : https://patchwork.freedesktop.org/series/44354/
State : failure

== Summary ==

= CI Bug Log - changes from CI_DRM_4282 -> Patchwork_9218 =

== Summary - FAILURE ==

  Serious unknown changes coming with Patchwork_9218 absolutely need to be
  verified manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in Patchwork_9218, please notify your bug team to allow them
  to document this new failure mode, which will reduce false positives in CI.

  External URL: https://patchwork.freedesktop.org/api/1.0/series/44354/revisions/1/mbox/

== Possible new issues ==

  Here are the unknown changes that may have been introduced in Patchwork_9218:

  === IGT changes ===

    ==== Possible regressions ====

    igt@drv_module_reload@basic-reload-inject:
      fi-skl-6260u:       PASS -> DMESG-WARN
      fi-snb-2600:        PASS -> DMESG-WARN
      fi-byt-j1900:       PASS -> DMESG-WARN
      fi-kbl-7560u:       PASS -> DMESG-WARN
      fi-kbl-7500u:       PASS -> DMESG-WARN
      fi-ivb-3520m:       PASS -> DMESG-WARN
      fi-hsw-4770:        PASS -> DMESG-WARN
      fi-kbl-guc:         PASS -> DMESG-WARN
      fi-hsw-4200u:       PASS -> DMESG-WARN
      {fi-cfl-u2}:        PASS -> DMESG-WARN
      fi-skl-6770hq:      PASS -> DMESG-WARN
      fi-byt-n2820:       PASS -> DMESG-WARN
      fi-bxt-j4205:       PASS -> DMESG-WARN
      fi-bwr-2160:        PASS -> DMESG-WARN
      fi-kbl-r:           PASS -> DMESG-WARN
      fi-bdw-5557u:       PASS -> DMESG-WARN
      fi-cfl-s3:          PASS -> DMESG-WARN
      fi-snb-2520m:       PASS -> DMESG-WARN
      fi-cfl-8700k:       PASS -> DMESG-WARN
      fi-gdg-551:         PASS -> DMESG-WARN
      fi-skl-6600u:       PASS -> DMESG-WARN
      fi-pnv-d510:        PASS -> DMESG-WARN
      fi-hsw-4770r:       PASS -> DMESG-WARN
      fi-ilk-650:         PASS -> DMESG-WARN
      fi-skl-guc:         PASS -> DMESG-WARN
      fi-bsw-n3050:       PASS -> DMESG-WARN
      fi-cfl-guc:         PASS -> DMESG-WARN
      fi-blb-e6850:       PASS -> DMESG-WARN
      fi-kbl-7567u:       PASS -> DMESG-WARN
      fi-skl-6700k2:      PASS -> DMESG-WARN
      fi-elk-e7500:       PASS -> DMESG-WARN
      fi-glk-j4005:       PASS -> DMESG-WARN
      fi-bxt-dsi:         NOTRUN -> DMESG-WARN
      fi-ivb-3770:        PASS -> DMESG-WARN

    
== Known issues ==

  Here are the changes found in Patchwork_9218 that come from known issues:

  === IGT changes ===

    ==== Issues hit ====

    igt@gem_mmap_gtt@basic-small-bo-tiledx:
      fi-gdg-551:         PASS -> FAIL (fdo#102575)

    igt@kms_chamelium@dp-crc-fast:
      fi-kbl-7500u:       PASS -> DMESG-FAIL (fdo#103841)

    igt@kms_flip@basic-flip-vs-modeset:
      fi-glk-j4005:       PASS -> DMESG-WARN (fdo#106000) +2

    
    ==== Possible fixes ====

    igt@kms_pipe_crc_basic@suspend-read-crc-pipe-c:
      fi-bxt-dsi:         INCOMPLETE (fdo#103927) -> PASS

    
  {name}: This element is suppressed. This means it is ignored when computing
          the status of the difference (SUCCESS, WARNING, or FAILURE).

  fdo#102575 https://bugs.freedesktop.org/show_bug.cgi?id=102575
  fdo#103841 https://bugs.freedesktop.org/show_bug.cgi?id=103841
  fdo#103927 https://bugs.freedesktop.org/show_bug.cgi?id=103927
  fdo#106000 https://bugs.freedesktop.org/show_bug.cgi?id=106000


== Participating hosts (41 -> 36) ==

  Missing    (5): fi-ctg-p8600 fi-byt-squawks fi-ilk-m540 fi-cnl-y3 fi-skl-6700hq 


== Build changes ==

    * Linux: CI_DRM_4282 -> Patchwork_9218

  CI_DRM_4282: c1064b9be065603680d060184da1a93d404dcf0c @ git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4508: 78a68c905066beeefd24b3a4518d817a811e8798 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_9218: a17a013ca1ef09c395ee3218a499913e0701b4e8 @ git://anongit.freedesktop.org/gfx-ci/linux


== Linux commits ==

a17a013ca1ef drm/i915: Mark i915.inject_load_failure as being hit

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_9218/issues.html
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH] drm/i915: Mark i915.inject_load_failure as being hit
  2018-06-06 13:33   ` Chris Wilson
@ 2018-06-06 14:19     ` Chris Wilson
  2018-06-06 14:28       ` Michal Wajdeczko
  0 siblings, 1 reply; 19+ messages in thread
From: Chris Wilson @ 2018-06-06 14:19 UTC (permalink / raw)
  To: Michal Wajdeczko, intel-gfx

Quoting Chris Wilson (2018-06-06 14:33:19)
> Quoting Michal Wajdeczko (2018-06-06 14:25:34)
> > On Wed, 06 Jun 2018 15:09:37 +0200, Chris Wilson  
> > <chris@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@chris-wilson.co.uk>
> > > Cc: Michał Winiarski <michal.winiarski@intel.com>
> > > Cc: Imre Deak <imre.deak@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]
> 
> 0 would be fine for my purpose.

Except i915_error_injected() would suite -1 better. Different plan for
that one then.
-Chris
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 19+ messages in thread

* [PATCH v2] drm/i915: Mark i915.inject_load_failure as being hit
  2018-06-06 13:09 [PATCH] drm/i915: Mark i915.inject_load_failure as being hit Chris Wilson
                   ` (2 preceding siblings ...)
  2018-06-06 14:12 ` ✗ Fi.CI.BAT: failure " Patchwork
@ 2018-06-06 14:26 ` Chris Wilson
  2018-06-07 11:09   ` kbuild test robot
                     ` (2 more replies)
  2018-06-06 14:41 ` [PATCH v3] " Chris Wilson
                   ` (3 subsequent siblings)
  7 siblings, 3 replies; 19+ messages in thread
From: Chris Wilson @ 2018-06-06 14:26 UTC (permalink / raw)
  To: intel-gfx

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
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.

v2: Reset to 0 after being hit;

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Michał Winiarski <michal.winiarski@intel.com>
Cc: Imre Deak <imre.deak@intel.com>
---
 drivers/gpu/drm/i915/i915_drv.c | 19 ++++++-------------
 1 file changed, 6 insertions(+), 13 deletions(-)

diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c
index 6b599b1837dc..f7653e738e46 100644
--- a/drivers/gpu/drm/i915/i915_drv.c
+++ b/drivers/gpu/drm/i915/i915_drv.c
@@ -58,6 +58,7 @@ static struct drm_driver driver;
 
 #if IS_ENABLED(CONFIG_DRM_I915_DEBUG)
 static unsigned int i915_load_fail_count;
+static int i915_load_error_level = KERN_ERR;
 
 bool __i915_inject_load_failure(const char *func, int line)
 {
@@ -67,11 +68,15 @@ 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 = 0;
+		i915_load_error_level = KERN_DEBUG;
 		return true;
 	}
 
 	return false;
 }
+#else
+#define i915_load_error_level KERN_ERR
 #endif
 
 #define FDO_BUG_URL "https://bugs.freedesktop.org/enter_bug.cgi?product=DRI"
@@ -114,20 +119,8 @@ __i915_printk(struct drm_i915_private *dev_priv, const char *level,
 	va_end(args);
 }
 
-static bool i915_error_injected(struct drm_i915_private *dev_priv)
-{
-#if IS_ENABLED(CONFIG_DRM_I915_DEBUG)
-	return i915_modparams.inject_load_failure &&
-	       i915_load_fail_count == i915_modparams.inject_load_failure;
-#else
-	return false;
-#endif
-}
-
 #define i915_load_error(dev_priv, fmt, ...)				     \
-	__i915_printk(dev_priv,						     \
-		      i915_error_injected(dev_priv) ? KERN_DEBUG : KERN_ERR, \
-		      fmt, ##__VA_ARGS__)
+	__i915_printk(dev_priv, i915_load_error_level, fmt, ##__VA_ARGS__)
 
 /* Map PCH device id to PCH type, or PCH_NONE if unknown. */
 static enum intel_pch
-- 
2.17.1

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply related	[flat|nested] 19+ messages in thread

* Re: [PATCH] drm/i915: Mark i915.inject_load_failure as being hit
  2018-06-06 14:19     ` Chris Wilson
@ 2018-06-06 14:28       ` Michal Wajdeczko
  0 siblings, 0 replies; 19+ messages in thread
From: Michal Wajdeczko @ 2018-06-06 14:28 UTC (permalink / raw)
  To: intel-gfx, Chris Wilson

On Wed, 06 Jun 2018 16:19:29 +0200, Chris Wilson  
<chris@chris-wilson.co.uk> wrote:

> Quoting Chris Wilson (2018-06-06 14:33:19)
>> Quoting Michal Wajdeczko (2018-06-06 14:25:34)
>> > On Wed, 06 Jun 2018 15:09:37 +0200, Chris Wilson
>> > <chris@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@chris-wilson.co.uk>
>> > > Cc: Michał Winiarski <michal.winiarski@intel.com>
>> > > Cc: Imre Deak <imre.deak@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]
>>
>> 0 would be fine for my purpose.
>
> Except i915_error_injected() would suite -1 better. Different plan for
> that one then.

but you can easily fix that:

  static bool i915_error_injected(struct drm_i915_private *dev_priv)
  {
  #if IS_ENABLED(CONFIG_DRM_I915_DEBUG)
-       return i915_modparams.inject_load_failure &&
-              i915_load_fail_count == i915_modparams.inject_load_failure;
+       return i915_load_fail_count && !i915_modparams.inject_load_failure;
  #else
         return false;
  #endif
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 19+ messages in thread

* [PATCH v3] drm/i915: Mark i915.inject_load_failure as being hit
  2018-06-06 13:09 [PATCH] drm/i915: Mark i915.inject_load_failure as being hit Chris Wilson
                   ` (3 preceding siblings ...)
  2018-06-06 14:26 ` [PATCH v2] " Chris Wilson
@ 2018-06-06 14:41 ` Chris Wilson
  2018-06-06 14:50   ` Michał Winiarski
  2018-06-06 15:21 ` ✗ Fi.CI.CHECKPATCH: warning for drm/i915: Mark i915.inject_load_failure as being hit (rev3) Patchwork
                   ` (2 subsequent siblings)
  7 siblings, 1 reply; 19+ messages in thread
From: Chris Wilson @ 2018-06-06 14:41 UTC (permalink / raw)
  To: intel-gfx

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
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.

v2: Reset to 0 after being hit;

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Michał Winiarski <michal.winiarski@intel.com>
Cc: Imre Deak <imre.deak@intel.com>
---
 drivers/gpu/drm/i915/i915_drv.c | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c
index 6b599b1837dc..be71fdf8d92e 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 = 0;
 		return true;
 	}
 
@@ -117,16 +118,15 @@ __i915_printk(struct drm_i915_private *dev_priv, const char *level,
 static bool i915_error_injected(struct drm_i915_private *dev_priv)
 {
 #if IS_ENABLED(CONFIG_DRM_I915_DEBUG)
-	return i915_modparams.inject_load_failure &&
-	       i915_load_fail_count == i915_modparams.inject_load_failure;
+	return i915_load_fail_count && !i915_modparams.inject_load_failure;
 #else
 	return false;
 #endif
 }
 
-#define i915_load_error(dev_priv, fmt, ...)				     \
-	__i915_printk(dev_priv,						     \
-		      i915_error_injected(dev_priv) ? KERN_DEBUG : KERN_ERR, \
+#define i915_load_error(i915, fmt, ...)					 \
+	__i915_printk(i915,						 \
+		      i915_error_injected(i915) ? KERN_DEBUG : KERN_ERR, \
 		      fmt, ##__VA_ARGS__)
 
 /* Map PCH device id to PCH type, or PCH_NONE if unknown. */
-- 
2.17.1

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply related	[flat|nested] 19+ messages in thread

* Re: [PATCH v3] drm/i915: Mark i915.inject_load_failure as being hit
  2018-06-06 14:41 ` [PATCH v3] " Chris Wilson
@ 2018-06-06 14:50   ` Michał Winiarski
  2018-06-06 14:54     ` Michal Wajdeczko
  2018-06-06 14:55     ` Chris Wilson
  0 siblings, 2 replies; 19+ messages in thread
From: Michał Winiarski @ 2018-06-06 14:50 UTC (permalink / raw)
  To: Chris Wilson; +Cc: intel-gfx

On Wed, Jun 06, 2018 at 03:41:53PM +0100, Chris Wilson 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
> 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.
> 
> v2: Reset to 0 after being hit;
> 
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> Cc: Michał Winiarski <michal.winiarski@intel.com>
> Cc: Imre Deak <imre.deak@intel.com>

If the other Michał doesn't mind ;)

Reviewed-by: Michał Winiarski <michal.winiarski@intel.com>

-Michał

> ---
>  drivers/gpu/drm/i915/i915_drv.c | 10 +++++-----
>  1 file changed, 5 insertions(+), 5 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c
> index 6b599b1837dc..be71fdf8d92e 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 = 0;
>  		return true;
>  	}
>  
> @@ -117,16 +118,15 @@ __i915_printk(struct drm_i915_private *dev_priv, const char *level,
>  static bool i915_error_injected(struct drm_i915_private *dev_priv)
>  {
>  #if IS_ENABLED(CONFIG_DRM_I915_DEBUG)
> -	return i915_modparams.inject_load_failure &&
> -	       i915_load_fail_count == i915_modparams.inject_load_failure;
> +	return i915_load_fail_count && !i915_modparams.inject_load_failure;
>  #else
>  	return false;
>  #endif
>  }
>  
> -#define i915_load_error(dev_priv, fmt, ...)				     \
> -	__i915_printk(dev_priv,						     \
> -		      i915_error_injected(dev_priv) ? KERN_DEBUG : KERN_ERR, \
> +#define i915_load_error(i915, fmt, ...)					 \
> +	__i915_printk(i915,						 \
> +		      i915_error_injected(i915) ? KERN_DEBUG : KERN_ERR, \
>  		      fmt, ##__VA_ARGS__)
>  
>  /* Map PCH device id to PCH type, or PCH_NONE if unknown. */
> -- 
> 2.17.1
> 
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH v3] drm/i915: Mark i915.inject_load_failure as being hit
  2018-06-06 14:50   ` Michał Winiarski
@ 2018-06-06 14:54     ` Michal Wajdeczko
  2018-06-06 17:40       ` Chris Wilson
  2018-06-06 14:55     ` Chris Wilson
  1 sibling, 1 reply; 19+ messages in thread
From: Michal Wajdeczko @ 2018-06-06 14:54 UTC (permalink / raw)
  To: Chris Wilson, Michał Winiarski; +Cc: intel-gfx

On Wed, 06 Jun 2018 16:50:09 +0200, Michał Winiarski  
<michal.winiarski@intel.com> wrote:

> On Wed, Jun 06, 2018 at 03:41:53PM +0100, Chris Wilson 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

still typo here

>> 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.
>>
>> v2: Reset to 0 after being hit;
>>
>> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
>> Cc: Michał Winiarski <michal.winiarski@intel.com>
>> Cc: Imre Deak <imre.deak@intel.com>
>
> If the other Michał doesn't mind ;)

it depends ;)

with typo fixed, you can have my r-b too

>
> Reviewed-by: Michał Winiarski <michal.winiarski@intel.com>
>
> -Michał
>
>> ---
>>  drivers/gpu/drm/i915/i915_drv.c | 10 +++++-----
>>  1 file changed, 5 insertions(+), 5 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/i915/i915_drv.c  
>> b/drivers/gpu/drm/i915/i915_drv.c
>> index 6b599b1837dc..be71fdf8d92e 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 = 0;
>>  		return true;
>>  	}
>>
>> @@ -117,16 +118,15 @@ __i915_printk(struct drm_i915_private *dev_priv,  
>> const char *level,
>>  static bool i915_error_injected(struct drm_i915_private *dev_priv)
>>  {
>>  #if IS_ENABLED(CONFIG_DRM_I915_DEBUG)
>> -	return i915_modparams.inject_load_failure &&
>> -	       i915_load_fail_count == i915_modparams.inject_load_failure;
>> +	return i915_load_fail_count && !i915_modparams.inject_load_failure;
>>  #else
>>  	return false;
>>  #endif
>>  }
>>
>> -#define i915_load_error(dev_priv, fmt, ...)				     \
>> -	__i915_printk(dev_priv,						     \
>> -		      i915_error_injected(dev_priv) ? KERN_DEBUG : KERN_ERR, \
>> +#define i915_load_error(i915, fmt, ...)					 \
>> +	__i915_printk(i915,						 \
>> +		      i915_error_injected(i915) ? KERN_DEBUG : KERN_ERR, \
>>  		      fmt, ##__VA_ARGS__)
>>
>>  /* Map PCH device id to PCH type, or PCH_NONE if unknown. */
>> --
>> 2.17.1
>>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH v3] drm/i915: Mark i915.inject_load_failure as being hit
  2018-06-06 14:50   ` Michał Winiarski
  2018-06-06 14:54     ` Michal Wajdeczko
@ 2018-06-06 14:55     ` Chris Wilson
  1 sibling, 0 replies; 19+ messages in thread
From: Chris Wilson @ 2018-06-06 14:55 UTC (permalink / raw)
  To: Michał Winiarski; +Cc: intel-gfx

Quoting Michał Winiarski (2018-06-06 15:50:09)
> On Wed, Jun 06, 2018 at 03:41:53PM +0100, Chris Wilson 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
> > 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.
> > 
> > v2: Reset to 0 after being hit;
> > 
> > Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> > Cc: Michał Winiarski <michal.winiarski@intel.com>
> > Cc: Imre Deak <imre.deak@intel.com>
> 
> If the other Michał doesn't mind ;)

Now there's two of you!
-Chris
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 19+ messages in thread

* ✗ Fi.CI.CHECKPATCH: warning for drm/i915: Mark i915.inject_load_failure as being hit (rev3)
  2018-06-06 13:09 [PATCH] drm/i915: Mark i915.inject_load_failure as being hit Chris Wilson
                   ` (4 preceding siblings ...)
  2018-06-06 14:41 ` [PATCH v3] " Chris Wilson
@ 2018-06-06 15:21 ` Patchwork
  2018-06-06 15:36 ` ✓ Fi.CI.BAT: success " Patchwork
  2018-06-06 18:07 ` ✓ Fi.CI.IGT: " Patchwork
  7 siblings, 0 replies; 19+ messages in thread
From: Patchwork @ 2018-06-06 15:21 UTC (permalink / raw)
  To: Chris Wilson; +Cc: intel-gfx

== Series Details ==

Series: drm/i915: Mark i915.inject_load_failure as being hit (rev3)
URL   : https://patchwork.freedesktop.org/series/44354/
State : warning

== Summary ==

$ dim checkpatch origin/drm-tip
741a311327ce drm/i915: Mark i915.inject_load_failure as being hit
-:12: WARNING:TYPO_SPELLING: 'paramters' may be misspelled - perhaps 'parameters'?
#12: 
paramters) are left lingering. igt can then inspect the parameter on its

-:51: CHECK:MACRO_ARG_REUSE: Macro argument reuse 'i915' - possible side-effects?
#51: FILE: drivers/gpu/drm/i915/i915_drv.c:127:
+#define i915_load_error(i915, fmt, ...)					 \
+	__i915_printk(i915,						 \
+		      i915_error_injected(i915) ? KERN_DEBUG : KERN_ERR, \
 		      fmt, ##__VA_ARGS__)

total: 0 errors, 1 warnings, 1 checks, 27 lines checked

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 19+ messages in thread

* ✓ Fi.CI.BAT: success for drm/i915: Mark i915.inject_load_failure as being hit (rev3)
  2018-06-06 13:09 [PATCH] drm/i915: Mark i915.inject_load_failure as being hit Chris Wilson
                   ` (5 preceding siblings ...)
  2018-06-06 15:21 ` ✗ Fi.CI.CHECKPATCH: warning for drm/i915: Mark i915.inject_load_failure as being hit (rev3) Patchwork
@ 2018-06-06 15:36 ` Patchwork
  2018-06-06 18:07 ` ✓ Fi.CI.IGT: " Patchwork
  7 siblings, 0 replies; 19+ messages in thread
From: Patchwork @ 2018-06-06 15:36 UTC (permalink / raw)
  To: Chris Wilson; +Cc: intel-gfx

== Series Details ==

Series: drm/i915: Mark i915.inject_load_failure as being hit (rev3)
URL   : https://patchwork.freedesktop.org/series/44354/
State : success

== Summary ==

= CI Bug Log - changes from CI_DRM_4282 -> Patchwork_9221 =

== Summary - WARNING ==

  Minor unknown changes coming with Patchwork_9221 need to be verified
  manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in Patchwork_9221, please notify your bug team to allow them
  to document this new failure mode, which will reduce false positives in CI.

  External URL: https://patchwork.freedesktop.org/api/1.0/series/44354/revisions/3/mbox/

== Possible new issues ==

  Here are the unknown changes that may have been introduced in Patchwork_9221:

  === IGT changes ===

    ==== Warnings ====

    igt@gem_exec_gttfill@basic:
      fi-pnv-d510:        SKIP -> PASS

    
== Known issues ==

  Here are the changes found in Patchwork_9221 that come from known issues:

  === IGT changes ===

    ==== Issues hit ====

    igt@drv_module_reload@basic-reload-inject:
      fi-glk-j4005:       PASS -> DMESG-WARN (fdo#106725, fdo#106248)

    igt@gem_mmap_gtt@basic-small-bo-tiledx:
      fi-gdg-551:         PASS -> FAIL (fdo#102575)

    igt@kms_flip@basic-flip-vs-modeset:
      fi-glk-j4005:       PASS -> DMESG-WARN (fdo#106000)

    
    ==== Possible fixes ====

    igt@gem_sync@basic-each:
      fi-cnl-y3:          INCOMPLETE (fdo#105086) -> PASS

    igt@kms_pipe_crc_basic@suspend-read-crc-pipe-c:
      fi-bxt-dsi:         INCOMPLETE (fdo#103927) -> PASS

    
  fdo#102575 https://bugs.freedesktop.org/show_bug.cgi?id=102575
  fdo#103927 https://bugs.freedesktop.org/show_bug.cgi?id=103927
  fdo#105086 https://bugs.freedesktop.org/show_bug.cgi?id=105086
  fdo#106000 https://bugs.freedesktop.org/show_bug.cgi?id=106000
  fdo#106248 https://bugs.freedesktop.org/show_bug.cgi?id=106248
  fdo#106725 https://bugs.freedesktop.org/show_bug.cgi?id=106725


== Participating hosts (41 -> 37) ==

  Missing    (4): fi-ctg-p8600 fi-ilk-m540 fi-byt-squawks fi-skl-6700hq 


== Build changes ==

    * Linux: CI_DRM_4282 -> Patchwork_9221

  CI_DRM_4282: c1064b9be065603680d060184da1a93d404dcf0c @ git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4508: 78a68c905066beeefd24b3a4518d817a811e8798 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_9221: 741a311327ce018cf890406341d4d28d76a9be47 @ git://anongit.freedesktop.org/gfx-ci/linux


== Linux commits ==

741a311327ce drm/i915: Mark i915.inject_load_failure as being hit

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_9221/issues.html
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH v3] drm/i915: Mark i915.inject_load_failure as being hit
  2018-06-06 14:54     ` Michal Wajdeczko
@ 2018-06-06 17:40       ` Chris Wilson
  0 siblings, 0 replies; 19+ messages in thread
From: Chris Wilson @ 2018-06-06 17:40 UTC (permalink / raw)
  To: Michal, Wajdeczko,  <michal.wajdeczko@intel.com>,
	 =?utf-8?q?=22_Micha=C5=82_Winiarski?=
	<michal.winiarski@intel.com>
  Cc: intel-gfx

Quoting Michal Wajdeczko (2018-06-06 15:54:47)
> On Wed, 06 Jun 2018 16:50:09 +0200, Michał Winiarski  
> <michal.winiarski@intel.com> wrote:
> 
> > On Wed, Jun 06, 2018 at 03:41:53PM +0100, Chris Wilson 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
> 
> still typo here
> 
> >> 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.
> >>
> >> v2: Reset to 0 after being hit;
> >>
> >> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> >> Cc: Michał Winiarski <michal.winiarski@intel.com>
> >> Cc: Imre Deak <imre.deak@intel.com>
> >
> > If the other Michał doesn't mind ;)
> 
> it depends ;)
> 
> with typo fixed, you can have my r-b too

Deal.

Thanks for pointing out how broken the igt was, grrr :-p
Pushed,
-Chris
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 19+ messages in thread

* ✓ Fi.CI.IGT: success for drm/i915: Mark i915.inject_load_failure as being hit (rev3)
  2018-06-06 13:09 [PATCH] drm/i915: Mark i915.inject_load_failure as being hit Chris Wilson
                   ` (6 preceding siblings ...)
  2018-06-06 15:36 ` ✓ Fi.CI.BAT: success " Patchwork
@ 2018-06-06 18:07 ` Patchwork
  7 siblings, 0 replies; 19+ messages in thread
From: Patchwork @ 2018-06-06 18:07 UTC (permalink / raw)
  To: Chris Wilson; +Cc: intel-gfx

== Series Details ==

Series: drm/i915: Mark i915.inject_load_failure as being hit (rev3)
URL   : https://patchwork.freedesktop.org/series/44354/
State : success

== Summary ==

= CI Bug Log - changes from CI_DRM_4282_full -> Patchwork_9221_full =

== Summary - WARNING ==

  Minor unknown changes coming with Patchwork_9221_full need to be verified
  manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in Patchwork_9221_full, please notify your bug team to allow them
  to document this new failure mode, which will reduce false positives in CI.

  External URL: https://patchwork.freedesktop.org/api/1.0/series/44354/revisions/3/mbox/

== Possible new issues ==

  Here are the unknown changes that may have been introduced in Patchwork_9221_full:

  === IGT changes ===

    ==== Warnings ====

    igt@gem_exec_schedule@deep-blt:
      shard-kbl:          SKIP -> PASS +1

    igt@gem_exec_schedule@deep-bsd2:
      shard-kbl:          PASS -> SKIP +3

    
== Known issues ==

  Here are the changes found in Patchwork_9221_full that come from known issues:

  === IGT changes ===

    ==== Issues hit ====

    igt@drv_selftest@live_gtt:
      shard-kbl:          PASS -> INCOMPLETE (fdo#103665)

    igt@drv_selftest@live_hangcheck:
      shard-apl:          PASS -> DMESG-FAIL (fdo#106560)

    igt@kms_frontbuffer_tracking@fbc-1p-primscrn-pri-shrfb-draw-render:
      shard-snb:          PASS -> FAIL (fdo#104724, fdo#103167)

    
    ==== Possible fixes ====

    igt@drv_selftest@live_gtt:
      shard-glk:          INCOMPLETE (fdo#103359, k.org#198133) -> PASS

    igt@kms_atomic_transition@1x-modeset-transitions-nonblocking:
      shard-glk:          FAIL (fdo#105703) -> PASS

    igt@kms_flip@plain-flip-ts-check:
      shard-glk:          FAIL (fdo#100368) -> PASS

    igt@kms_flip_tiling@flip-x-tiled:
      shard-glk:          FAIL (fdo#104724, fdo#103822) -> PASS +1

    igt@kms_flip_tiling@flip-y-tiled:
      shard-glk:          FAIL (fdo#104724) -> PASS

    igt@kms_setmode@basic:
      shard-apl:          FAIL (fdo#99912) -> PASS

    
  fdo#100368 https://bugs.freedesktop.org/show_bug.cgi?id=100368
  fdo#103167 https://bugs.freedesktop.org/show_bug.cgi?id=103167
  fdo#103359 https://bugs.freedesktop.org/show_bug.cgi?id=103359
  fdo#103665 https://bugs.freedesktop.org/show_bug.cgi?id=103665
  fdo#103822 https://bugs.freedesktop.org/show_bug.cgi?id=103822
  fdo#104724 https://bugs.freedesktop.org/show_bug.cgi?id=104724
  fdo#105703 https://bugs.freedesktop.org/show_bug.cgi?id=105703
  fdo#106560 https://bugs.freedesktop.org/show_bug.cgi?id=106560
  fdo#99912 https://bugs.freedesktop.org/show_bug.cgi?id=99912
  k.org#198133 https://bugzilla.kernel.org/show_bug.cgi?id=198133


== Participating hosts (5 -> 5) ==

  No changes in participating hosts


== Build changes ==

    * Linux: CI_DRM_4282 -> Patchwork_9221

  CI_DRM_4282: c1064b9be065603680d060184da1a93d404dcf0c @ git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4508: 78a68c905066beeefd24b3a4518d817a811e8798 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_9221: 741a311327ce018cf890406341d4d28d76a9be47 @ git://anongit.freedesktop.org/gfx-ci/linux

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_9221/shards.html
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH v2] drm/i915: Mark i915.inject_load_failure as being hit
  2018-06-06 14:26 ` [PATCH v2] " Chris Wilson
@ 2018-06-07 11:09   ` kbuild test robot
  2018-06-07 11:17   ` kbuild test robot
  2018-06-07 18:11   ` kbuild test robot
  2 siblings, 0 replies; 19+ messages in thread
From: kbuild test robot @ 2018-06-07 11:09 UTC (permalink / raw)
  To: Chris Wilson; +Cc: intel-gfx, kbuild-all

[-- Attachment #1: Type: text/plain, Size: 5059 bytes --]

Hi Chris,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on drm-intel/for-linux-next]
[also build test ERROR on v4.17 next-20180606]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url:    https://github.com/0day-ci/linux/commits/Chris-Wilson/drm-i915-Mark-i915-inject_load_failure-as-being-hit/20180607-174849
base:   git://anongit.freedesktop.org/drm-intel for-linux-next
config: i386-randconfig-n0-201822 (attached as .config)
compiler: gcc-7 (Debian 7.3.0-16) 7.3.0
reproduce:
        # save the attached .config to linux build tree
        make ARCH=i386 

All errors (new ones prefixed by >>):

   In file included from include/linux/printk.h:7:0,
                    from include/linux/kernel.h:14,
                    from include/linux/list.h:9,
                    from include/linux/resource_ext.h:17,
                    from include/linux/acpi.h:26,
                    from drivers/gpu//drm/i915/i915_drv.c:30:
   include/linux/kern_levels.h:5:18: error: initialization makes integer from pointer without a cast [-Werror=int-conversion]
    #define KERN_SOH "\001"  /* ASCII Start Of Header */
                     ^
   include/linux/kern_levels.h:11:18: note: in expansion of macro 'KERN_SOH'
    #define KERN_ERR KERN_SOH "3" /* error conditions */
                     ^~~~~~~~
   drivers/gpu//drm/i915/i915_drv.c:61:36: note: in expansion of macro 'KERN_ERR'
    static int i915_load_error_level = KERN_ERR;
                                       ^~~~~~~~
   drivers/gpu//drm/i915/i915_drv.c: In function '__i915_inject_load_failure':
>> drivers/gpu//drm/i915/i915_drv.c:72:25: error: assignment makes integer from pointer without a cast [-Werror=int-conversion]
      i915_load_error_level = KERN_DEBUG;
                            ^
   drivers/gpu//drm/i915/i915_drv.c: In function 'i915_driver_load':
>> drivers/gpu//drm/i915/i915_drv.c:123:26: error: passing argument 2 of '__i915_printk' makes pointer from integer without a cast [-Werror=int-conversion]
     __i915_printk(dev_priv, i915_load_error_level, fmt, ##__VA_ARGS__)
                             ^
   drivers/gpu//drm/i915/i915_drv.c:1425:2: note: in expansion of macro 'i915_load_error'
     i915_load_error(dev_priv, "Device initialization failed (%d)\n", ret);
     ^~~~~~~~~~~~~~~
   drivers/gpu//drm/i915/i915_drv.c:87:1: note: expected 'const char *' but argument is of type 'int'
    __i915_printk(struct drm_i915_private *dev_priv, const char *level,
    ^~~~~~~~~~~~~
   cc1: all warnings being treated as errors

vim +/__i915_printk +123 drivers/gpu//drm/i915/i915_drv.c

    58	
    59	#if IS_ENABLED(CONFIG_DRM_I915_DEBUG)
    60	static unsigned int i915_load_fail_count;
  > 61	static int i915_load_error_level = KERN_ERR;
    62	
    63	bool __i915_inject_load_failure(const char *func, int line)
    64	{
    65		if (i915_load_fail_count >= i915_modparams.inject_load_failure)
    66			return false;
    67	
    68		if (++i915_load_fail_count == i915_modparams.inject_load_failure) {
    69			DRM_INFO("Injecting failure at checkpoint %u [%s:%d]\n",
    70				 i915_modparams.inject_load_failure, func, line);
    71			i915_modparams.inject_load_failure = 0;
  > 72			i915_load_error_level = KERN_DEBUG;
    73			return true;
    74		}
    75	
    76		return false;
    77	}
    78	#else
    79	#define i915_load_error_level KERN_ERR
    80	#endif
    81	
    82	#define FDO_BUG_URL "https://bugs.freedesktop.org/enter_bug.cgi?product=DRI"
    83	#define FDO_BUG_MSG "Please file a bug at " FDO_BUG_URL " against DRM/Intel " \
    84			    "providing the dmesg log by booting with drm.debug=0xf"
    85	
    86	void
    87	__i915_printk(struct drm_i915_private *dev_priv, const char *level,
    88		      const char *fmt, ...)
    89	{
    90		static bool shown_bug_once;
    91		struct device *kdev = dev_priv->drm.dev;
    92		bool is_error = level[1] <= KERN_ERR[1];
    93		bool is_debug = level[1] == KERN_DEBUG[1];
    94		struct va_format vaf;
    95		va_list args;
    96	
    97		if (is_debug && !(drm_debug & DRM_UT_DRIVER))
    98			return;
    99	
   100		va_start(args, fmt);
   101	
   102		vaf.fmt = fmt;
   103		vaf.va = &args;
   104	
   105		dev_printk(level, kdev, "[" DRM_NAME ":%ps] %pV",
   106			   __builtin_return_address(0), &vaf);
   107	
   108		if (is_error && !shown_bug_once) {
   109			/*
   110			 * Ask the user to file a bug report for the error, except
   111			 * if they may have caused the bug by fiddling with unsafe
   112			 * module parameters.
   113			 */
   114			if (!test_taint(TAINT_USER))
   115				dev_notice(kdev, "%s", FDO_BUG_MSG);
   116			shown_bug_once = true;
   117		}
   118	
   119		va_end(args);
   120	}
   121	
   122	#define i915_load_error(dev_priv, fmt, ...)				     \
 > 123		__i915_printk(dev_priv, i915_load_error_level, fmt, ##__VA_ARGS__)
   124	

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 25430 bytes --]

[-- Attachment #3: Type: text/plain, Size: 160 bytes --]

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH v2] drm/i915: Mark i915.inject_load_failure as being hit
  2018-06-06 14:26 ` [PATCH v2] " Chris Wilson
  2018-06-07 11:09   ` kbuild test robot
@ 2018-06-07 11:17   ` kbuild test robot
  2018-06-07 18:11   ` kbuild test robot
  2 siblings, 0 replies; 19+ messages in thread
From: kbuild test robot @ 2018-06-07 11:17 UTC (permalink / raw)
  To: Chris Wilson; +Cc: intel-gfx, kbuild-all

[-- Attachment #1: Type: text/plain, Size: 8721 bytes --]

Hi Chris,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on drm-intel/for-linux-next]
[also build test ERROR on v4.17 next-20180606]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url:    https://github.com/0day-ci/linux/commits/Chris-Wilson/drm-i915-Mark-i915-inject_load_failure-as-being-hit/20180607-174849
base:   git://anongit.freedesktop.org/drm-intel for-linux-next
config: x86_64-randconfig-x018-201822 (attached as .config)
compiler: gcc-7 (Debian 7.3.0-16) 7.3.0
reproduce:
        # save the attached .config to linux build tree
        make ARCH=x86_64 

All error/warnings (new ones prefixed by >>):

   In file included from include/linux/printk.h:7:0,
                    from include/linux/kernel.h:14,
                    from include/linux/list.h:9,
                    from include/linux/resource_ext.h:17,
                    from include/linux/acpi.h:26,
                    from drivers/gpu/drm/i915/i915_drv.c:30:
>> include/linux/kern_levels.h:5:18: warning: initialization makes integer from pointer without a cast [-Wint-conversion]
    #define KERN_SOH "\001"  /* ASCII Start Of Header */
                     ^
   include/linux/kern_levels.h:11:18: note: in expansion of macro 'KERN_SOH'
    #define KERN_ERR KERN_SOH "3" /* error conditions */
                     ^~~~~~~~
>> drivers/gpu/drm/i915/i915_drv.c:61:36: note: in expansion of macro 'KERN_ERR'
    static int i915_load_error_level = KERN_ERR;
                                       ^~~~~~~~
>> include/linux/kern_levels.h:5:18: error: initializer element is not computable at load time
    #define KERN_SOH "\001"  /* ASCII Start Of Header */
                     ^
   include/linux/kern_levels.h:11:18: note: in expansion of macro 'KERN_SOH'
    #define KERN_ERR KERN_SOH "3" /* error conditions */
                     ^~~~~~~~
>> drivers/gpu/drm/i915/i915_drv.c:61:36: note: in expansion of macro 'KERN_ERR'
    static int i915_load_error_level = KERN_ERR;
                                       ^~~~~~~~
   drivers/gpu/drm/i915/i915_drv.c: In function '__i915_inject_load_failure':
>> drivers/gpu/drm/i915/i915_drv.c:72:25: warning: assignment makes integer from pointer without a cast [-Wint-conversion]
      i915_load_error_level = KERN_DEBUG;
                            ^
   drivers/gpu/drm/i915/i915_drv.c: In function 'i915_driver_load':
>> drivers/gpu/drm/i915/i915_drv.c:123:26: warning: passing argument 2 of '__i915_printk' makes pointer from integer without a cast [-Wint-conversion]
     __i915_printk(dev_priv, i915_load_error_level, fmt, ##__VA_ARGS__)
                             ^
>> drivers/gpu/drm/i915/i915_drv.c:1425:2: note: in expansion of macro 'i915_load_error'
     i915_load_error(dev_priv, "Device initialization failed (%d)\n", ret);
     ^~~~~~~~~~~~~~~
   drivers/gpu/drm/i915/i915_drv.c:87:1: note: expected 'const char *' but argument is of type 'int'
    __i915_printk(struct drm_i915_private *dev_priv, const char *level,
    ^~~~~~~~~~~~~
--
   In file included from include/linux/printk.h:7:0,
                    from include/linux/kernel.h:14,
                    from include/linux/list.h:9,
                    from include/linux/resource_ext.h:17,
                    from include/linux/acpi.h:26,
                    from drivers/gpu//drm/i915/i915_drv.c:30:
>> include/linux/kern_levels.h:5:18: warning: initialization makes integer from pointer without a cast [-Wint-conversion]
    #define KERN_SOH "\001"  /* ASCII Start Of Header */
                     ^
   include/linux/kern_levels.h:11:18: note: in expansion of macro 'KERN_SOH'
    #define KERN_ERR KERN_SOH "3" /* error conditions */
                     ^~~~~~~~
   drivers/gpu//drm/i915/i915_drv.c:61:36: note: in expansion of macro 'KERN_ERR'
    static int i915_load_error_level = KERN_ERR;
                                       ^~~~~~~~
>> include/linux/kern_levels.h:5:18: error: initializer element is not computable at load time
    #define KERN_SOH "\001"  /* ASCII Start Of Header */
                     ^
   include/linux/kern_levels.h:11:18: note: in expansion of macro 'KERN_SOH'
    #define KERN_ERR KERN_SOH "3" /* error conditions */
                     ^~~~~~~~
   drivers/gpu//drm/i915/i915_drv.c:61:36: note: in expansion of macro 'KERN_ERR'
    static int i915_load_error_level = KERN_ERR;
                                       ^~~~~~~~
   drivers/gpu//drm/i915/i915_drv.c: In function '__i915_inject_load_failure':
   drivers/gpu//drm/i915/i915_drv.c:72:25: warning: assignment makes integer from pointer without a cast [-Wint-conversion]
      i915_load_error_level = KERN_DEBUG;
                            ^
   drivers/gpu//drm/i915/i915_drv.c: In function 'i915_driver_load':
   drivers/gpu//drm/i915/i915_drv.c:123:26: warning: passing argument 2 of '__i915_printk' makes pointer from integer without a cast [-Wint-conversion]
     __i915_printk(dev_priv, i915_load_error_level, fmt, ##__VA_ARGS__)
                             ^
   drivers/gpu//drm/i915/i915_drv.c:1425:2: note: in expansion of macro 'i915_load_error'
     i915_load_error(dev_priv, "Device initialization failed (%d)\n", ret);
     ^~~~~~~~~~~~~~~
   drivers/gpu//drm/i915/i915_drv.c:87:1: note: expected 'const char *' but argument is of type 'int'
    __i915_printk(struct drm_i915_private *dev_priv, const char *level,
    ^~~~~~~~~~~~~

vim +/KERN_ERR +61 drivers/gpu/drm/i915/i915_drv.c

  > 30	#include <linux/acpi.h>
    31	#include <linux/device.h>
    32	#include <linux/oom.h>
    33	#include <linux/module.h>
    34	#include <linux/pci.h>
    35	#include <linux/pm.h>
    36	#include <linux/pm_runtime.h>
    37	#include <linux/pnp.h>
    38	#include <linux/slab.h>
    39	#include <linux/vgaarb.h>
    40	#include <linux/vga_switcheroo.h>
    41	#include <linux/vt.h>
    42	#include <acpi/video.h>
    43	
    44	#include <drm/drmP.h>
    45	#include <drm/drm_crtc_helper.h>
    46	#include <drm/drm_atomic_helper.h>
    47	#include <drm/i915_drm.h>
    48	
    49	#include "i915_drv.h"
    50	#include "i915_trace.h"
    51	#include "i915_pmu.h"
    52	#include "i915_query.h"
    53	#include "i915_vgpu.h"
    54	#include "intel_drv.h"
    55	#include "intel_uc.h"
    56	
    57	static struct drm_driver driver;
    58	
    59	#if IS_ENABLED(CONFIG_DRM_I915_DEBUG)
    60	static unsigned int i915_load_fail_count;
  > 61	static int i915_load_error_level = KERN_ERR;
    62	
    63	bool __i915_inject_load_failure(const char *func, int line)
    64	{
    65		if (i915_load_fail_count >= i915_modparams.inject_load_failure)
    66			return false;
    67	
    68		if (++i915_load_fail_count == i915_modparams.inject_load_failure) {
    69			DRM_INFO("Injecting failure at checkpoint %u [%s:%d]\n",
    70				 i915_modparams.inject_load_failure, func, line);
    71			i915_modparams.inject_load_failure = 0;
  > 72			i915_load_error_level = KERN_DEBUG;
    73			return true;
    74		}
    75	
    76		return false;
    77	}
    78	#else
    79	#define i915_load_error_level KERN_ERR
    80	#endif
    81	
    82	#define FDO_BUG_URL "https://bugs.freedesktop.org/enter_bug.cgi?product=DRI"
    83	#define FDO_BUG_MSG "Please file a bug at " FDO_BUG_URL " against DRM/Intel " \
    84			    "providing the dmesg log by booting with drm.debug=0xf"
    85	
    86	void
    87	__i915_printk(struct drm_i915_private *dev_priv, const char *level,
    88		      const char *fmt, ...)
    89	{
    90		static bool shown_bug_once;
    91		struct device *kdev = dev_priv->drm.dev;
    92		bool is_error = level[1] <= KERN_ERR[1];
    93		bool is_debug = level[1] == KERN_DEBUG[1];
    94		struct va_format vaf;
    95		va_list args;
    96	
    97		if (is_debug && !(drm_debug & DRM_UT_DRIVER))
    98			return;
    99	
   100		va_start(args, fmt);
   101	
   102		vaf.fmt = fmt;
   103		vaf.va = &args;
   104	
   105		dev_printk(level, kdev, "[" DRM_NAME ":%ps] %pV",
   106			   __builtin_return_address(0), &vaf);
   107	
   108		if (is_error && !shown_bug_once) {
   109			/*
   110			 * Ask the user to file a bug report for the error, except
   111			 * if they may have caused the bug by fiddling with unsafe
   112			 * module parameters.
   113			 */
   114			if (!test_taint(TAINT_USER))
   115				dev_notice(kdev, "%s", FDO_BUG_MSG);
   116			shown_bug_once = true;
   117		}
   118	
   119		va_end(args);
   120	}
   121	
   122	#define i915_load_error(dev_priv, fmt, ...)				     \
 > 123		__i915_printk(dev_priv, i915_load_error_level, fmt, ##__VA_ARGS__)
   124	

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 32976 bytes --]

[-- Attachment #3: Type: text/plain, Size: 160 bytes --]

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH v2] drm/i915: Mark i915.inject_load_failure as being hit
  2018-06-06 14:26 ` [PATCH v2] " Chris Wilson
  2018-06-07 11:09   ` kbuild test robot
  2018-06-07 11:17   ` kbuild test robot
@ 2018-06-07 18:11   ` kbuild test robot
  2 siblings, 0 replies; 19+ messages in thread
From: kbuild test robot @ 2018-06-07 18:11 UTC (permalink / raw)
  To: Chris Wilson; +Cc: intel-gfx, kbuild-all

Hi Chris,

Thank you for the patch! Perhaps something to improve:

[auto build test WARNING on drm-intel/for-linux-next]
[also build test WARNING on v4.17 next-20180607]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url:    https://github.com/0day-ci/linux/commits/Chris-Wilson/drm-i915-Mark-i915-inject_load_failure-as-being-hit/20180607-174849
base:   git://anongit.freedesktop.org/drm-intel for-linux-next
reproduce:
        # apt-get install sparse
        make ARCH=x86_64 allmodconfig
        make C=1 CF=-D__CHECK_ENDIAN__


sparse warnings: (new ones prefixed by >>)

>> drivers/gpu/drm/i915/i915_drv.c:61:36: sparse: incorrect type in initializer (different base types) @@    expected int static [signed] [toplevel] i915_load_error_level @@    got evel] i915_load_error_level @@
   drivers/gpu/drm/i915/i915_drv.c:61:36:    expected int static [signed] [toplevel] i915_load_error_level
   drivers/gpu/drm/i915/i915_drv.c:61:36:    got char *<noident>
>> drivers/gpu/drm/i915/i915_drv.c:72:39: sparse: incorrect type in assignment (different base types) @@    expected int static [signed] [toplevel] i915_load_error_level @@    got evel] i915_load_error_level @@
   drivers/gpu/drm/i915/i915_drv.c:72:39:    expected int static [signed] [toplevel] i915_load_error_level
   drivers/gpu/drm/i915/i915_drv.c:72:39:    got char *<noident>
>> drivers/gpu/drm/i915/i915_drv.c:1425:9: sparse: incorrect type in argument 2 (different base types) @@    expected char const *level @@    got int static [signed]char const *level @@
   drivers/gpu/drm/i915/i915_drv.c:1425:9:    expected char const *level
   drivers/gpu/drm/i915/i915_drv.c:1425:9:    got int static [signed] [toplevel] i915_load_error_level
   In file included from include/linux/printk.h:7:0,
                    from include/linux/kernel.h:14,
                    from include/linux/list.h:9,
                    from include/linux/resource_ext.h:17,
                    from include/linux/acpi.h:26,
                    from drivers/gpu/drm/i915/i915_drv.c:30:
   include/linux/kern_levels.h:5:18: warning: initialization makes integer from pointer without a cast [-Wint-conversion]
    #define KERN_SOH "001"  /* ASCII Start Of Header */
                     ^
   include/linux/kern_levels.h:11:18: note: in expansion of macro 'KERN_SOH'
    #define KERN_ERR KERN_SOH "3" /* error conditions */
                     ^~~~~~~~
   drivers/gpu/drm/i915/i915_drv.c:61:36: note: in expansion of macro 'KERN_ERR'
    static int i915_load_error_level = KERN_ERR;
                                       ^~~~~~~~
   include/linux/kern_levels.h:5:18: error: initializer element is not computable at load time
    #define KERN_SOH "001"  /* ASCII Start Of Header */
                     ^
   include/linux/kern_levels.h:11:18: note: in expansion of macro 'KERN_SOH'
    #define KERN_ERR KERN_SOH "3" /* error conditions */
                     ^~~~~~~~
   drivers/gpu/drm/i915/i915_drv.c:61:36: note: in expansion of macro 'KERN_ERR'
    static int i915_load_error_level = KERN_ERR;
                                       ^~~~~~~~
   drivers/gpu/drm/i915/i915_drv.c: In function '__i915_inject_load_failure':
   drivers/gpu/drm/i915/i915_drv.c:72:25: warning: assignment makes integer from pointer without a cast [-Wint-conversion]
      i915_load_error_level = KERN_DEBUG;
                            ^
   drivers/gpu/drm/i915/i915_drv.c: In function 'i915_driver_load':
   drivers/gpu/drm/i915/i915_drv.c:123:26: warning: passing argument 2 of '__i915_printk' makes pointer from integer without a cast [-Wint-conversion]
     __i915_printk(dev_priv, i915_load_error_level, fmt, ##__VA_ARGS__)
                             ^
   drivers/gpu/drm/i915/i915_drv.c:1425:2: note: in expansion of macro 'i915_load_error'
     i915_load_error(dev_priv, "Device initialization failed (%d)n", ret);
     ^~~~~~~~~~~~~~~
   drivers/gpu/drm/i915/i915_drv.c:87:1: note: expected 'const char *' but argument is of type 'int'
    __i915_printk(struct drm_i915_private *dev_priv, const char *level,
    ^~~~~~~~~~~~~

vim +61 drivers/gpu/drm/i915/i915_drv.c

    58	
    59	#if IS_ENABLED(CONFIG_DRM_I915_DEBUG)
    60	static unsigned int i915_load_fail_count;
  > 61	static int i915_load_error_level = KERN_ERR;
    62	
    63	bool __i915_inject_load_failure(const char *func, int line)
    64	{
    65		if (i915_load_fail_count >= i915_modparams.inject_load_failure)
    66			return false;
    67	
    68		if (++i915_load_fail_count == i915_modparams.inject_load_failure) {
    69			DRM_INFO("Injecting failure at checkpoint %u [%s:%d]\n",
    70				 i915_modparams.inject_load_failure, func, line);
    71			i915_modparams.inject_load_failure = 0;
  > 72			i915_load_error_level = KERN_DEBUG;
    73			return true;
    74		}
    75	
    76		return false;
    77	}
    78	#else
    79	#define i915_load_error_level KERN_ERR
    80	#endif
    81	

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 19+ messages in thread

end of thread, other threads:[~2018-06-07 18:12 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-06-06 13:09 [PATCH] drm/i915: Mark i915.inject_load_failure as being hit Chris Wilson
2018-06-06 13:25 ` Michal Wajdeczko
2018-06-06 13:33   ` Chris Wilson
2018-06-06 14:19     ` Chris Wilson
2018-06-06 14:28       ` Michal Wajdeczko
2018-06-06 13:57 ` ✗ Fi.CI.CHECKPATCH: warning for " Patchwork
2018-06-06 14:12 ` ✗ Fi.CI.BAT: failure " Patchwork
2018-06-06 14:26 ` [PATCH v2] " Chris Wilson
2018-06-07 11:09   ` kbuild test robot
2018-06-07 11:17   ` kbuild test robot
2018-06-07 18:11   ` kbuild test robot
2018-06-06 14:41 ` [PATCH v3] " Chris Wilson
2018-06-06 14:50   ` Michał Winiarski
2018-06-06 14:54     ` Michal Wajdeczko
2018-06-06 17:40       ` Chris Wilson
2018-06-06 14:55     ` Chris Wilson
2018-06-06 15:21 ` ✗ Fi.CI.CHECKPATCH: warning for drm/i915: Mark i915.inject_load_failure as being hit (rev3) Patchwork
2018-06-06 15:36 ` ✓ Fi.CI.BAT: success " Patchwork
2018-06-06 18:07 ` ✓ Fi.CI.IGT: " Patchwork

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.