* [PATCH i-g-t] igt/drv_module_reload: Revamp fault-injection
@ 2018-06-07 10:58 ` Chris Wilson
0 siblings, 0 replies; 20+ messages in thread
From: Chris Wilson @ 2018-06-07 10:58 UTC (permalink / raw)
To: intel-gfx; +Cc: igt-dev
The current method of checking for a failed module load is flawed, as we
only report the error on probing it is not being reported back by
modprobe. So we have to dig inside the module_parameters while the
module is still loaded to discover the error.
v2: Expect i915.inject_load_failure to be zero on success
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Michał Winiarski <michal.winiarski@intel.com>
Cc: Imre Deak <imre.deak@intel.com>
Reviewed-by: Michał Winiarski <michal.winiarski@intel.com>
---
tests/drv_module_reload.c | 45 ++++++++++++++++++++++++++++++++++-----
1 file changed, 40 insertions(+), 5 deletions(-)
diff --git a/tests/drv_module_reload.c b/tests/drv_module_reload.c
index 3046d8227..5d6680b0b 100644
--- a/tests/drv_module_reload.c
+++ b/tests/drv_module_reload.c
@@ -234,6 +234,38 @@ reload(const char *opts_i915)
return err;
}
+static int open_parameters(const char *module_name)
+{
+ char path[256];
+
+ snprintf(path, sizeof(path), "/sys/module/%s/parameters", module_name);
+ return open(path, O_RDONLY);
+}
+
+static int
+inject_fault(const char *module_name, const char *opt, int fault)
+{
+ char buf[1024];
+ int dir;
+
+ igt_assert(fault > 0);
+ snprintf(buf, sizeof(buf), "%s=%d", opt, fault);
+
+ if (igt_kmod_load(module_name, buf)) {
+ igt_warn("Failed to load module '%s' with options '%s'\n",
+ module_name, buf);
+ return 1;
+ }
+
+ dir = open_parameters(module_name);
+ igt_sysfs_scanf(dir, opt, "%d", &fault);
+ close(dir);
+
+ igt_kmod_unload(module_name, 0);
+
+ return fault;
+}
+
static void
gem_sanitycheck(void)
{
@@ -320,12 +352,15 @@ igt_main
igt_assert_eq(reload("disable_display=1"), 0);
igt_subtest("basic-reload-inject") {
- char buf[64];
int i = 0;
- do {
- snprintf(buf, sizeof(buf),
- "inject_load_failure=%d", ++i);
- } while (reload(buf));
+
+ igt_i915_driver_unload();
+
+ while (inject_fault("i915", "inject_load_failure", ++i) == 0)
+ ;
+
+ /* We expect to hit at least one fault! */
+ igt_assert(i > 1);
}
igt_fixture {
--
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] 20+ messages in thread
* [igt-dev] [PATCH i-g-t] igt/drv_module_reload: Revamp fault-injection
@ 2018-06-07 10:58 ` Chris Wilson
0 siblings, 0 replies; 20+ messages in thread
From: Chris Wilson @ 2018-06-07 10:58 UTC (permalink / raw)
To: intel-gfx; +Cc: igt-dev
The current method of checking for a failed module load is flawed, as we
only report the error on probing it is not being reported back by
modprobe. So we have to dig inside the module_parameters while the
module is still loaded to discover the error.
v2: Expect i915.inject_load_failure to be zero on success
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Michał Winiarski <michal.winiarski@intel.com>
Cc: Imre Deak <imre.deak@intel.com>
Reviewed-by: Michał Winiarski <michal.winiarski@intel.com>
---
tests/drv_module_reload.c | 45 ++++++++++++++++++++++++++++++++++-----
1 file changed, 40 insertions(+), 5 deletions(-)
diff --git a/tests/drv_module_reload.c b/tests/drv_module_reload.c
index 3046d8227..5d6680b0b 100644
--- a/tests/drv_module_reload.c
+++ b/tests/drv_module_reload.c
@@ -234,6 +234,38 @@ reload(const char *opts_i915)
return err;
}
+static int open_parameters(const char *module_name)
+{
+ char path[256];
+
+ snprintf(path, sizeof(path), "/sys/module/%s/parameters", module_name);
+ return open(path, O_RDONLY);
+}
+
+static int
+inject_fault(const char *module_name, const char *opt, int fault)
+{
+ char buf[1024];
+ int dir;
+
+ igt_assert(fault > 0);
+ snprintf(buf, sizeof(buf), "%s=%d", opt, fault);
+
+ if (igt_kmod_load(module_name, buf)) {
+ igt_warn("Failed to load module '%s' with options '%s'\n",
+ module_name, buf);
+ return 1;
+ }
+
+ dir = open_parameters(module_name);
+ igt_sysfs_scanf(dir, opt, "%d", &fault);
+ close(dir);
+
+ igt_kmod_unload(module_name, 0);
+
+ return fault;
+}
+
static void
gem_sanitycheck(void)
{
@@ -320,12 +352,15 @@ igt_main
igt_assert_eq(reload("disable_display=1"), 0);
igt_subtest("basic-reload-inject") {
- char buf[64];
int i = 0;
- do {
- snprintf(buf, sizeof(buf),
- "inject_load_failure=%d", ++i);
- } while (reload(buf));
+
+ igt_i915_driver_unload();
+
+ while (inject_fault("i915", "inject_load_failure", ++i) == 0)
+ ;
+
+ /* We expect to hit at least one fault! */
+ igt_assert(i > 1);
}
igt_fixture {
--
2.17.1
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply related [flat|nested] 20+ messages in thread
* [igt-dev] ✗ Fi.CI.BAT: failure for igt/drv_module_reload: Revamp fault-injection (rev2)
2018-06-07 10:58 ` [igt-dev] " Chris Wilson
(?)
@ 2018-06-07 11:31 ` Patchwork
-1 siblings, 0 replies; 20+ messages in thread
From: Patchwork @ 2018-06-07 11:31 UTC (permalink / raw)
To: Chris Wilson; +Cc: igt-dev
== Series Details ==
Series: igt/drv_module_reload: Revamp fault-injection (rev2)
URL : https://patchwork.freedesktop.org/series/44363/
State : failure
== Summary ==
= CI Bug Log - changes from CI_DRM_4282 -> IGTPW_1424 =
== Summary - FAILURE ==
Serious unknown changes coming with IGTPW_1424 absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in IGTPW_1424, 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/44363/revisions/2/mbox/
== Possible new issues ==
Here are the unknown changes that may have been introduced in IGTPW_1424:
=== IGT changes ===
==== Possible regressions ====
igt@drv_module_reload@basic-reload-inject:
fi-skl-6260u: PASS -> FAIL
fi-snb-2600: PASS -> FAIL
fi-byt-j1900: PASS -> FAIL
fi-kbl-7560u: PASS -> FAIL
fi-kbl-7500u: PASS -> FAIL
fi-ivb-3520m: PASS -> FAIL
fi-hsw-4770: PASS -> FAIL
fi-kbl-guc: PASS -> FAIL
fi-hsw-4200u: PASS -> FAIL
fi-cfl-u2: PASS -> FAIL
fi-skl-6770hq: PASS -> FAIL
fi-byt-n2820: PASS -> FAIL
fi-bxt-j4205: PASS -> FAIL
fi-bwr-2160: PASS -> FAIL
fi-kbl-r: PASS -> FAIL
fi-bdw-5557u: PASS -> FAIL
fi-cfl-s3: PASS -> FAIL
fi-snb-2520m: PASS -> FAIL
fi-cfl-8700k: PASS -> FAIL
fi-gdg-551: PASS -> FAIL
fi-skl-6600u: PASS -> FAIL
fi-pnv-d510: PASS -> FAIL
fi-hsw-4770r: PASS -> FAIL
fi-ilk-650: PASS -> FAIL
fi-skl-guc: PASS -> FAIL
fi-bsw-n3050: PASS -> FAIL
fi-cfl-guc: PASS -> FAIL
fi-blb-e6850: PASS -> FAIL
fi-kbl-7567u: PASS -> FAIL
fi-skl-6700k2: PASS -> FAIL
fi-elk-e7500: PASS -> FAIL
fi-bxt-dsi: NOTRUN -> FAIL
fi-ivb-3770: PASS -> FAIL
igt@kms_flip@basic-flip-vs-modeset:
fi-elk-e7500: PASS -> DMESG-WARN
igt@kms_pipe_crc_basic@nonblocking-crc-pipe-c:
fi-glk-j4005: PASS -> FAIL +1
==== Warnings ====
igt@drv_module_reload@basic-reload-inject:
fi-cnl-psr: DMESG-WARN (fdo#105395) -> DMESG-FAIL
igt@gem_exec_gttfill@basic:
fi-pnv-d510: SKIP -> PASS
== Known issues ==
Here are the changes found in IGTPW_1424 that come from known issues:
=== IGT changes ===
==== Issues hit ====
igt@gem_exec_flush@basic-batch-kernel-default-uc:
fi-glk-j4005: PASS -> DMESG-WARN (fdo#105719)
igt@gem_mmap_gtt@basic-small-bo-tiledx:
fi-gdg-551: PASS -> FAIL (fdo#102575)
igt@gem_sync@basic-many-each:
fi-cnl-y3: NOTRUN -> INCOMPLETE (fdo#105086)
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_flip@basic-flip-vs-wf_vblank:
fi-glk-j4005: FAIL (fdo#100368) -> PASS
igt@kms_pipe_crc_basic@suspend-read-crc-pipe-c:
fi-bxt-dsi: INCOMPLETE (fdo#103927) -> PASS
fdo#100368 https://bugs.freedesktop.org/show_bug.cgi?id=100368
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#105395 https://bugs.freedesktop.org/show_bug.cgi?id=105395
fdo#105719 https://bugs.freedesktop.org/show_bug.cgi?id=105719
fdo#106000 https://bugs.freedesktop.org/show_bug.cgi?id=106000
== Participating hosts (41 -> 37) ==
Missing (4): fi-ctg-p8600 fi-ilk-m540 fi-byt-squawks fi-skl-6700hq
== Build changes ==
* IGT: IGT_4508 -> IGTPW_1424
CI_DRM_4282: c1064b9be065603680d060184da1a93d404dcf0c @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_1424: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1424/
IGT_4508: 78a68c905066beeefd24b3a4518d817a811e8798 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1424/issues.html
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 20+ messages in thread
* [PATCH i-g-t] igt/drv_module_reload: Revamp fault-injection
2018-06-07 10:58 ` [igt-dev] " Chris Wilson
@ 2018-06-07 11:43 ` Chris Wilson
-1 siblings, 0 replies; 20+ messages in thread
From: Chris Wilson @ 2018-06-07 11:43 UTC (permalink / raw)
To: intel-gfx; +Cc: igt-dev
The current method of checking for a failed module load is flawed, as we
only report the error on probing it is not being reported back by
modprobe. So we have to dig inside the module_parameters while the
module is still loaded to discover the error.
v2: Expect i915.inject_load_failure to be zero on success
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Michał Winiarski <michal.winiarski@intel.com>
Cc: Imre Deak <imre.deak@intel.com>
Reviewed-by: Michał Winiarski <michal.winiarski@intel.com>
---
tests/drv_module_reload.c | 47 ++++++++++++++++++++++++++++++++++-----
1 file changed, 42 insertions(+), 5 deletions(-)
diff --git a/tests/drv_module_reload.c b/tests/drv_module_reload.c
index 3046d8227..57e5b50ec 100644
--- a/tests/drv_module_reload.c
+++ b/tests/drv_module_reload.c
@@ -234,6 +234,40 @@ reload(const char *opts_i915)
return err;
}
+static int open_parameters(const char *module_name)
+{
+ char path[256];
+
+ snprintf(path, sizeof(path), "/sys/module/%s/parameters", module_name);
+ return open(path, O_RDONLY);
+}
+
+static int
+inject_fault(const char *module_name, const char *opt, int fault)
+{
+ char buf[1024];
+ int dir;
+
+ igt_assert(fault > 0);
+ snprintf(buf, sizeof(buf), "%s=%d", opt, fault);
+
+ if (igt_kmod_load(module_name, buf)) {
+ igt_warn("Failed to load module '%s' with options '%s'\n",
+ module_name, buf);
+ return 1;
+ }
+
+ dir = open_parameters(module_name);
+ igt_sysfs_scanf(dir, opt, "%d", &fault);
+ close(dir);
+
+ igt_debug("Loaded '%s %s', result=%d\n", module_name, buf, fault);
+
+ igt_kmod_unload(module_name, 0);
+
+ return fault;
+}
+
static void
gem_sanitycheck(void)
{
@@ -320,12 +354,15 @@ igt_main
igt_assert_eq(reload("disable_display=1"), 0);
igt_subtest("basic-reload-inject") {
- char buf[64];
int i = 0;
- do {
- snprintf(buf, sizeof(buf),
- "inject_load_failure=%d", ++i);
- } while (reload(buf));
+
+ igt_i915_driver_unload();
+
+ while (inject_fault("i915", "inject_load_failure", ++i) == 0)
+ ;
+
+ /* We expect to hit at least one fault! */
+ igt_assert(i > 1);
}
igt_fixture {
--
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] 20+ messages in thread
* [igt-dev] [PATCH i-g-t] igt/drv_module_reload: Revamp fault-injection
@ 2018-06-07 11:43 ` Chris Wilson
0 siblings, 0 replies; 20+ messages in thread
From: Chris Wilson @ 2018-06-07 11:43 UTC (permalink / raw)
To: intel-gfx; +Cc: igt-dev
The current method of checking for a failed module load is flawed, as we
only report the error on probing it is not being reported back by
modprobe. So we have to dig inside the module_parameters while the
module is still loaded to discover the error.
v2: Expect i915.inject_load_failure to be zero on success
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Michał Winiarski <michal.winiarski@intel.com>
Cc: Imre Deak <imre.deak@intel.com>
Reviewed-by: Michał Winiarski <michal.winiarski@intel.com>
---
tests/drv_module_reload.c | 47 ++++++++++++++++++++++++++++++++++-----
1 file changed, 42 insertions(+), 5 deletions(-)
diff --git a/tests/drv_module_reload.c b/tests/drv_module_reload.c
index 3046d8227..57e5b50ec 100644
--- a/tests/drv_module_reload.c
+++ b/tests/drv_module_reload.c
@@ -234,6 +234,40 @@ reload(const char *opts_i915)
return err;
}
+static int open_parameters(const char *module_name)
+{
+ char path[256];
+
+ snprintf(path, sizeof(path), "/sys/module/%s/parameters", module_name);
+ return open(path, O_RDONLY);
+}
+
+static int
+inject_fault(const char *module_name, const char *opt, int fault)
+{
+ char buf[1024];
+ int dir;
+
+ igt_assert(fault > 0);
+ snprintf(buf, sizeof(buf), "%s=%d", opt, fault);
+
+ if (igt_kmod_load(module_name, buf)) {
+ igt_warn("Failed to load module '%s' with options '%s'\n",
+ module_name, buf);
+ return 1;
+ }
+
+ dir = open_parameters(module_name);
+ igt_sysfs_scanf(dir, opt, "%d", &fault);
+ close(dir);
+
+ igt_debug("Loaded '%s %s', result=%d\n", module_name, buf, fault);
+
+ igt_kmod_unload(module_name, 0);
+
+ return fault;
+}
+
static void
gem_sanitycheck(void)
{
@@ -320,12 +354,15 @@ igt_main
igt_assert_eq(reload("disable_display=1"), 0);
igt_subtest("basic-reload-inject") {
- char buf[64];
int i = 0;
- do {
- snprintf(buf, sizeof(buf),
- "inject_load_failure=%d", ++i);
- } while (reload(buf));
+
+ igt_i915_driver_unload();
+
+ while (inject_fault("i915", "inject_load_failure", ++i) == 0)
+ ;
+
+ /* We expect to hit at least one fault! */
+ igt_assert(i > 1);
}
igt_fixture {
--
2.17.1
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply related [flat|nested] 20+ messages in thread
* [igt-dev] ✗ Fi.CI.BAT: failure for igt/drv_module_reload: Revamp fault-injection (rev3)
2018-06-07 10:58 ` [igt-dev] " Chris Wilson
` (2 preceding siblings ...)
(?)
@ 2018-06-07 12:53 ` Patchwork
2018-06-07 12:57 ` Chris Wilson
-1 siblings, 1 reply; 20+ messages in thread
From: Patchwork @ 2018-06-07 12:53 UTC (permalink / raw)
To: Chris Wilson; +Cc: igt-dev
== Series Details ==
Series: igt/drv_module_reload: Revamp fault-injection (rev3)
URL : https://patchwork.freedesktop.org/series/44363/
State : failure
== Summary ==
= CI Bug Log - changes from CI_DRM_4289 -> IGTPW_1426 =
== Summary - FAILURE ==
Serious unknown changes coming with IGTPW_1426 absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in IGTPW_1426, 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/44363/revisions/3/mbox/
== Possible new issues ==
Here are the unknown changes that may have been introduced in IGTPW_1426:
=== IGT changes ===
==== Possible regressions ====
igt@drv_module_reload@basic-reload-inject:
fi-skl-6260u: PASS -> INCOMPLETE
fi-snb-2600: PASS -> INCOMPLETE
fi-kbl-7560u: PASS -> INCOMPLETE
fi-kbl-7500u: PASS -> INCOMPLETE
fi-ivb-3520m: PASS -> INCOMPLETE
fi-hsw-4770: PASS -> INCOMPLETE
fi-kbl-guc: PASS -> DMESG-FAIL
fi-hsw-4200u: PASS -> INCOMPLETE
fi-cfl-u2: PASS -> INCOMPLETE
fi-skl-6770hq: PASS -> INCOMPLETE
fi-kbl-r: PASS -> INCOMPLETE
fi-bdw-5557u: PASS -> INCOMPLETE
fi-cfl-s3: PASS -> INCOMPLETE
fi-cfl-8700k: PASS -> INCOMPLETE
fi-gdg-551: PASS -> INCOMPLETE
fi-pnv-d510: PASS -> INCOMPLETE
fi-hsw-4770r: PASS -> INCOMPLETE
fi-ilk-650: PASS -> INCOMPLETE
fi-bsw-n3050: PASS -> INCOMPLETE
fi-blb-e6850: PASS -> INCOMPLETE
fi-kbl-7567u: PASS -> INCOMPLETE
fi-skl-6700k2: PASS -> INCOMPLETE
fi-ivb-3770: PASS -> INCOMPLETE
==== Warnings ====
igt@gem_exec_gttfill@basic:
fi-pnv-d510: SKIP -> PASS
igt@kms_pipe_crc_basic@read-crc-pipe-c:
fi-glk-j4005: SKIP -> PASS
== Known issues ==
Here are the changes found in IGTPW_1426 that come from known issues:
=== IGT changes ===
==== Issues hit ====
igt@drv_module_reload@basic-reload-inject:
fi-byt-j1900: PASS -> INCOMPLETE (fdo#102657)
fi-byt-n2820: PASS -> INCOMPLETE (fdo#102657)
fi-bxt-j4205: PASS -> INCOMPLETE (fdo#103927)
fi-bwr-2160: PASS -> INCOMPLETE (fdo#105268)
fi-snb-2520m: PASS -> INCOMPLETE (fdo#103713)
fi-skl-6600u: PASS -> INCOMPLETE (fdo#104108)
fi-skl-guc: PASS -> INCOMPLETE (fdo#106693)
fi-cfl-guc: PASS -> INCOMPLETE (fdo#106693)
fi-elk-e7500: PASS -> INCOMPLETE (fdo#103989)
fi-glk-j4005: PASS -> INCOMPLETE (fdo#103359, k.org#198133)
fi-bxt-dsi: PASS -> INCOMPLETE (fdo#103927)
igt@gem_exec_store@basic-render:
fi-glk-j4005: PASS -> DMESG-WARN (fdo#105719)
igt@gem_mmap_gtt@basic-small-bo-tiledx:
fi-gdg-551: PASS -> FAIL (fdo#102575)
igt@gvt_basic@invalid-placeholder-test:
fi-kbl-guc: SKIP -> INCOMPLETE (fdo#106693)
igt@kms_flip@basic-flip-vs-dpms:
fi-glk-j4005: PASS -> DMESG-WARN (fdo#106000)
==== Possible fixes ====
igt@kms_flip@basic-flip-vs-modeset:
fi-glk-j4005: DMESG-WARN (fdo#106000) -> PASS +2
igt@kms_pipe_crc_basic@read-crc-pipe-b-frame-sequence:
fi-glk-j4005: FAIL (fdo#103481) -> PASS
igt@kms_pipe_crc_basic@suspend-read-crc-pipe-b:
fi-cnl-psr: DMESG-WARN (fdo#104951) -> PASS
igt@prime_vgem@basic-fence-flip:
fi-ilk-650: FAIL (fdo#104008) -> PASS
==== Warnings ====
igt@drv_module_reload@basic-reload-inject:
fi-cnl-psr: DMESG-WARN (fdo#105395) -> INCOMPLETE (fdo#105086)
fdo#102575 https://bugs.freedesktop.org/show_bug.cgi?id=102575
fdo#102657 https://bugs.freedesktop.org/show_bug.cgi?id=102657
fdo#103359 https://bugs.freedesktop.org/show_bug.cgi?id=103359
fdo#103481 https://bugs.freedesktop.org/show_bug.cgi?id=103481
fdo#103713 https://bugs.freedesktop.org/show_bug.cgi?id=103713
fdo#103927 https://bugs.freedesktop.org/show_bug.cgi?id=103927
fdo#103989 https://bugs.freedesktop.org/show_bug.cgi?id=103989
fdo#104008 https://bugs.freedesktop.org/show_bug.cgi?id=104008
fdo#104108 https://bugs.freedesktop.org/show_bug.cgi?id=104108
fdo#104951 https://bugs.freedesktop.org/show_bug.cgi?id=104951
fdo#105086 https://bugs.freedesktop.org/show_bug.cgi?id=105086
fdo#105268 https://bugs.freedesktop.org/show_bug.cgi?id=105268
fdo#105395 https://bugs.freedesktop.org/show_bug.cgi?id=105395
fdo#105719 https://bugs.freedesktop.org/show_bug.cgi?id=105719
fdo#106000 https://bugs.freedesktop.org/show_bug.cgi?id=106000
fdo#106693 https://bugs.freedesktop.org/show_bug.cgi?id=106693
k.org#198133 https://bugzilla.kernel.org/show_bug.cgi?id=198133
== Participating hosts (40 -> 37) ==
Missing (3): fi-ilk-m540 fi-byt-squawks fi-skl-6700hq
== Build changes ==
* IGT: IGT_4509 -> IGTPW_1426
CI_DRM_4289: 0e963d962be75b4e3d3d1c884e1bf4600473096d @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_1426: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1426/
IGT_4509: c8f1ae58e1b7da17af4722a5ce5a9cd8b9a34059 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1426/issues.html
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [igt-dev] ✗ Fi.CI.BAT: failure for igt/drv_module_reload: Revamp fault-injection (rev3)
2018-06-07 12:53 ` [igt-dev] ✗ Fi.CI.BAT: failure for igt/drv_module_reload: Revamp fault-injection (rev3) Patchwork
@ 2018-06-07 12:57 ` Chris Wilson
0 siblings, 0 replies; 20+ messages in thread
From: Chris Wilson @ 2018-06-07 12:57 UTC (permalink / raw)
Cc: igt-dev
Quoting Patchwork (2018-06-07 13:53:55)
> == Series Details ==
>
> Series: igt/drv_module_reload: Revamp fault-injection (rev3)
> URL : https://patchwork.freedesktop.org/series/44363/
> State : failure
>
> == Summary ==
>
> = CI Bug Log - changes from CI_DRM_4289 -> IGTPW_1426 =
>
> == Summary - FAILURE ==
>
> Serious unknown changes coming with IGTPW_1426 absolutely need to be
> verified manually.
>
> If you think the reported changes have nothing to do with the changes
> introduced in IGTPW_1426, 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/44363/revisions/3/mbox/
>
> == Possible new issues ==
>
> Here are the unknown changes that may have been introduced in IGTPW_1426:
>
> === IGT changes ===
>
> ==== Possible regressions ====
>
> igt@drv_module_reload@basic-reload-inject:
> fi-skl-6260u: PASS -> INCOMPLETE
> fi-snb-2600: PASS -> INCOMPLETE
> fi-kbl-7560u: PASS -> INCOMPLETE
> fi-kbl-7500u: PASS -> INCOMPLETE
> fi-ivb-3520m: PASS -> INCOMPLETE
> fi-hsw-4770: PASS -> INCOMPLETE
> fi-kbl-guc: PASS -> DMESG-FAIL
> fi-hsw-4200u: PASS -> INCOMPLETE
> fi-cfl-u2: PASS -> INCOMPLETE
> fi-skl-6770hq: PASS -> INCOMPLETE
> fi-kbl-r: PASS -> INCOMPLETE
> fi-bdw-5557u: PASS -> INCOMPLETE
> fi-cfl-s3: PASS -> INCOMPLETE
> fi-cfl-8700k: PASS -> INCOMPLETE
> fi-gdg-551: PASS -> INCOMPLETE
> fi-pnv-d510: PASS -> INCOMPLETE
> fi-hsw-4770r: PASS -> INCOMPLETE
> fi-ilk-650: PASS -> INCOMPLETE
> fi-bsw-n3050: PASS -> INCOMPLETE
> fi-blb-e6850: PASS -> INCOMPLETE
> fi-kbl-7567u: PASS -> INCOMPLETE
> fi-skl-6700k2: PASS -> INCOMPLETE
> fi-ivb-3770: PASS -> INCOMPLETE
Now that's more like it! Works if you don't have a display attached...
-Chris
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 20+ messages in thread
* [PATCH i-g-t] HAX igt/drv_module_reload: Revamp fault-injection
2018-06-07 10:58 ` [igt-dev] " Chris Wilson
@ 2018-06-07 12:59 ` Chris Wilson
-1 siblings, 0 replies; 20+ messages in thread
From: Chris Wilson @ 2018-06-07 12:59 UTC (permalink / raw)
To: intel-gfx; +Cc: igt-dev
The current method of checking for a failed module load is flawed, as we
only report the error on probing it is not being reported back by
modprobe. So we have to dig inside the module_parameters while the
module is still loaded to discover the error.
v2: Expect i915.inject_load_failure to be zero on success
w/o display
---
tests/drv_module_reload.c | 47 ++++++++++++++++++++++++++++++++++-----
1 file changed, 42 insertions(+), 5 deletions(-)
diff --git a/tests/drv_module_reload.c b/tests/drv_module_reload.c
index 3046d8227..d88851b68 100644
--- a/tests/drv_module_reload.c
+++ b/tests/drv_module_reload.c
@@ -234,6 +234,40 @@ reload(const char *opts_i915)
return err;
}
+static int open_parameters(const char *module_name)
+{
+ char path[256];
+
+ snprintf(path, sizeof(path), "/sys/module/%s/parameters", module_name);
+ return open(path, O_RDONLY);
+}
+
+static int
+inject_fault(const char *module_name, const char *opt, int fault)
+{
+ char buf[1024];
+ int dir;
+
+ igt_assert(fault > 0);
+ snprintf(buf, sizeof(buf), "%s=%d disable_display=1", opt, fault);
+
+ if (igt_kmod_load(module_name, buf)) {
+ igt_warn("Failed to load module '%s' with options '%s'\n",
+ module_name, buf);
+ return 1;
+ }
+
+ dir = open_parameters(module_name);
+ igt_sysfs_scanf(dir, opt, "%d", &fault);
+ close(dir);
+
+ igt_debug("Loaded '%s %s', result=%d\n", module_name, buf, fault);
+
+ igt_kmod_unload(module_name, 0);
+
+ return fault;
+}
+
static void
gem_sanitycheck(void)
{
@@ -320,12 +354,15 @@ igt_main
igt_assert_eq(reload("disable_display=1"), 0);
igt_subtest("basic-reload-inject") {
- char buf[64];
int i = 0;
- do {
- snprintf(buf, sizeof(buf),
- "inject_load_failure=%d", ++i);
- } while (reload(buf));
+
+ igt_i915_driver_unload();
+
+ while (inject_fault("i915", "inject_load_failure", ++i) == 0)
+ ;
+
+ /* We expect to hit at least one fault! */
+ igt_assert(i > 1);
}
igt_fixture {
--
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] 20+ messages in thread
* [igt-dev] [PATCH i-g-t] HAX igt/drv_module_reload: Revamp fault-injection
@ 2018-06-07 12:59 ` Chris Wilson
0 siblings, 0 replies; 20+ messages in thread
From: Chris Wilson @ 2018-06-07 12:59 UTC (permalink / raw)
To: intel-gfx; +Cc: igt-dev
The current method of checking for a failed module load is flawed, as we
only report the error on probing it is not being reported back by
modprobe. So we have to dig inside the module_parameters while the
module is still loaded to discover the error.
v2: Expect i915.inject_load_failure to be zero on success
w/o display
---
tests/drv_module_reload.c | 47 ++++++++++++++++++++++++++++++++++-----
1 file changed, 42 insertions(+), 5 deletions(-)
diff --git a/tests/drv_module_reload.c b/tests/drv_module_reload.c
index 3046d8227..d88851b68 100644
--- a/tests/drv_module_reload.c
+++ b/tests/drv_module_reload.c
@@ -234,6 +234,40 @@ reload(const char *opts_i915)
return err;
}
+static int open_parameters(const char *module_name)
+{
+ char path[256];
+
+ snprintf(path, sizeof(path), "/sys/module/%s/parameters", module_name);
+ return open(path, O_RDONLY);
+}
+
+static int
+inject_fault(const char *module_name, const char *opt, int fault)
+{
+ char buf[1024];
+ int dir;
+
+ igt_assert(fault > 0);
+ snprintf(buf, sizeof(buf), "%s=%d disable_display=1", opt, fault);
+
+ if (igt_kmod_load(module_name, buf)) {
+ igt_warn("Failed to load module '%s' with options '%s'\n",
+ module_name, buf);
+ return 1;
+ }
+
+ dir = open_parameters(module_name);
+ igt_sysfs_scanf(dir, opt, "%d", &fault);
+ close(dir);
+
+ igt_debug("Loaded '%s %s', result=%d\n", module_name, buf, fault);
+
+ igt_kmod_unload(module_name, 0);
+
+ return fault;
+}
+
static void
gem_sanitycheck(void)
{
@@ -320,12 +354,15 @@ igt_main
igt_assert_eq(reload("disable_display=1"), 0);
igt_subtest("basic-reload-inject") {
- char buf[64];
int i = 0;
- do {
- snprintf(buf, sizeof(buf),
- "inject_load_failure=%d", ++i);
- } while (reload(buf));
+
+ igt_i915_driver_unload();
+
+ while (inject_fault("i915", "inject_load_failure", ++i) == 0)
+ ;
+
+ /* We expect to hit at least one fault! */
+ igt_assert(i > 1);
}
igt_fixture {
--
2.17.1
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply related [flat|nested] 20+ messages in thread
* [igt-dev] ✗ Fi.CI.BAT: failure for igt/drv_module_reload: Revamp fault-injection (rev4)
2018-06-07 10:58 ` [igt-dev] " Chris Wilson
` (4 preceding siblings ...)
(?)
@ 2018-06-07 13:33 ` Patchwork
-1 siblings, 0 replies; 20+ messages in thread
From: Patchwork @ 2018-06-07 13:33 UTC (permalink / raw)
To: Chris Wilson; +Cc: igt-dev
== Series Details ==
Series: igt/drv_module_reload: Revamp fault-injection (rev4)
URL : https://patchwork.freedesktop.org/series/44363/
State : failure
== Summary ==
= CI Bug Log - changes from CI_DRM_4289 -> IGTPW_1427 =
== Summary - FAILURE ==
Serious unknown changes coming with IGTPW_1427 absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in IGTPW_1427, 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/44363/revisions/4/mbox/
== Possible new issues ==
Here are the unknown changes that may have been introduced in IGTPW_1427:
=== 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-FAIL
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 -> INCOMPLETE
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-FAIL
fi-bsw-n3050: PASS -> DMESG-WARN
fi-cfl-guc: PASS -> DMESG-FAIL
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: PASS -> DMESG-WARN
fi-ivb-3770: PASS -> DMESG-WARN
==== Warnings ====
igt@gem_exec_gttfill@basic:
fi-pnv-d510: SKIP -> PASS
igt@kms_pipe_crc_basic@read-crc-pipe-c:
fi-glk-j4005: SKIP -> PASS
== Known issues ==
Here are the changes found in IGTPW_1427 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@gem_sync@basic-each:
fi-cnl-y3: PASS -> INCOMPLETE (fdo#105086)
igt@gvt_basic@invalid-placeholder-test:
fi-cfl-guc: SKIP -> INCOMPLETE (fdo#106693)
fi-skl-guc: SKIP -> INCOMPLETE (fdo#106693)
fi-kbl-guc: SKIP -> INCOMPLETE (fdo#106693)
igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy:
fi-glk-j4005: PASS -> FAIL (fdo#106765)
igt@kms_flip@basic-flip-vs-dpms:
fi-glk-j4005: PASS -> DMESG-WARN (fdo#106000)
igt@kms_flip@basic-plain-flip:
fi-glk-j4005: PASS -> DMESG-WARN (fdo#106097)
==== Possible fixes ====
igt@gem_exec_suspend@basic-s3:
fi-glk-j4005: DMESG-WARN (fdo#106000) -> PASS +1
igt@kms_pipe_crc_basic@read-crc-pipe-b-frame-sequence:
fi-glk-j4005: FAIL (fdo#103481) -> PASS
igt@kms_pipe_crc_basic@suspend-read-crc-pipe-b:
fi-cnl-psr: DMESG-WARN (fdo#104951) -> PASS
fdo#102575 https://bugs.freedesktop.org/show_bug.cgi?id=102575
fdo#103481 https://bugs.freedesktop.org/show_bug.cgi?id=103481
fdo#104951 https://bugs.freedesktop.org/show_bug.cgi?id=104951
fdo#105086 https://bugs.freedesktop.org/show_bug.cgi?id=105086
fdo#106000 https://bugs.freedesktop.org/show_bug.cgi?id=106000
fdo#106097 https://bugs.freedesktop.org/show_bug.cgi?id=106097
fdo#106693 https://bugs.freedesktop.org/show_bug.cgi?id=106693
fdo#106765 https://bugs.freedesktop.org/show_bug.cgi?id=106765
== Participating hosts (40 -> 37) ==
Missing (3): fi-ilk-m540 fi-byt-squawks fi-skl-6700hq
== Build changes ==
* IGT: IGT_4509 -> IGTPW_1427
CI_DRM_4289: 0e963d962be75b4e3d3d1c884e1bf4600473096d @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_1427: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1427/
IGT_4509: c8f1ae58e1b7da17af4722a5ce5a9cd8b9a34059 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1427/issues.html
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 20+ messages in thread
* [igt-dev] ✗ Fi.CI.IGT: failure for igt/drv_module_reload: Revamp fault-injection (rev2)
2018-06-07 10:58 ` [igt-dev] " Chris Wilson
` (5 preceding siblings ...)
(?)
@ 2018-06-07 15:42 ` Patchwork
-1 siblings, 0 replies; 20+ messages in thread
From: Patchwork @ 2018-06-07 15:42 UTC (permalink / raw)
To: Chris Wilson; +Cc: igt-dev
== Series Details ==
Series: igt/drv_module_reload: Revamp fault-injection (rev2)
URL : https://patchwork.freedesktop.org/series/44363/
State : failure
== Summary ==
= CI Bug Log - changes from IGT_4508_full -> IGTPW_1424_full =
== Summary - FAILURE ==
Serious unknown changes coming with IGTPW_1424_full absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in IGTPW_1424_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/44363/revisions/2/mbox/
== Possible new issues ==
Here are the unknown changes that may have been introduced in IGTPW_1424_full:
=== IGT changes ===
==== Possible regressions ====
igt@drv_module_reload@basic-reload-inject:
shard-glk: PASS -> FAIL
shard-snb: PASS -> FAIL
shard-hsw: PASS -> FAIL
shard-kbl: PASS -> FAIL
shard-apl: PASS -> FAIL
==== Warnings ====
igt@gem_exec_schedule@deep-bsd1:
shard-kbl: SKIP -> PASS
igt@gem_exec_schedule@deep-bsd2:
shard-kbl: PASS -> SKIP +1
== Known issues ==
Here are the changes found in IGTPW_1424_full that come from known issues:
=== IGT changes ===
==== Issues hit ====
igt@kms_flip@2x-plain-flip-ts-check-interruptible:
shard-glk: PASS -> FAIL (fdo#100368) +2
igt@kms_flip_tiling@flip-to-y-tiled:
shard-glk: PASS -> FAIL (fdo#104724, fdo#103822)
igt@kms_setmode@basic:
shard-apl: PASS -> FAIL (fdo#99912)
==== Possible fixes ====
igt@drv_selftest@live_gtt:
shard-kbl: INCOMPLETE (fdo#103665) -> PASS
igt@gem_exec_basic@gtt-vebox:
shard-snb: INCOMPLETE (fdo#105411) -> SKIP
igt@gem_ppgtt@blt-vs-render-ctx0:
shard-kbl: INCOMPLETE (fdo#106023, fdo#103665) -> PASS
igt@kms_atomic_transition@1x-modeset-transitions-nonblocking-fencing:
shard-glk: FAIL (fdo#105703) -> PASS
igt@kms_flip_tiling@flip-to-x-tiled:
shard-glk: FAIL (fdo#104724, fdo#103822) -> PASS
igt@kms_frontbuffer_tracking@fbc-2p-shrfb-fliptrack:
shard-glk: FAIL (fdo#104724, fdo#103167) -> PASS
igt@kms_rotation_crc@primary-rotation-180:
shard-snb: FAIL (fdo#104724, fdo#103925) -> PASS
igt@testdisplay:
shard-glk: INCOMPLETE (k.org#198133, fdo#103359) -> 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#103925 https://bugs.freedesktop.org/show_bug.cgi?id=103925
fdo#104724 https://bugs.freedesktop.org/show_bug.cgi?id=104724
fdo#105411 https://bugs.freedesktop.org/show_bug.cgi?id=105411
fdo#105703 https://bugs.freedesktop.org/show_bug.cgi?id=105703
fdo#106023 https://bugs.freedesktop.org/show_bug.cgi?id=106023
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 ==
* IGT: IGT_4508 -> IGTPW_1424
* Linux: CI_DRM_4280 -> CI_DRM_4282
CI_DRM_4280: 967aa2f22752af3adc629b50e7d2ed2b7e061e44 @ git://anongit.freedesktop.org/gfx-ci/linux
CI_DRM_4282: c1064b9be065603680d060184da1a93d404dcf0c @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_1424: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1424/
IGT_4508: 78a68c905066beeefd24b3a4518d817a811e8798 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1424/shards.html
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 20+ messages in thread
* [igt-dev] ✗ Fi.CI.BAT: failure for igt/drv_module_reload: Revamp fault-injection (rev4)
2018-06-07 10:58 ` [igt-dev] " Chris Wilson
` (6 preceding siblings ...)
(?)
@ 2018-06-08 12:38 ` Patchwork
-1 siblings, 0 replies; 20+ messages in thread
From: Patchwork @ 2018-06-08 12:38 UTC (permalink / raw)
To: Chris Wilson; +Cc: igt-dev
== Series Details ==
Series: igt/drv_module_reload: Revamp fault-injection (rev4)
URL : https://patchwork.freedesktop.org/series/44363/
State : failure
== Summary ==
= CI Bug Log - changes from CI_DRM_4293 -> IGTPW_1434 =
== Summary - FAILURE ==
Serious unknown changes coming with IGTPW_1434 absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in IGTPW_1434, 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/44363/revisions/4/mbox/
== Possible new issues ==
Here are the unknown changes that may have been introduced in IGTPW_1434:
=== IGT changes ===
==== Possible regressions ====
igt@drv_module_reload@basic-reload-inject:
fi-skl-6260u: PASS -> DMESG-WARN
fi-snb-2600: PASS -> DMESG-WARN
fi-kbl-7560u: PASS -> DMESG-WARN
fi-kbl-7500u: PASS -> DMESG-WARN
fi-cnl-y3: NOTRUN -> DMESG-WARN
fi-ivb-3520m: PASS -> DMESG-WARN
fi-hsw-4770: PASS -> DMESG-WARN
fi-kbl-guc: PASS -> DMESG-FAIL
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-cfl-s3: PASS -> DMESG-WARN
fi-snb-2520m: PASS -> DMESG-WARN
fi-cfl-8700k: PASS -> DMESG-WARN
fi-gdg-551: PASS -> INCOMPLETE
fi-hsw-peppy: 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-FAIL
fi-bsw-n3050: PASS -> DMESG-WARN
fi-cfl-guc: PASS -> DMESG-FAIL
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: PASS -> DMESG-WARN
fi-ivb-3770: PASS -> DMESG-WARN
==== Warnings ====
igt@kms_pipe_crc_basic@read-crc-pipe-c:
fi-glk-j4005: PASS -> SKIP
== Known issues ==
Here are the changes found in IGTPW_1434 that come from known issues:
=== IGT changes ===
==== Issues hit ====
igt@drv_module_reload@basic-reload:
fi-kbl-7567u: PASS -> DMESG-WARN (fdo#104238)
igt@gem_mmap_gtt@basic-small-bo-tiledx:
fi-gdg-551: PASS -> FAIL (fdo#102575)
igt@gem_ringfill@basic-default-hang:
fi-glk-j4005: PASS -> DMESG-WARN (fdo#106000)
igt@gvt_basic@invalid-placeholder-test:
fi-cfl-guc: SKIP -> INCOMPLETE (fdo#106693)
fi-skl-guc: SKIP -> INCOMPLETE (fdo#106693)
fi-kbl-guc: SKIP -> INCOMPLETE (fdo#106693)
igt@kms_frontbuffer_tracking@basic:
fi-hsw-peppy: PASS -> DMESG-FAIL (fdo#106103, fdo#102614)
==== Possible fixes ====
igt@gem_exec_fence@basic-await-default:
fi-glk-j4005: DMESG-WARN (fdo#106000) -> PASS +1
igt@gem_sync@basic-many-each:
fi-cnl-y3: INCOMPLETE (fdo#105086) -> PASS
==== Warnings ====
igt@kms_pipe_crc_basic@read-crc-pipe-b-frame-sequence:
fi-glk-j4005: DMESG-WARN (fdo#106000, fdo#106097) -> FAIL (fdo#103481)
fdo#102575 https://bugs.freedesktop.org/show_bug.cgi?id=102575
fdo#102614 https://bugs.freedesktop.org/show_bug.cgi?id=102614
fdo#103481 https://bugs.freedesktop.org/show_bug.cgi?id=103481
fdo#104238 https://bugs.freedesktop.org/show_bug.cgi?id=104238
fdo#105086 https://bugs.freedesktop.org/show_bug.cgi?id=105086
fdo#106000 https://bugs.freedesktop.org/show_bug.cgi?id=106000
fdo#106097 https://bugs.freedesktop.org/show_bug.cgi?id=106097
fdo#106103 https://bugs.freedesktop.org/show_bug.cgi?id=106103
fdo#106693 https://bugs.freedesktop.org/show_bug.cgi?id=106693
== Participating hosts (42 -> 37) ==
Missing (5): fi-byt-j1900 fi-ilk-m540 fi-byt-squawks fi-bdw-5557u fi-skl-6700hq
== Build changes ==
* IGT: IGT_4511 -> IGTPW_1434
CI_DRM_4293: 70d3bb47919b2acc66aa1d7a6566cdf60a0cf66d @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_1434: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1434/
IGT_4511: 44b837c9b498a2749d2564cbd8acb5a57da02217 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1434/issues.html
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 20+ messages in thread
* [igt-dev] ✗ Fi.CI.BAT: failure for igt/drv_module_reload: Revamp fault-injection (rev4)
2018-06-07 10:58 ` [igt-dev] " Chris Wilson
` (7 preceding siblings ...)
(?)
@ 2018-06-09 10:30 ` Patchwork
-1 siblings, 0 replies; 20+ messages in thread
From: Patchwork @ 2018-06-09 10:30 UTC (permalink / raw)
To: Chris Wilson; +Cc: igt-dev
== Series Details ==
Series: igt/drv_module_reload: Revamp fault-injection (rev4)
URL : https://patchwork.freedesktop.org/series/44363/
State : failure
== Summary ==
= CI Bug Log - changes from CI_DRM_4294 -> IGTPW_1437 =
== Summary - FAILURE ==
Serious unknown changes coming with IGTPW_1437 absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in IGTPW_1437, 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/44363/revisions/4/mbox/
== Possible new issues ==
Here are the unknown changes that may have been introduced in IGTPW_1437:
=== IGT changes ===
==== Possible regressions ====
igt@drv_module_reload@basic-reload-inject:
fi-skl-6260u: PASS -> DMESG-WARN
fi-snb-2600: PASS -> DMESG-WARN
fi-kbl-7560u: PASS -> DMESG-WARN
fi-kbl-7500u: PASS -> DMESG-WARN
fi-cnl-y3: NOTRUN -> DMESG-WARN
fi-ivb-3520m: PASS -> DMESG-WARN
fi-hsw-4770: PASS -> DMESG-WARN
fi-kbl-guc: PASS -> DMESG-FAIL
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-cfl-8700k: PASS -> DMESG-WARN
fi-gdg-551: PASS -> INCOMPLETE
fi-hsw-peppy: 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-FAIL
fi-bsw-n3050: PASS -> DMESG-WARN
fi-cfl-guc: PASS -> DMESG-FAIL
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
==== Warnings ====
igt@gem_exec_gttfill@basic:
fi-pnv-d510: SKIP -> PASS
== Known issues ==
Here are the changes found in IGTPW_1437 that come from known issues:
=== IGT changes ===
==== Issues hit ====
igt@gvt_basic@invalid-placeholder-test:
fi-cfl-guc: SKIP -> INCOMPLETE (fdo#106693)
fi-skl-guc: SKIP -> INCOMPLETE (fdo#106693)
fi-kbl-guc: SKIP -> INCOMPLETE (fdo#106693)
igt@kms_addfb_basic@bad-pitch-63:
fi-glk-j4005: PASS -> DMESG-WARN (fdo#105719)
igt@kms_busy@basic-flip-c:
fi-glk-j4005: PASS -> DMESG-WARN (fdo#106097) +3
igt@kms_frontbuffer_tracking@basic:
fi-hsw-4200u: PASS -> DMESG-FAIL (fdo#102614, fdo#106103)
==== Possible fixes ====
igt@gem_sync@basic-many-each:
fi-cnl-y3: INCOMPLETE (fdo#105086) -> PASS
igt@kms_chamelium@dp-crc-fast:
fi-kbl-7500u: DMESG-FAIL (fdo#103841) -> PASS
igt@kms_flip@basic-flip-vs-dpms:
fi-glk-j4005: DMESG-WARN (fdo#106000) -> PASS
fdo#102614 https://bugs.freedesktop.org/show_bug.cgi?id=102614
fdo#103841 https://bugs.freedesktop.org/show_bug.cgi?id=103841
fdo#105086 https://bugs.freedesktop.org/show_bug.cgi?id=105086
fdo#105719 https://bugs.freedesktop.org/show_bug.cgi?id=105719
fdo#106000 https://bugs.freedesktop.org/show_bug.cgi?id=106000
fdo#106097 https://bugs.freedesktop.org/show_bug.cgi?id=106097
fdo#106103 https://bugs.freedesktop.org/show_bug.cgi?id=106103
fdo#106693 https://bugs.freedesktop.org/show_bug.cgi?id=106693
== Participating hosts (41 -> 36) ==
Additional (1): fi-bxt-dsi
Missing (6): fi-ilk-m540 fi-skl-gvtdvm fi-byt-j1900 fi-byt-squawks fi-snb-2520m fi-skl-6700hq
== Build changes ==
* IGT: IGT_4512 -> IGTPW_1437
CI_DRM_4294: af0889384edc6de2f91494325d571c66dffea83f @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_1437: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1437/
IGT_4512: 093fa482371795c3aa246509994eb21907f501b9 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1437/issues.html
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 20+ messages in thread
* [igt-dev] ✗ Fi.CI.BAT: failure for igt/drv_module_reload: Revamp fault-injection (rev4)
2018-06-07 10:58 ` [igt-dev] " Chris Wilson
` (8 preceding siblings ...)
(?)
@ 2018-06-11 18:44 ` Patchwork
-1 siblings, 0 replies; 20+ messages in thread
From: Patchwork @ 2018-06-11 18:44 UTC (permalink / raw)
To: Chris Wilson; +Cc: igt-dev
== Series Details ==
Series: igt/drv_module_reload: Revamp fault-injection (rev4)
URL : https://patchwork.freedesktop.org/series/44363/
State : failure
== Summary ==
= CI Bug Log - changes from CI_DRM_4302 -> IGTPW_1440 =
== Summary - FAILURE ==
Serious unknown changes coming with IGTPW_1440 absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in IGTPW_1440, 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/44363/revisions/4/mbox/
== Possible new issues ==
Here are the unknown changes that may have been introduced in IGTPW_1440:
=== IGT changes ===
==== Possible regressions ====
igt@drv_module_reload@basic-reload-inject:
fi-kbl-guc: PASS -> DMESG-FAIL
fi-gdg-551: PASS -> INCOMPLETE
fi-skl-guc: PASS -> DMESG-FAIL
fi-cfl-guc: PASS -> DMESG-FAIL
==== Warnings ====
igt@gem_exec_gttfill@basic:
fi-pnv-d510: SKIP -> PASS
igt@gem_mmap_gtt@basic-small-bo-tiledy:
fi-gdg-551: PASS -> SKIP
== Known issues ==
Here are the changes found in IGTPW_1440 that come from known issues:
=== IGT changes ===
==== Issues hit ====
igt@gem_exec_suspend@basic-s3:
fi-glk-j4005: PASS -> DMESG-WARN (fdo#106097)
igt@gvt_basic@invalid-placeholder-test:
fi-cfl-guc: SKIP -> INCOMPLETE (fdo#106693)
fi-skl-guc: SKIP -> INCOMPLETE (fdo#106693)
fi-kbl-guc: SKIP -> INCOMPLETE (fdo#106693)
igt@kms_frontbuffer_tracking@basic:
fi-hsw-peppy: PASS -> DMESG-FAIL (fdo#106103, fdo#102614)
==== Possible fixes ====
igt@gem_mmap_gtt@basic-small-bo-tiledx:
fi-gdg-551: FAIL (fdo#102575) -> SKIP
igt@kms_flip@basic-flip-vs-wf_vblank:
fi-glk-j4005: FAIL (fdo#100368) -> PASS
igt@kms_pipe_crc_basic@read-crc-pipe-b-frame-sequence:
fi-glk-j4005: FAIL (fdo#103481) -> PASS
igt@kms_pipe_crc_basic@read-crc-pipe-c:
fi-glk-j4005: DMESG-WARN (fdo#106000, fdo#106097) -> PASS
igt@kms_pipe_crc_basic@suspend-read-crc-pipe-b:
fi-cnl-psr: DMESG-WARN (fdo#104951) -> PASS
fdo#100368 https://bugs.freedesktop.org/show_bug.cgi?id=100368
fdo#102575 https://bugs.freedesktop.org/show_bug.cgi?id=102575
fdo#102614 https://bugs.freedesktop.org/show_bug.cgi?id=102614
fdo#103481 https://bugs.freedesktop.org/show_bug.cgi?id=103481
fdo#104951 https://bugs.freedesktop.org/show_bug.cgi?id=104951
fdo#106000 https://bugs.freedesktop.org/show_bug.cgi?id=106000
fdo#106097 https://bugs.freedesktop.org/show_bug.cgi?id=106097
fdo#106103 https://bugs.freedesktop.org/show_bug.cgi?id=106103
fdo#106693 https://bugs.freedesktop.org/show_bug.cgi?id=106693
== Participating hosts (41 -> 37) ==
Additional (1): fi-bdw-gvtdvm
Missing (5): fi-ctg-p8600 fi-ilk-m540 fi-byt-squawks fi-bsw-cyan fi-skl-6700hq
== Build changes ==
* IGT: IGT_4513 -> IGTPW_1440
CI_DRM_4302: ef129f260b2bd362959651fe8e20e369bf3c977e @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_1440: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1440/
IGT_4513: 7b6838781441cfbc7f6c18f421f127dfb02b44cf @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1440/issues.html
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 20+ messages in thread
* [PATCH i-g-t] igt/drv_module_reload: Revamp fault-injection
2018-07-12 8:57 [PATCH i-g-t] igt/drv_module_reload: Revamp fault-injection Chris Wilson
@ 2018-07-12 8:59 ` Chris Wilson
0 siblings, 0 replies; 20+ messages in thread
From: Chris Wilson @ 2018-07-12 8:59 UTC (permalink / raw)
To: intel-gfx; +Cc: igt-dev
The current method of checking for a failed module load is flawed, as we
only report the error on probing it is not being reported back by
modprobe. So we have to dig inside the module_parameters while the
module is still loaded to discover the error.
v2: Expect i915.inject_load_failure to be zero on success
v3: Do a full i915 unload to ensure fbdev is unbound in cases where it
managed to bind itself before failure injection.
v4: Disable the display (temporary) to minimally fix up the test case
before more regressions slip by.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Michał Winiarski <michal.winiarski@intel.com>
Cc: Imre Deak <imre.deak@intel.com>
Reviewed-by: Michał Winiarski <michal.winiarski@intel.com> #v3
---
tests/drv_module_reload.c | 52 +++++++++++++++++++++++++++++++++++----
1 file changed, 47 insertions(+), 5 deletions(-)
diff --git a/tests/drv_module_reload.c b/tests/drv_module_reload.c
index 3046d8227..bb26368e7 100644
--- a/tests/drv_module_reload.c
+++ b/tests/drv_module_reload.c
@@ -234,6 +234,45 @@ reload(const char *opts_i915)
return err;
}
+static int open_parameters(const char *module_name)
+{
+ char path[256];
+
+ snprintf(path, sizeof(path), "/sys/module/%s/parameters", module_name);
+ return open(path, O_RDONLY);
+}
+
+static int
+inject_fault(const char *module_name, const char *opt, int fault)
+{
+#define XXX_NO_DISPLAY "disable_display=1 "
+ char buf[1024];
+ int dir;
+
+ igt_assert(fault > 0);
+ snprintf(buf, sizeof(buf), XXX_NO_DISPLAY "%s=%d", opt, fault);
+
+ if (igt_kmod_load(module_name, buf)) {
+ igt_warn("Failed to load module '%s' with options '%s'\n",
+ module_name, buf);
+ return 1;
+ }
+
+ dir = open_parameters(module_name);
+ igt_sysfs_scanf(dir, opt, "%d", &fault);
+ close(dir);
+
+ igt_debug("Loaded '%s %s', result=%d\n", module_name, buf, fault);
+
+ if (strcmp(module_name, "i915")) /* XXX better ideas! */
+ igt_kmod_unload(module_name, 0);
+ else
+ igt_i915_driver_unload();
+
+ return fault;
+#undef XXX_NO_DISPLAY
+}
+
static void
gem_sanitycheck(void)
{
@@ -320,12 +359,15 @@ igt_main
igt_assert_eq(reload("disable_display=1"), 0);
igt_subtest("basic-reload-inject") {
- char buf[64];
int i = 0;
- do {
- snprintf(buf, sizeof(buf),
- "inject_load_failure=%d", ++i);
- } while (reload(buf));
+
+ igt_i915_driver_unload();
+
+ while (inject_fault("i915", "inject_load_failure", ++i) == 0)
+ ;
+
+ /* We expect to hit at least one fault! */
+ igt_assert(i > 1);
}
igt_fixture {
--
2.18.0
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 20+ messages in thread
* [PATCH i-g-t] igt/drv_module_reload: Revamp fault-injection
@ 2018-07-12 8:57 Chris Wilson
2018-07-12 8:59 ` Chris Wilson
0 siblings, 1 reply; 20+ messages in thread
From: Chris Wilson @ 2018-07-12 8:57 UTC (permalink / raw)
To: intel-gfx; +Cc: igt-dev
The current method of checking for a failed module load is flawed, as we
only report the error on probing it is not being reported back by
modprobe. So we have to dig inside the module_parameters while the
module is still loaded to discover the error.
v2: Expect i915.inject_load_failure to be zero on success
v3: Do a full i915 unload to ensure fbdev is unbound in cases where it
managed to bind itself before failure injection.
v4: Disable the display (temporary) to minimally fix up the test case
before more regressions slip by.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Michał Winiarski <michal.winiarski@intel.com>
Cc: Imre Deak <imre.deak@intel.com>
Reviewed-by: Michał Winiarski <michal.winiarski@intel.com> #v3
---
tests/drv_module_reload.c | 52 +++++++++++++++++++++++++++++++++++----
1 file changed, 47 insertions(+), 5 deletions(-)
diff --git a/tests/drv_module_reload.c b/tests/drv_module_reload.c
index 3046d8227..652bb3272 100644
--- a/tests/drv_module_reload.c
+++ b/tests/drv_module_reload.c
@@ -234,6 +234,45 @@ reload(const char *opts_i915)
return err;
}
+static int open_parameters(const char *module_name)
+{
+ char path[256];
+
+ snprintf(path, sizeof(path), "/sys/module/%s/parameters", module_name);
+ return open(path, O_RDONLY);
+}
+
+static int
+inject_fault(const char *module_name, const char *opt, int fault)
+{
+#define XXX_NO_DISPLAY "disable_display=1"
+ char buf[1024];
+ int dir;
+
+ igt_assert(fault > 0);
+ snprintf(buf, sizeof(buf), XXX_NO_DISPLAY "%s=%d", opt, fault);
+
+ if (igt_kmod_load(module_name, buf)) {
+ igt_warn("Failed to load module '%s' with options '%s'\n",
+ module_name, buf);
+ return 1;
+ }
+
+ dir = open_parameters(module_name);
+ igt_sysfs_scanf(dir, opt, "%d", &fault);
+ close(dir);
+
+ igt_debug("Loaded '%s %s', result=%d\n", module_name, buf, fault);
+
+ if (strcmp(module_name, "i915")) /* XXX better ideas! */
+ igt_kmod_unload(module_name, 0);
+ else
+ igt_i915_driver_unload();
+
+ return fault;
+#undef XXX_NO_DISPLAY
+}
+
static void
gem_sanitycheck(void)
{
@@ -320,12 +359,15 @@ igt_main
igt_assert_eq(reload("disable_display=1"), 0);
igt_subtest("basic-reload-inject") {
- char buf[64];
int i = 0;
- do {
- snprintf(buf, sizeof(buf),
- "inject_load_failure=%d", ++i);
- } while (reload(buf));
+
+ igt_i915_driver_unload();
+
+ while (inject_fault("i915", "inject_load_failure", ++i) == 0)
+ ;
+
+ /* We expect to hit at least one fault! */
+ igt_assert(i > 1);
}
igt_fixture {
--
2.18.0
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 20+ messages in thread
* [PATCH i-g-t] igt/drv_module_reload: Revamp fault-injection
@ 2018-06-27 21:20 Chris Wilson
0 siblings, 0 replies; 20+ messages in thread
From: Chris Wilson @ 2018-06-27 21:20 UTC (permalink / raw)
To: igt-dev; +Cc: intel-gfx
The current method of checking for a failed module load is flawed, as we
only report the error on probing it is not being reported back by
modprobe. So we have to dig inside the module_parameters while the
module is still loaded to discover the error.
v2: Expect i915.inject_load_failure to be zero on success
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Michał Winiarski <michal.winiarski@intel.com>
Cc: Imre Deak <imre.deak@intel.com>
Reviewed-by: Michał Winiarski <michal.winiarski@intel.com>
---
tests/drv_module_reload.c | 47 ++++++++++++++++++++++++++++++++++-----
1 file changed, 42 insertions(+), 5 deletions(-)
diff --git a/tests/drv_module_reload.c b/tests/drv_module_reload.c
index 3046d8227..57e5b50ec 100644
--- a/tests/drv_module_reload.c
+++ b/tests/drv_module_reload.c
@@ -234,6 +234,40 @@ reload(const char *opts_i915)
return err;
}
+static int open_parameters(const char *module_name)
+{
+ char path[256];
+
+ snprintf(path, sizeof(path), "/sys/module/%s/parameters", module_name);
+ return open(path, O_RDONLY);
+}
+
+static int
+inject_fault(const char *module_name, const char *opt, int fault)
+{
+ char buf[1024];
+ int dir;
+
+ igt_assert(fault > 0);
+ snprintf(buf, sizeof(buf), "%s=%d", opt, fault);
+
+ if (igt_kmod_load(module_name, buf)) {
+ igt_warn("Failed to load module '%s' with options '%s'\n",
+ module_name, buf);
+ return 1;
+ }
+
+ dir = open_parameters(module_name);
+ igt_sysfs_scanf(dir, opt, "%d", &fault);
+ close(dir);
+
+ igt_debug("Loaded '%s %s', result=%d\n", module_name, buf, fault);
+
+ igt_kmod_unload(module_name, 0);
+
+ return fault;
+}
+
static void
gem_sanitycheck(void)
{
@@ -320,12 +354,15 @@ igt_main
igt_assert_eq(reload("disable_display=1"), 0);
igt_subtest("basic-reload-inject") {
- char buf[64];
int i = 0;
- do {
- snprintf(buf, sizeof(buf),
- "inject_load_failure=%d", ++i);
- } while (reload(buf));
+
+ igt_i915_driver_unload();
+
+ while (inject_fault("i915", "inject_load_failure", ++i) == 0)
+ ;
+
+ /* We expect to hit at least one fault! */
+ igt_assert(i > 1);
}
igt_fixture {
--
2.18.0
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 20+ messages in thread
* Re: [PATCH i-g-t] igt/drv_module_reload: Revamp fault-injection
2018-06-06 14:18 ` Michał Winiarski
@ 2018-06-06 14:30 ` Chris Wilson
0 siblings, 0 replies; 20+ messages in thread
From: Chris Wilson @ 2018-06-06 14:30 UTC (permalink / raw)
To: Michał Winiarski; +Cc: igt-dev, intel-gfx
Quoting Michał Winiarski (2018-06-06 15:18:14)
> On Wed, Jun 06, 2018 at 02:09:16PM +0100, Chris Wilson wrote:
> > The current method of checking for a failed module load is flawed, as we
> > only report the error on probing it is not being reported back by
> > modprobe. So we have to dig inside the module_parameters while the
> > module is still loaded to discover the error.
> >
> > Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> > Cc: Michał Winiarski <michal.winiarski@intel.com>
> > Cc: Imre Deak <imre.deak@intel.com>
>
> That also works.
>
> Reviewed-by: Michał Winiarski <michal.winiarski@intel.com>
>
> Should we push now? Or delay until we fix i915?
We wait a bit to fix i915. But the corresponding kernel patch should be
clean to go (well hopefully v2!).
-Chris
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [PATCH i-g-t] igt/drv_module_reload: Revamp fault-injection
2018-06-06 13:09 Chris Wilson
@ 2018-06-06 14:18 ` Michał Winiarski
2018-06-06 14:30 ` Chris Wilson
0 siblings, 1 reply; 20+ messages in thread
From: Michał Winiarski @ 2018-06-06 14:18 UTC (permalink / raw)
To: Chris Wilson; +Cc: igt-dev, intel-gfx
On Wed, Jun 06, 2018 at 02:09:16PM +0100, Chris Wilson wrote:
> The current method of checking for a failed module load is flawed, as we
> only report the error on probing it is not being reported back by
> modprobe. So we have to dig inside the module_parameters while the
> module is still loaded to discover the error.
>
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> Cc: Michał Winiarski <michal.winiarski@intel.com>
> Cc: Imre Deak <imre.deak@intel.com>
That also works.
Reviewed-by: Michał Winiarski <michal.winiarski@intel.com>
Should we push now? Or delay until we fix i915?
-Michał
> ---
> tests/drv_module_reload.c | 48 +++++++++++++++++++++++++++++++++++----
> 1 file changed, 43 insertions(+), 5 deletions(-)
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 20+ messages in thread
* [PATCH i-g-t] igt/drv_module_reload: Revamp fault-injection
@ 2018-06-06 13:09 Chris Wilson
2018-06-06 14:18 ` Michał Winiarski
0 siblings, 1 reply; 20+ messages in thread
From: Chris Wilson @ 2018-06-06 13:09 UTC (permalink / raw)
To: intel-gfx; +Cc: igt-dev
The current method of checking for a failed module load is flawed, as we
only report the error on probing it is not being reported back by
modprobe. So we have to dig inside the module_parameters while the
module is still loaded to discover the error.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Michał Winiarski <michal.winiarski@intel.com>
Cc: Imre Deak <imre.deak@intel.com>
---
tests/drv_module_reload.c | 48 +++++++++++++++++++++++++++++++++++----
1 file changed, 43 insertions(+), 5 deletions(-)
diff --git a/tests/drv_module_reload.c b/tests/drv_module_reload.c
index 092982960..e6bc354b6 100644
--- a/tests/drv_module_reload.c
+++ b/tests/drv_module_reload.c
@@ -234,6 +234,41 @@ reload(const char *opts_i915)
return err;
}
+static int open_parameters(const char *module_name)
+{
+ char path[256];
+
+ snprintf(path, sizeof(path), "/sys/module/%s/parameters", module_name);
+ return open(path, O_RDONLY);
+}
+
+static int
+inject_fault(const char *module_name, const char *opt, int fault)
+{
+ char buf[1024];
+ int dir, err;
+
+ snprintf(buf, sizeof(buf), "%s=%d", opt, fault);
+
+ if (igt_kmod_load(module_name, buf)) {
+ igt_warn("Failed to load module '%s' with options '%s'\n",
+ module_name, buf);
+ return 1;
+ }
+
+ err = 1;
+ dir = open_parameters(module_name);
+ igt_sysfs_scanf(dir, opt, "%d", &err);
+ close(dir);
+
+ igt_kmod_unload(module_name, 0);
+
+ if (err < 0)
+ return err;
+
+ return 0;
+}
+
static void
gem_sanitycheck(void)
{
@@ -323,12 +358,15 @@ igt_main
igt_assert_eq(reload("disable_display=1"), 0);
igt_subtest("basic-reload-inject") {
- char buf[64];
int i = 0;
- do {
- snprintf(buf, sizeof(buf),
- "inject_load_failure=%d", ++i);
- } while (reload(buf));
+
+ igt_i915_driver_unload();
+
+ while (inject_fault("i915", "inject_load_failure", ++i) < 0)
+ ;
+
+ /* We expect to hit at least one fault! */
+ igt_assert(i > 1);
}
igt_fixture {
--
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] 20+ messages in thread
end of thread, other threads:[~2018-07-12 8:59 UTC | newest]
Thread overview: 20+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-06-07 10:58 [PATCH i-g-t] igt/drv_module_reload: Revamp fault-injection Chris Wilson
2018-06-07 10:58 ` [igt-dev] " Chris Wilson
2018-06-07 11:31 ` [igt-dev] ✗ Fi.CI.BAT: failure for igt/drv_module_reload: Revamp fault-injection (rev2) Patchwork
2018-06-07 11:43 ` [PATCH i-g-t] igt/drv_module_reload: Revamp fault-injection Chris Wilson
2018-06-07 11:43 ` [igt-dev] " Chris Wilson
2018-06-07 12:53 ` [igt-dev] ✗ Fi.CI.BAT: failure for igt/drv_module_reload: Revamp fault-injection (rev3) Patchwork
2018-06-07 12:57 ` Chris Wilson
2018-06-07 12:59 ` [PATCH i-g-t] HAX igt/drv_module_reload: Revamp fault-injection Chris Wilson
2018-06-07 12:59 ` [igt-dev] " Chris Wilson
2018-06-07 13:33 ` [igt-dev] ✗ Fi.CI.BAT: failure for igt/drv_module_reload: Revamp fault-injection (rev4) Patchwork
2018-06-07 15:42 ` [igt-dev] ✗ Fi.CI.IGT: failure for igt/drv_module_reload: Revamp fault-injection (rev2) Patchwork
2018-06-08 12:38 ` [igt-dev] ✗ Fi.CI.BAT: failure for igt/drv_module_reload: Revamp fault-injection (rev4) Patchwork
2018-06-09 10:30 ` Patchwork
2018-06-11 18:44 ` Patchwork
-- strict thread matches above, loose matches on Subject: below --
2018-07-12 8:57 [PATCH i-g-t] igt/drv_module_reload: Revamp fault-injection Chris Wilson
2018-07-12 8:59 ` Chris Wilson
2018-06-27 21:20 Chris Wilson
2018-06-06 13:09 Chris Wilson
2018-06-06 14:18 ` Michał Winiarski
2018-06-06 14:30 ` Chris Wilson
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.