All of lore.kernel.org
 help / color / mirror / Atom feed
* [igt-dev] [PATCH i-g-t] tests/i915: Add simple test for HuC
@ 2019-05-17 17:37 Michal Wajdeczko
  2019-05-17 17:48 ` Chris Wilson
                   ` (2 more replies)
  0 siblings, 3 replies; 8+ messages in thread
From: Michal Wajdeczko @ 2019-05-17 17:37 UTC (permalink / raw)
  To: igt-dev; +Cc: Tony Ye

Add simple test to check that HuC firmware is available.
Use existing I915_GETPARAM and debugfs entry.

Signed-off-by: Michal Wajdeczko <michal.wajdeczko@intel.com>
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Cc: Martin Peres <martin.peres@linux.intel.com>
Cc: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Tony Ye <tony.ye@intel.com>
---
 tests/Makefile.sources |  3 ++
 tests/i915/i915_huc.c  | 74 ++++++++++++++++++++++++++++++++++++++++++
 tests/meson.build      |  1 +
 3 files changed, 78 insertions(+)
 create mode 100644 tests/i915/i915_huc.c

diff --git a/tests/Makefile.sources b/tests/Makefile.sources
index 7f921f6c..dfa3fcd3 100644
--- a/tests/Makefile.sources
+++ b/tests/Makefile.sources
@@ -475,6 +475,9 @@ i915_getparams_basic_SOURCES = i915/i915_getparams_basic.c
 TESTS_progs += i915_hangman
 i915_hangman_SOURCES = i915/i915_hangman.c
 
+TESTS_progs += i915_huc
+i915_huc_SOURCES = i915/i915_huc.c
+
 TESTS_progs += i915_module_load
 i915_module_load_SOURCES = i915/i915_module_load.c
 
diff --git a/tests/i915/i915_huc.c b/tests/i915/i915_huc.c
new file mode 100644
index 00000000..10cd5d6f
--- /dev/null
+++ b/tests/i915/i915_huc.c
@@ -0,0 +1,74 @@
+/* SPDX-License-Identifier: MIT */
+/*
+ * Copyright © 2019 Intel Corporation
+ */
+
+#include "igt.h"
+#include <fcntl.h>
+#include <i915_drm.h>
+#include <sys/ioctl.h>
+
+IGT_TEST_DESCRIPTION("Check that HuC firmware is available.");
+
+static bool has_guc(int fd)
+{
+	uint32_t devid = intel_get_drm_devid(fd);
+
+	return IS_SKYLAKE(devid) || IS_BROXTON(devid) ||
+	       IS_KABYLAKE(devid) || IS_COFFEELAKE(devid) ||
+	       IS_GEMINILAKE(devid) || IS_ICELAKE(devid);
+}
+
+static bool has_huc(int fd)
+{
+	return has_guc(fd);
+}
+
+static void check_huc_status(int device)
+{
+	int loaded = 0;
+	drm_i915_getparam_t gp = {
+		.param = I915_PARAM_HUC_STATUS,
+		.value = &loaded,
+	};
+
+	igt_require(ioctl(device, DRM_IOCTL_I915_GETPARAM, &gp) == 0);
+	igt_assert_eq(loaded, 1);
+}
+
+#define HUC_STATUS_DEBUGFS_FILE "i915_huc_load_status"
+
+static void check_huc_info(int device)
+{
+	int fd = igt_debugfs_open(device, HUC_STATUS_DEBUGFS_FILE, O_RDONLY);
+	igt_assert_f(fd >= 0, "'%s' debugfs entry not found\n",
+		     HUC_STATUS_DEBUGFS_FILE);
+	close(fd);
+
+	igt_assert(igt_debugfs_search(device, HUC_STATUS_DEBUGFS_FILE,
+		   "status: fetch SUCCESS"));
+	igt_assert(igt_debugfs_search(device, HUC_STATUS_DEBUGFS_FILE,
+		   "load SUCCESS"));
+}
+
+igt_main
+{
+	int fd;
+
+	igt_fixture {
+		fd = drm_open_driver(DRIVER_INTEL);
+		igt_require_intel(fd);
+		igt_skip_on_f(!has_huc(fd),
+			      "HuC is not available on this platform\n");
+	}
+
+	igt_subtest("status")
+		check_huc_status(fd);
+
+	igt_subtest("info")
+		check_huc_info(fd);
+
+	igt_fixture {
+		close(fd);
+	}
+}
diff --git a/tests/meson.build b/tests/meson.build
index 351594fa..22ed165c 100644
--- a/tests/meson.build
+++ b/tests/meson.build
@@ -220,6 +220,7 @@ i915_progs = [
 	'i915_fb_tiling',
 	'i915_getparams_basic',
 	'i915_hangman',
+	'i915_huc',
 	'i915_module_load',
 	'i915_pm_backlight',
 	'i915_pm_lpsp',
-- 
2.19.2

_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* Re: [igt-dev] [PATCH i-g-t] tests/i915: Add simple test for HuC
  2019-05-17 17:37 [igt-dev] [PATCH i-g-t] tests/i915: Add simple test for HuC Michal Wajdeczko
@ 2019-05-17 17:48 ` Chris Wilson
  2019-05-17 18:47   ` Michal Wajdeczko
  2019-05-17 18:19 ` [igt-dev] ✓ Fi.CI.BAT: success for " Patchwork
  2019-05-18  7:06 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
  2 siblings, 1 reply; 8+ messages in thread
From: Chris Wilson @ 2019-05-17 17:48 UTC (permalink / raw)
  To: Michal Wajdeczko, igt-dev; +Cc: Tony Ye

Quoting Michal Wajdeczko (2019-05-17 18:37:53)
> Add simple test to check that HuC firmware is available.
> Use existing I915_GETPARAM and debugfs entry.
> 
> Signed-off-by: Michal Wajdeczko <michal.wajdeczko@intel.com>
> Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
> Cc: Martin Peres <martin.peres@linux.intel.com>
> Cc: Chris Wilson <chris@chris-wilson.co.uk>
> Cc: Tony Ye <tony.ye@intel.com>
> ---
>  tests/Makefile.sources |  3 ++
>  tests/i915/i915_huc.c  | 74 ++++++++++++++++++++++++++++++++++++++++++
>  tests/meson.build      |  1 +
>  3 files changed, 78 insertions(+)
>  create mode 100644 tests/i915/i915_huc.c
> 
> diff --git a/tests/Makefile.sources b/tests/Makefile.sources
> index 7f921f6c..dfa3fcd3 100644
> --- a/tests/Makefile.sources
> +++ b/tests/Makefile.sources
> @@ -475,6 +475,9 @@ i915_getparams_basic_SOURCES = i915/i915_getparams_basic.c
>  TESTS_progs += i915_hangman
>  i915_hangman_SOURCES = i915/i915_hangman.c
>  
> +TESTS_progs += i915_huc
> +i915_huc_SOURCES = i915/i915_huc.c
> +
>  TESTS_progs += i915_module_load
>  i915_module_load_SOURCES = i915/i915_module_load.c
>  
> diff --git a/tests/i915/i915_huc.c b/tests/i915/i915_huc.c
> new file mode 100644
> index 00000000..10cd5d6f
> --- /dev/null
> +++ b/tests/i915/i915_huc.c
> @@ -0,0 +1,74 @@
> +/* SPDX-License-Identifier: MIT */
> +/*
> + * Copyright © 2019 Intel Corporation
> + */
> +
> +#include "igt.h"
> +#include <fcntl.h>
> +#include <i915_drm.h>
> +#include <sys/ioctl.h>
> +
> +IGT_TEST_DESCRIPTION("Check that HuC firmware is available.");
> +
> +static bool has_guc(int fd)
> +{
> +       uint32_t devid = intel_get_drm_devid(fd);
> +
> +       return IS_SKYLAKE(devid) || IS_BROXTON(devid) ||
> +              IS_KABYLAKE(devid) || IS_COFFEELAKE(devid) ||
> +              IS_GEMINILAKE(devid) || IS_ICELAKE(devid);
> +}
> +
> +static bool has_huc(int fd)
> +{
> +       return has_guc(fd);
> +}
> +
> +static void check_huc_status(int device)
> +{
> +       int loaded = 0;
> +       drm_i915_getparam_t gp = {
> +               .param = I915_PARAM_HUC_STATUS,
> +               .value = &loaded,
> +       };
> +
> +       igt_require(ioctl(device, DRM_IOCTL_I915_GETPARAM, &gp) == 0);
> +       igt_assert_eq(loaded, 1);
> +}
> +
> +#define HUC_STATUS_DEBUGFS_FILE "i915_huc_load_status"
> +
> +static void check_huc_info(int device)
> +{
> +       int fd = igt_debugfs_open(device, HUC_STATUS_DEBUGFS_FILE, O_RDONLY);
> +       igt_assert_f(fd >= 0, "'%s' debugfs entry not found\n",
> +                    HUC_STATUS_DEBUGFS_FILE);

Debugfs may not exist...

> +       close(fd);
> +
> +       igt_assert(igt_debugfs_search(device, HUC_STATUS_DEBUGFS_FILE,
> +                  "status: fetch SUCCESS"));
> +       igt_assert(igt_debugfs_search(device, HUC_STATUS_DEBUGFS_FILE,
> +                  "load SUCCESS"));

and doesn't constitute ABI, so asserts are little ott.

> +}
> +
> +igt_main
> +{
> +       int fd;
> +
> +       igt_fixture {
> +               fd = drm_open_driver(DRIVER_INTEL);
> +               igt_require_intel(fd);
> +               igt_skip_on_f(!has_huc(fd),
> +                             "HuC is not available on this platform\n");

Hmm, HuC is optional as it may both be disabled by [default] parameter
and lack of fw [a plague on us who use builtin modules]. I think this
should be igt_require(huc_status(fd)) -- skips will be highlighted if we
regress.

And for the main test we would much rather have something behaviour that
only the HuC can provide. Is there not any challenge-response we can
send to the gpu for a simple ping? I have no idea what function the HuC
serves...

There's https://bugs.freedesktop.org/show_bug.cgi?id=110617 is we need
an example where loading the HuC breaks previously working video
playback.

As it stands this test fails on all my boxen, which afaict are
functioning perfectly fine.
-Chris
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* [igt-dev] ✓ Fi.CI.BAT: success for tests/i915: Add simple test for HuC
  2019-05-17 17:37 [igt-dev] [PATCH i-g-t] tests/i915: Add simple test for HuC Michal Wajdeczko
  2019-05-17 17:48 ` Chris Wilson
@ 2019-05-17 18:19 ` Patchwork
  2019-05-18  7:06 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
  2 siblings, 0 replies; 8+ messages in thread
From: Patchwork @ 2019-05-17 18:19 UTC (permalink / raw)
  To: Michal Wajdeczko; +Cc: igt-dev

== Series Details ==

Series: tests/i915: Add simple test for HuC
URL   : https://patchwork.freedesktop.org/series/60800/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_6096 -> IGTPW_3000
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

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

Known issues
------------

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

### IGT changes ###

#### Issues hit ####

  * igt@gem_exec_suspend@basic-s4-devices:
    - fi-blb-e6850:       [PASS][1] -> [INCOMPLETE][2] ([fdo#107718])
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/fi-blb-e6850/igt@gem_exec_suspend@basic-s4-devices.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3000/fi-blb-e6850/igt@gem_exec_suspend@basic-s4-devices.html

  * igt@i915_selftest@live_evict:
    - fi-bsw-kefka:       [PASS][3] -> [DMESG-WARN][4] ([fdo#107709])
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/fi-bsw-kefka/igt@i915_selftest@live_evict.html
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3000/fi-bsw-kefka/igt@i915_selftest@live_evict.html

  
#### Possible fixes ####

  * igt@gem_basic@bad-close:
    - fi-icl-u2:          [INCOMPLETE][5] ([fdo#107713]) -> [PASS][6]
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/fi-icl-u2/igt@gem_basic@bad-close.html
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3000/fi-icl-u2/igt@gem_basic@bad-close.html

  * igt@gem_cpu_reloc@basic:
    - {fi-icl-y}:         [INCOMPLETE][7] ([fdo#107713] / [fdo#110246]) -> [PASS][8]
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/fi-icl-y/igt@gem_cpu_reloc@basic.html
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3000/fi-icl-y/igt@gem_cpu_reloc@basic.html
    - {fi-icl-u3}:        [INCOMPLETE][9] ([fdo#107713] / [fdo#110246]) -> [PASS][10]
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/fi-icl-u3/igt@gem_cpu_reloc@basic.html
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3000/fi-icl-u3/igt@gem_cpu_reloc@basic.html

  
#### Warnings ####

  * igt@i915_selftest@live_hangcheck:
    - fi-apl-guc:         [INCOMPLETE][11] ([fdo#103927] / [fdo#110624]) -> [DMESG-FAIL][12] ([fdo#110620])
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/fi-apl-guc/igt@i915_selftest@live_hangcheck.html
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3000/fi-apl-guc/igt@i915_selftest@live_hangcheck.html

  * igt@runner@aborted:
    - fi-apl-guc:         [FAIL][13] ([fdo#110624]) -> [FAIL][14] ([fdo#110622])
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/fi-apl-guc/igt@runner@aborted.html
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3000/fi-apl-guc/igt@runner@aborted.html

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

  [fdo#103927]: https://bugs.freedesktop.org/show_bug.cgi?id=103927
  [fdo#107709]: https://bugs.freedesktop.org/show_bug.cgi?id=107709
  [fdo#107713]: https://bugs.freedesktop.org/show_bug.cgi?id=107713
  [fdo#107718]: https://bugs.freedesktop.org/show_bug.cgi?id=107718
  [fdo#110246]: https://bugs.freedesktop.org/show_bug.cgi?id=110246
  [fdo#110620]: https://bugs.freedesktop.org/show_bug.cgi?id=110620
  [fdo#110622]: https://bugs.freedesktop.org/show_bug.cgi?id=110622
  [fdo#110624]: https://bugs.freedesktop.org/show_bug.cgi?id=110624


Participating hosts (51 -> 45)
------------------------------

  Additional (2): fi-skl-lmem fi-cml-u 
  Missing    (8): fi-ilk-m540 fi-hsw-4200u fi-byt-squawks fi-bsw-cyan fi-ctg-p8600 fi-byt-clapper fi-bdw-samus fi-kbl-r 


Build changes
-------------

  * IGT: IGT_4996 -> IGTPW_3000

  CI_DRM_6096: beb32d3348a566a6aafa292c65e2d60a610479c4 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_3000: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3000/
  IGT_4996: 6fe5d254ec1b9b47d61408e1b49a7339876bf1e7 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools



== Testlist changes ==

+igt@i915_huc@info
+igt@i915_huc@status

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3000/
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* Re: [igt-dev] [PATCH i-g-t] tests/i915: Add simple test for HuC
  2019-05-17 17:48 ` Chris Wilson
@ 2019-05-17 18:47   ` Michal Wajdeczko
  2019-05-17 18:58     ` Chris Wilson
  2019-05-17 19:01     ` Chris Wilson
  0 siblings, 2 replies; 8+ messages in thread
From: Michal Wajdeczko @ 2019-05-17 18:47 UTC (permalink / raw)
  To: igt-dev, Chris Wilson; +Cc: Tony Ye

On Fri, 17 May 2019 19:48:55 +0200, Chris Wilson  
<chris@chris-wilson.co.uk> wrote:

> Quoting Michal Wajdeczko (2019-05-17 18:37:53)
>> Add simple test to check that HuC firmware is available.
>> Use existing I915_GETPARAM and debugfs entry.
>>
>> Signed-off-by: Michal Wajdeczko <michal.wajdeczko@intel.com>
>> Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
>> Cc: Martin Peres <martin.peres@linux.intel.com>
>> Cc: Chris Wilson <chris@chris-wilson.co.uk>
>> Cc: Tony Ye <tony.ye@intel.com>
>> ---
>>  tests/Makefile.sources |  3 ++
>>  tests/i915/i915_huc.c  | 74 ++++++++++++++++++++++++++++++++++++++++++
>>  tests/meson.build      |  1 +
>>  3 files changed, 78 insertions(+)
>>  create mode 100644 tests/i915/i915_huc.c
>>
>> diff --git a/tests/Makefile.sources b/tests/Makefile.sources
>> index 7f921f6c..dfa3fcd3 100644
>> --- a/tests/Makefile.sources
>> +++ b/tests/Makefile.sources
>> @@ -475,6 +475,9 @@ i915_getparams_basic_SOURCES =  
>> i915/i915_getparams_basic.c
>>  TESTS_progs += i915_hangman
>>  i915_hangman_SOURCES = i915/i915_hangman.c
>>
>> +TESTS_progs += i915_huc
>> +i915_huc_SOURCES = i915/i915_huc.c
>> +
>>  TESTS_progs += i915_module_load
>>  i915_module_load_SOURCES = i915/i915_module_load.c
>>
>> diff --git a/tests/i915/i915_huc.c b/tests/i915/i915_huc.c
>> new file mode 100644
>> index 00000000..10cd5d6f
>> --- /dev/null
>> +++ b/tests/i915/i915_huc.c
>> @@ -0,0 +1,74 @@
>> +/* SPDX-License-Identifier: MIT */
>> +/*
>> + * Copyright © 2019 Intel Corporation
>> + */
>> +
>> +#include "igt.h"
>> +#include <fcntl.h>
>> +#include <i915_drm.h>
>> +#include <sys/ioctl.h>
>> +
>> +IGT_TEST_DESCRIPTION("Check that HuC firmware is available.");
>> +
>> +static bool has_guc(int fd)
>> +{
>> +       uint32_t devid = intel_get_drm_devid(fd);
>> +
>> +       return IS_SKYLAKE(devid) || IS_BROXTON(devid) ||
>> +              IS_KABYLAKE(devid) || IS_COFFEELAKE(devid) ||
>> +              IS_GEMINILAKE(devid) || IS_ICELAKE(devid);
>> +}
>> +
>> +static bool has_huc(int fd)
>> +{
>> +       return has_guc(fd);
>> +}
>> +
>> +static void check_huc_status(int device)
>> +{
>> +       int loaded = 0;
>> +       drm_i915_getparam_t gp = {
>> +               .param = I915_PARAM_HUC_STATUS,
>> +               .value = &loaded,
>> +       };
>> +
>> +       igt_require(ioctl(device, DRM_IOCTL_I915_GETPARAM, &gp) == 0);
>> +       igt_assert_eq(loaded, 1);
>> +}
>> +
>> +#define HUC_STATUS_DEBUGFS_FILE "i915_huc_load_status"
>> +
>> +static void check_huc_info(int device)
>> +{
>> +       int fd = igt_debugfs_open(device, HUC_STATUS_DEBUGFS_FILE,  
>> O_RDONLY);
>> +       igt_assert_f(fd >= 0, "'%s' debugfs entry not found\n",
>> +                    HUC_STATUS_DEBUGFS_FILE);
>
> Debugfs may not exist...
>
>> +       close(fd);
>> +
>> +       igt_assert(igt_debugfs_search(device, HUC_STATUS_DEBUGFS_FILE,
>> +                  "status: fetch SUCCESS"));
>> +       igt_assert(igt_debugfs_search(device, HUC_STATUS_DEBUGFS_FILE,
>> +                  "load SUCCESS"));
>
> and doesn't constitute ABI, so asserts are little ott.

btw, IGT code seems to be little inconsistent on that

(and based on below discussion, I inclined to drop this subtest)

>
>> +}
>> +
>> +igt_main
>> +{
>> +       int fd;
>> +
>> +       igt_fixture {
>> +               fd = drm_open_driver(DRIVER_INTEL);
>> +               igt_require_intel(fd);
>> +               igt_skip_on_f(!has_huc(fd),
>> +                             "HuC is not available on this  
>> platform\n");
>
> Hmm, HuC is optional as it may both be disabled by [default] parameter

afaik, this is about to change soon ;)

> and lack of fw [a plague on us who use builtin modules]. I think this
> should be igt_require(huc_status(fd)) -- skips will be highlighted if we
> regress.

I'm not igt expert, so to confirm, maybe subtest should be empty and
we should put all require stuff into fixture ?

igt_fixture {
	igt_require_intel(fd);
	igt_require(has_huc(fd));
	igt_require(huc_status(fd));
}

igt_subtest("basic")
	igt_success();

>
> And for the main test we would much rather have something behaviour that
> only the HuC can provide. Is there not any challenge-response we can
> send to the gpu for a simple ping? I have no idea what function the HuC
> serves...

The goal if this patch was to provide 'simple' test that covers what we
expose today (at least GETPARAM is ABI, right?)

>
> There's https://bugs.freedesktop.org/show_bug.cgi?id=110617 is we need
> an example where loading the HuC breaks previously working video
> playback.

For above bug, maybe HuC fw binary was corrupted? anyone tried  
enable_guc=3?

>
> As it stands this test fails on all my boxen, which afaict are
> functioning perfectly fine.
> -Chris
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* Re: [igt-dev] [PATCH i-g-t] tests/i915: Add simple test for HuC
  2019-05-17 18:47   ` Michal Wajdeczko
@ 2019-05-17 18:58     ` Chris Wilson
  2019-05-17 19:21       ` Michal Wajdeczko
  2019-05-17 19:01     ` Chris Wilson
  1 sibling, 1 reply; 8+ messages in thread
From: Chris Wilson @ 2019-05-17 18:58 UTC (permalink / raw)
  To: Michal Wajdeczko, igt-dev; +Cc: Tony Ye

Quoting Michal Wajdeczko (2019-05-17 19:47:42)
> On Fri, 17 May 2019 19:48:55 +0200, Chris Wilson  
> <chris@chris-wilson.co.uk> wrote:
> 
> > Quoting Michal Wajdeczko (2019-05-17 18:37:53)
> >> Add simple test to check that HuC firmware is available.
> >> Use existing I915_GETPARAM and debugfs entry.
> >>
> >> Signed-off-by: Michal Wajdeczko <michal.wajdeczko@intel.com>
> >> Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
> >> Cc: Martin Peres <martin.peres@linux.intel.com>
> >> Cc: Chris Wilson <chris@chris-wilson.co.uk>
> >> Cc: Tony Ye <tony.ye@intel.com>
> >> ---
> >>  tests/Makefile.sources |  3 ++
> >>  tests/i915/i915_huc.c  | 74 ++++++++++++++++++++++++++++++++++++++++++
> >>  tests/meson.build      |  1 +
> >>  3 files changed, 78 insertions(+)
> >>  create mode 100644 tests/i915/i915_huc.c
> >>
> >> diff --git a/tests/Makefile.sources b/tests/Makefile.sources
> >> index 7f921f6c..dfa3fcd3 100644
> >> --- a/tests/Makefile.sources
> >> +++ b/tests/Makefile.sources
> >> @@ -475,6 +475,9 @@ i915_getparams_basic_SOURCES =  
> >> i915/i915_getparams_basic.c
> >>  TESTS_progs += i915_hangman
> >>  i915_hangman_SOURCES = i915/i915_hangman.c
> >>
> >> +TESTS_progs += i915_huc
> >> +i915_huc_SOURCES = i915/i915_huc.c
> >> +
> >>  TESTS_progs += i915_module_load
> >>  i915_module_load_SOURCES = i915/i915_module_load.c
> >>
> >> diff --git a/tests/i915/i915_huc.c b/tests/i915/i915_huc.c
> >> new file mode 100644
> >> index 00000000..10cd5d6f
> >> --- /dev/null
> >> +++ b/tests/i915/i915_huc.c
> >> @@ -0,0 +1,74 @@
> >> +/* SPDX-License-Identifier: MIT */
> >> +/*
> >> + * Copyright © 2019 Intel Corporation
> >> + */
> >> +
> >> +#include "igt.h"
> >> +#include <fcntl.h>
> >> +#include <i915_drm.h>
> >> +#include <sys/ioctl.h>
> >> +
> >> +IGT_TEST_DESCRIPTION("Check that HuC firmware is available.");
> >> +
> >> +static bool has_guc(int fd)
> >> +{
> >> +       uint32_t devid = intel_get_drm_devid(fd);
> >> +
> >> +       return IS_SKYLAKE(devid) || IS_BROXTON(devid) ||
> >> +              IS_KABYLAKE(devid) || IS_COFFEELAKE(devid) ||
> >> +              IS_GEMINILAKE(devid) || IS_ICELAKE(devid);
> >> +}
> >> +
> >> +static bool has_huc(int fd)
> >> +{
> >> +       return has_guc(fd);
> >> +}
> >> +
> >> +static void check_huc_status(int device)
> >> +{
> >> +       int loaded = 0;
> >> +       drm_i915_getparam_t gp = {
> >> +               .param = I915_PARAM_HUC_STATUS,
> >> +               .value = &loaded,
> >> +       };
> >> +
> >> +       igt_require(ioctl(device, DRM_IOCTL_I915_GETPARAM, &gp) == 0);
> >> +       igt_assert_eq(loaded, 1);
> >> +}
> >> +
> >> +#define HUC_STATUS_DEBUGFS_FILE "i915_huc_load_status"
> >> +
> >> +static void check_huc_info(int device)
> >> +{
> >> +       int fd = igt_debugfs_open(device, HUC_STATUS_DEBUGFS_FILE,  
> >> O_RDONLY);
> >> +       igt_assert_f(fd >= 0, "'%s' debugfs entry not found\n",
> >> +                    HUC_STATUS_DEBUGFS_FILE);
> >
> > Debugfs may not exist...
> >
> >> +       close(fd);
> >> +
> >> +       igt_assert(igt_debugfs_search(device, HUC_STATUS_DEBUGFS_FILE,
> >> +                  "status: fetch SUCCESS"));
> >> +       igt_assert(igt_debugfs_search(device, HUC_STATUS_DEBUGFS_FILE,
> >> +                  "load SUCCESS"));
> >
> > and doesn't constitute ABI, so asserts are little ott.
> 
> btw, IGT code seems to be little inconsistent on that

igt relies on debugfs for sure, (often too much, and we use debugfs as a
crutch to avoid a real API with stable ABI, imo)

But in terms of an igt determining the expected behaviour of the kernel
for userspace and defining the ABI, this subtest paints the picture to
me that HUC_STATUS_DEBUGFS_FILE is defacto ABI. That I want to avoid.

It will certainly be useful to dump the debugfs file at some point, and
just dumping it into IGT_INFO may be nice as part of the fixture.
 
> (and based on below discussion, I inclined to drop this subtest)
> 
> >
> >> +}
> >> +
> >> +igt_main
> >> +{
> >> +       int fd;
> >> +
> >> +       igt_fixture {
> >> +               fd = drm_open_driver(DRIVER_INTEL);
> >> +               igt_require_intel(fd);
> >> +               igt_skip_on_f(!has_huc(fd),
> >> +                             "HuC is not available on this  
> >> platform\n");
> >
> > Hmm, HuC is optional as it may both be disabled by [default] parameter
> 
> afaik, this is about to change soon ;)

Apparently they have some blocking bugs to resolve first :-p

> > and lack of fw [a plague on us who use builtin modules]. I think this
> > should be igt_require(huc_status(fd)) -- skips will be highlighted if we
> > regress.
> 
> I'm not igt expert, so to confirm, maybe subtest should be empty and
> we should put all require stuff into fixture ?
> 
> igt_fixture {
>         igt_require_intel(fd);
>         igt_require(has_huc(fd));
>         igt_require(huc_status(fd));
> }
> 
> igt_subtest("basic")
>         igt_success();

Yup. That covers the simplest test we can do, SKIP <->

> > And for the main test we would much rather have something behaviour that
> > only the HuC can provide. Is there not any challenge-response we can
> > send to the gpu for a simple ping? I have no idea what function the HuC
> > serves...
> 
> The goal if this patch was to provide 'simple' test that covers what we
> expose today (at least GETPARAM is ABI, right?)

Yup. That appears to be used.

> > There's https://bugs.freedesktop.org/show_bug.cgi?id=110617 is we need
> > an example where loading the HuC breaks previously working video
> > playback.
> 
> For above bug, maybe HuC fw binary was corrupted? anyone tried  
> enable_guc=3?

I thought the fw were signed? Wouldn't that prevent execution of a
corrupted binary? (And if they are not signed, what's stopping us from
uploading our own...)

I was hoping maybe it would be an insight as to something we could use
to determine the HuC exists.
-Chris
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* Re: [igt-dev] [PATCH i-g-t] tests/i915: Add simple test for HuC
  2019-05-17 18:47   ` Michal Wajdeczko
  2019-05-17 18:58     ` Chris Wilson
@ 2019-05-17 19:01     ` Chris Wilson
  1 sibling, 0 replies; 8+ messages in thread
From: Chris Wilson @ 2019-05-17 19:01 UTC (permalink / raw)
  To: Michal Wajdeczko, igt-dev; +Cc: Tony Ye

Quoting Michal Wajdeczko (2019-05-17 19:47:42)
> On Fri, 17 May 2019 19:48:55 +0200, Chris Wilson  
> <chris@chris-wilson.co.uk> wrote:
> > Hmm, HuC is optional as it may both be disabled by [default] parameter
> 
> afaik, this is about to change soon ;)

But it's still fw that is not available on boot, so I hope they will also
allow for delayed loading by libva or something.
-Chris
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* Re: [igt-dev] [PATCH i-g-t] tests/i915: Add simple test for HuC
  2019-05-17 18:58     ` Chris Wilson
@ 2019-05-17 19:21       ` Michal Wajdeczko
  0 siblings, 0 replies; 8+ messages in thread
From: Michal Wajdeczko @ 2019-05-17 19:21 UTC (permalink / raw)
  To: igt-dev, Chris Wilson; +Cc: Tony Ye

On Fri, 17 May 2019 20:58:33 +0200, Chris Wilson  
<chris@chris-wilson.co.uk> wrote:

> Quoting Michal Wajdeczko (2019-05-17 19:47:42)
>> On Fri, 17 May 2019 19:48:55 +0200, Chris Wilson
>> <chris@chris-wilson.co.uk> wrote:
>>
>> > Quoting Michal Wajdeczko (2019-05-17 18:37:53)
>> >> Add simple test to check that HuC firmware is available.
>> >> Use existing I915_GETPARAM and debugfs entry.
>> >>
>> >> Signed-off-by: Michal Wajdeczko <michal.wajdeczko@intel.com>
>> >> Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
>> >> Cc: Martin Peres <martin.peres@linux.intel.com>
>> >> Cc: Chris Wilson <chris@chris-wilson.co.uk>
>> >> Cc: Tony Ye <tony.ye@intel.com>
>> >> ---
>> >>  tests/Makefile.sources |  3 ++
>> >>  tests/i915/i915_huc.c  | 74  
>> ++++++++++++++++++++++++++++++++++++++++++
>> >>  tests/meson.build      |  1 +
>> >>  3 files changed, 78 insertions(+)
>> >>  create mode 100644 tests/i915/i915_huc.c
>> >>
>> >> diff --git a/tests/Makefile.sources b/tests/Makefile.sources
>> >> index 7f921f6c..dfa3fcd3 100644
>> >> --- a/tests/Makefile.sources
>> >> +++ b/tests/Makefile.sources
>> >> @@ -475,6 +475,9 @@ i915_getparams_basic_SOURCES =
>> >> i915/i915_getparams_basic.c
>> >>  TESTS_progs += i915_hangman
>> >>  i915_hangman_SOURCES = i915/i915_hangman.c
>> >>
>> >> +TESTS_progs += i915_huc
>> >> +i915_huc_SOURCES = i915/i915_huc.c
>> >> +
>> >>  TESTS_progs += i915_module_load
>> >>  i915_module_load_SOURCES = i915/i915_module_load.c
>> >>
>> >> diff --git a/tests/i915/i915_huc.c b/tests/i915/i915_huc.c
>> >> new file mode 100644
>> >> index 00000000..10cd5d6f
>> >> --- /dev/null
>> >> +++ b/tests/i915/i915_huc.c
>> >> @@ -0,0 +1,74 @@
>> >> +/* SPDX-License-Identifier: MIT */
>> >> +/*
>> >> + * Copyright © 2019 Intel Corporation
>> >> + */
>> >> +
>> >> +#include "igt.h"
>> >> +#include <fcntl.h>
>> >> +#include <i915_drm.h>
>> >> +#include <sys/ioctl.h>
>> >> +
>> >> +IGT_TEST_DESCRIPTION("Check that HuC firmware is available.");
>> >> +
>> >> +static bool has_guc(int fd)
>> >> +{
>> >> +       uint32_t devid = intel_get_drm_devid(fd);
>> >> +
>> >> +       return IS_SKYLAKE(devid) || IS_BROXTON(devid) ||
>> >> +              IS_KABYLAKE(devid) || IS_COFFEELAKE(devid) ||
>> >> +              IS_GEMINILAKE(devid) || IS_ICELAKE(devid);
>> >> +}
>> >> +
>> >> +static bool has_huc(int fd)
>> >> +{
>> >> +       return has_guc(fd);
>> >> +}
>> >> +
>> >> +static void check_huc_status(int device)
>> >> +{
>> >> +       int loaded = 0;
>> >> +       drm_i915_getparam_t gp = {
>> >> +               .param = I915_PARAM_HUC_STATUS,
>> >> +               .value = &loaded,
>> >> +       };
>> >> +
>> >> +       igt_require(ioctl(device, DRM_IOCTL_I915_GETPARAM, &gp) ==  
>> 0);
>> >> +       igt_assert_eq(loaded, 1);
>> >> +}
>> >> +
>> >> +#define HUC_STATUS_DEBUGFS_FILE "i915_huc_load_status"
>> >> +
>> >> +static void check_huc_info(int device)
>> >> +{
>> >> +       int fd = igt_debugfs_open(device, HUC_STATUS_DEBUGFS_FILE,
>> >> O_RDONLY);
>> >> +       igt_assert_f(fd >= 0, "'%s' debugfs entry not found\n",
>> >> +                    HUC_STATUS_DEBUGFS_FILE);
>> >
>> > Debugfs may not exist...
>> >
>> >> +       close(fd);
>> >> +
>> >> +       igt_assert(igt_debugfs_search(device,  
>> HUC_STATUS_DEBUGFS_FILE,
>> >> +                  "status: fetch SUCCESS"));
>> >> +       igt_assert(igt_debugfs_search(device,  
>> HUC_STATUS_DEBUGFS_FILE,
>> >> +                  "load SUCCESS"));
>> >
>> > and doesn't constitute ABI, so asserts are little ott.
>>
>> btw, IGT code seems to be little inconsistent on that
>
> igt relies on debugfs for sure, (often too much, and we use debugfs as a
> crutch to avoid a real API with stable ABI, imo)
>
> But in terms of an igt determining the expected behaviour of the kernel
> for userspace and defining the ABI, this subtest paints the picture to
> me that HUC_STATUS_DEBUGFS_FILE is defacto ABI. That I want to avoid.
>
> It will certainly be useful to dump the debugfs file at some point, and
> just dumping it into IGT_INFO may be nice as part of the fixture.
>
>> (and based on below discussion, I inclined to drop this subtest)
>>
>> >
>> >> +}
>> >> +
>> >> +igt_main
>> >> +{
>> >> +       int fd;
>> >> +
>> >> +       igt_fixture {
>> >> +               fd = drm_open_driver(DRIVER_INTEL);
>> >> +               igt_require_intel(fd);
>> >> +               igt_skip_on_f(!has_huc(fd),
>> >> +                             "HuC is not available on this
>> >> platform\n");
>> >
>> > Hmm, HuC is optional as it may both be disabled by [default] parameter
>>
>> afaik, this is about to change soon ;)
>
> Apparently they have some blocking bugs to resolve first :-p
>
>> > and lack of fw [a plague on us who use builtin modules]. I think this
>> > should be igt_require(huc_status(fd)) -- skips will be highlighted if  
>> we
>> > regress.
>>
>> I'm not igt expert, so to confirm, maybe subtest should be empty and
>> we should put all require stuff into fixture ?
>>
>> igt_fixture {
>>         igt_require_intel(fd);
>>         igt_require(has_huc(fd));
>>         igt_require(huc_status(fd));
>> }
>>
>> igt_subtest("basic")
>>         igt_success();
>
> Yup. That covers the simplest test we can do, SKIP <->
>
>> > And for the main test we would much rather have something behaviour  
>> that
>> > only the HuC can provide. Is there not any challenge-response we can
>> > send to the gpu for a simple ping? I have no idea what function the  
>> HuC
>> > serves...
>>
>> The goal if this patch was to provide 'simple' test that covers what we
>> expose today (at least GETPARAM is ABI, right?)
>
> Yup. That appears to be used.
>
>> > There's https://bugs.freedesktop.org/show_bug.cgi?id=110617 is we need
>> > an example where loading the HuC breaks previously working video
>> > playback.
>>
>> For above bug, maybe HuC fw binary was corrupted? anyone tried
>> enable_guc=3?
>
> I thought the fw were signed? Wouldn't that prevent execution of a
> corrupted binary? (And if they are not signed, what's stopping us from
> uploading our own...)

I guess we can upload everything, but likely will not be executed unless
signed and verified. And log says that:

[    2.386316] [drm] GuC: Loaded firmware i915/kbl_guc_ver9_39.bin  
(version 9.39)
[    2.438318] [drm:intel_huc_auth] *ERROR* HuC: Firmware not verified  
0x6000
[    2.445235] [drm:intel_huc_auth] *ERROR* HuC: Authentication failed -110

>
> I was hoping maybe it would be an insight as to something we could use
> to determine the HuC exists.

Both authentication check on load and our GETPARAM ABI use exactly the same
register to check if HuC is verified. If we fail to load HuC, today we will
end with -EIO and GuC/HuC reset, so no hope that igt test will provide
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* [igt-dev] ✓ Fi.CI.IGT: success for tests/i915: Add simple test for HuC
  2019-05-17 17:37 [igt-dev] [PATCH i-g-t] tests/i915: Add simple test for HuC Michal Wajdeczko
  2019-05-17 17:48 ` Chris Wilson
  2019-05-17 18:19 ` [igt-dev] ✓ Fi.CI.BAT: success for " Patchwork
@ 2019-05-18  7:06 ` Patchwork
  2 siblings, 0 replies; 8+ messages in thread
From: Patchwork @ 2019-05-18  7:06 UTC (permalink / raw)
  To: Michal Wajdeczko; +Cc: igt-dev

== Series Details ==

Series: tests/i915: Add simple test for HuC
URL   : https://patchwork.freedesktop.org/series/60800/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_6096_full -> IGTPW_3000_full
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

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

Possible new issues
-------------------

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

### IGT changes ###

#### Possible regressions ####

  * {igt@i915_huc@info} (NEW):
    - shard-glk:          NOTRUN -> [FAIL][1] +1 similar issue
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3000/shard-glk6/igt@i915_huc@info.html
    - shard-iclb:         NOTRUN -> [FAIL][2] +1 similar issue
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3000/shard-iclb5/igt@i915_huc@info.html

  * {igt@i915_huc@status} (NEW):
    - shard-apl:          NOTRUN -> [FAIL][3] +1 similar issue
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3000/shard-apl3/igt@i915_huc@status.html
    - shard-kbl:          NOTRUN -> [FAIL][4] +1 similar issue
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3000/shard-kbl1/igt@i915_huc@status.html

  
New tests
---------

  New tests have been introduced between CI_DRM_6096_full and IGTPW_3000_full:

### New IGT tests (2) ###

  * igt@i915_huc@info:
    - Statuses : 4 fail(s) 2 skip(s)
    - Exec time: [0.0, 0.15] s

  * igt@i915_huc@status:
    - Statuses : 4 fail(s) 2 skip(s)
    - Exec time: [0.0, 0.75] s

  

Known issues
------------

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

### IGT changes ###

#### Issues hit ####

  * igt@gem_tiled_swapping@non-threaded:
    - shard-iclb:         [PASS][5] -> [FAIL][6] ([fdo#108686])
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/shard-iclb4/igt@gem_tiled_swapping@non-threaded.html
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3000/shard-iclb7/igt@gem_tiled_swapping@non-threaded.html
    - shard-hsw:          [PASS][7] -> [FAIL][8] ([fdo#108686])
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/shard-hsw1/igt@gem_tiled_swapping@non-threaded.html
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3000/shard-hsw1/igt@gem_tiled_swapping@non-threaded.html

  * igt@i915_suspend@sysfs-reader:
    - shard-apl:          [PASS][9] -> [DMESG-WARN][10] ([fdo#108566]) +2 similar issues
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/shard-apl4/igt@i915_suspend@sysfs-reader.html
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3000/shard-apl3/igt@i915_suspend@sysfs-reader.html

  * igt@kms_dp_dsc@basic-dsc-enable-edp:
    - shard-iclb:         [PASS][11] -> [SKIP][12] ([fdo#109349])
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/shard-iclb2/igt@kms_dp_dsc@basic-dsc-enable-edp.html
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3000/shard-iclb4/igt@kms_dp_dsc@basic-dsc-enable-edp.html

  * igt@kms_flip@2x-dpms-vs-vblank-race-interruptible:
    - shard-glk:          [PASS][13] -> [FAIL][14] ([fdo#103060])
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/shard-glk9/igt@kms_flip@2x-dpms-vs-vblank-race-interruptible.html
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3000/shard-glk6/igt@kms_flip@2x-dpms-vs-vblank-race-interruptible.html

  * igt@kms_flip@flip-vs-expired-vblank-interruptible:
    - shard-kbl:          [PASS][15] -> [FAIL][16] ([fdo#102887] / [fdo#105363])
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/shard-kbl7/igt@kms_flip@flip-vs-expired-vblank-interruptible.html
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3000/shard-kbl3/igt@kms_flip@flip-vs-expired-vblank-interruptible.html

  * igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-indfb-draw-pwrite:
    - shard-iclb:         [PASS][17] -> [FAIL][18] ([fdo#103167]) +6 similar issues
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/shard-iclb1/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-indfb-draw-pwrite.html
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3000/shard-iclb2/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-indfb-draw-pwrite.html

  * igt@kms_plane_lowres@pipe-a-tiling-x:
    - shard-iclb:         [PASS][19] -> [FAIL][20] ([fdo#103166])
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/shard-iclb1/igt@kms_plane_lowres@pipe-a-tiling-x.html
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3000/shard-iclb5/igt@kms_plane_lowres@pipe-a-tiling-x.html

  * igt@kms_psr@psr2_cursor_plane_onoff:
    - shard-iclb:         [PASS][21] -> [SKIP][22] ([fdo#109441]) +1 similar issue
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/shard-iclb2/igt@kms_psr@psr2_cursor_plane_onoff.html
   [22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3000/shard-iclb5/igt@kms_psr@psr2_cursor_plane_onoff.html

  
#### Possible fixes ####

  * igt@gem_mmap_gtt@forked-medium-copy-odd:
    - shard-iclb:         [INCOMPLETE][23] ([fdo#107713]) -> [PASS][24]
   [23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/shard-iclb6/igt@gem_mmap_gtt@forked-medium-copy-odd.html
   [24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3000/shard-iclb8/igt@gem_mmap_gtt@forked-medium-copy-odd.html

  * igt@i915_suspend@fence-restore-untiled:
    - shard-apl:          [DMESG-WARN][25] ([fdo#108566]) -> [PASS][26] +3 similar issues
   [25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/shard-apl3/igt@i915_suspend@fence-restore-untiled.html
   [26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3000/shard-apl3/igt@i915_suspend@fence-restore-untiled.html

  * igt@kms_color@pipe-b-ctm-green-to-red:
    - shard-kbl:          [FAIL][27] ([fdo#107201]) -> [PASS][28]
   [27]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/shard-kbl2/igt@kms_color@pipe-b-ctm-green-to-red.html
   [28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3000/shard-kbl1/igt@kms_color@pipe-b-ctm-green-to-red.html
    - shard-apl:          [FAIL][29] ([fdo#107201]) -> [PASS][30]
   [29]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/shard-apl3/igt@kms_color@pipe-b-ctm-green-to-red.html
   [30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3000/shard-apl4/igt@kms_color@pipe-b-ctm-green-to-red.html

  * igt@kms_cursor_legacy@2x-long-cursor-vs-flip-atomic:
    - shard-hsw:          [FAIL][31] ([fdo#105767]) -> [PASS][32]
   [31]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/shard-hsw4/igt@kms_cursor_legacy@2x-long-cursor-vs-flip-atomic.html
   [32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3000/shard-hsw1/igt@kms_cursor_legacy@2x-long-cursor-vs-flip-atomic.html

  * igt@kms_flip@2x-flip-vs-expired-vblank-interruptible:
    - shard-glk:          [FAIL][33] ([fdo#105363]) -> [PASS][34]
   [33]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/shard-glk8/igt@kms_flip@2x-flip-vs-expired-vblank-interruptible.html
   [34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3000/shard-glk9/igt@kms_flip@2x-flip-vs-expired-vblank-interruptible.html

  * igt@kms_flip@2x-flip-vs-suspend:
    - shard-hsw:          [INCOMPLETE][35] ([fdo#103540]) -> [PASS][36]
   [35]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/shard-hsw5/igt@kms_flip@2x-flip-vs-suspend.html
   [36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3000/shard-hsw5/igt@kms_flip@2x-flip-vs-suspend.html

  * igt@kms_frontbuffer_tracking@fbc-1p-primscrn-pri-shrfb-draw-mmap-wc:
    - shard-iclb:         [FAIL][37] ([fdo#103167]) -> [PASS][38] +3 similar issues
   [37]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/shard-iclb4/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-pri-shrfb-draw-mmap-wc.html
   [38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3000/shard-iclb6/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-pri-shrfb-draw-mmap-wc.html

  * igt@kms_psr@psr2_sprite_render:
    - shard-iclb:         [SKIP][39] ([fdo#109441]) -> [PASS][40] +1 similar issue
   [39]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/shard-iclb3/igt@kms_psr@psr2_sprite_render.html
   [40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3000/shard-iclb2/igt@kms_psr@psr2_sprite_render.html

  * igt@kms_vblank@pipe-a-ts-continuation-dpms-suspend:
    - shard-snb:          [SKIP][41] ([fdo#109271]) -> [PASS][42] +1 similar issue
   [41]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/shard-snb6/igt@kms_vblank@pipe-a-ts-continuation-dpms-suspend.html
   [42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3000/shard-snb2/igt@kms_vblank@pipe-a-ts-continuation-dpms-suspend.html

  
#### Warnings ####

  * igt@gem_mmap_gtt@forked-big-copy-odd:
    - shard-iclb:         [INCOMPLETE][43] ([fdo#107713] / [fdo#109100]) -> [TIMEOUT][44] ([fdo#109673])
   [43]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6096/shard-iclb2/igt@gem_mmap_gtt@forked-big-copy-odd.html
   [44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3000/shard-iclb2/igt@gem_mmap_gtt@forked-big-copy-odd.html

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

  [fdo#102887]: https://bugs.freedesktop.org/show_bug.cgi?id=102887
  [fdo#103060]: https://bugs.freedesktop.org/show_bug.cgi?id=103060
  [fdo#103166]: https://bugs.freedesktop.org/show_bug.cgi?id=103166
  [fdo#103167]: https://bugs.freedesktop.org/show_bug.cgi?id=103167
  [fdo#103540]: https://bugs.freedesktop.org/show_bug.cgi?id=103540
  [fdo#105363]: https://bugs.freedesktop.org/show_bug.cgi?id=105363
  [fdo#105767]: https://bugs.freedesktop.org/show_bug.cgi?id=105767
  [fdo#107201]: https://bugs.freedesktop.org/show_bug.cgi?id=107201
  [fdo#107713]: https://bugs.freedesktop.org/show_bug.cgi?id=107713
  [fdo#108566]: https://bugs.freedesktop.org/show_bug.cgi?id=108566
  [fdo#108686]: https://bugs.freedesktop.org/show_bug.cgi?id=108686
  [fdo#109100]: https://bugs.freedesktop.org/show_bug.cgi?id=109100
  [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
  [fdo#109349]: https://bugs.freedesktop.org/show_bug.cgi?id=109349
  [fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441
  [fdo#109673]: https://bugs.freedesktop.org/show_bug.cgi?id=109673


Participating hosts (10 -> 6)
------------------------------

  Missing    (4): pig-skl-6260u shard-skl pig-hsw-4770r pig-glk-j5005 


Build changes
-------------

  * IGT: IGT_4996 -> IGTPW_3000
  * Piglit: piglit_4509 -> None

  CI_DRM_6096: beb32d3348a566a6aafa292c65e2d60a610479c4 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_3000: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3000/
  IGT_4996: 6fe5d254ec1b9b47d61408e1b49a7339876bf1e7 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3000/
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

end of thread, other threads:[~2019-05-18  7:06 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-05-17 17:37 [igt-dev] [PATCH i-g-t] tests/i915: Add simple test for HuC Michal Wajdeczko
2019-05-17 17:48 ` Chris Wilson
2019-05-17 18:47   ` Michal Wajdeczko
2019-05-17 18:58     ` Chris Wilson
2019-05-17 19:21       ` Michal Wajdeczko
2019-05-17 19:01     ` Chris Wilson
2019-05-17 18:19 ` [igt-dev] ✓ Fi.CI.BAT: success for " Patchwork
2019-05-18  7:06 ` [igt-dev] ✓ 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.