Igt-dev Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH i-g-t v3 00/31] tools: remove unnecessary shared library dependencies from standalone tools
@ 2026-07-15 12:15 Sebastian Brzezinka
  2026-07-15 12:15 ` [PATCH i-g-t v3 01/31] lib/igt_tools_stub: introduce static sub-library for tools Sebastian Brzezinka
                   ` (34 more replies)
  0 siblings, 35 replies; 50+ messages in thread
From: Sebastian Brzezinka @ 2026-07-15 12:15 UTC (permalink / raw)
  To: igt-dev
  Cc: Sebastian Brzezinka, kamil.konieczny, krzysztof.karas,
	krzysztof.niemiec

This issue was raised by the community back in 2019: 
https://bugs.freedesktop.org/show_bug.cgi?id=110249

Standalone tools linked libigt.so as a side effect, pulling in cairo,
pixman and libX11 even without framebuffer use.

Following intel_gpu_top's approach, each tool now links only the static
sub-libraries it needs. Five new ones are introduced:

lib_igt_tools_stub, lib_igt_drm_stub, lib_igt_halffloat,
lib_i915_decode, lib_igt_reg_tools.

igt_load_igtrc() is moved to igt_device_scan.c so lsgpu can use
lib_igt_device_scan without pulling in libigt.so.

All 20 tools: 35 shared libs -> 3-8.

Behavioural differences vs original binaries (no-hardware runs):

intel_backlight, intel_lid, intel_gpu_time, intel_audio_dump,
intel_infoframes, intel_panel_fitter, intel_firmware_decode:
assertion failure format: IGT CRITICAL block -> single-line message;
exit code: 98 (IGT_EXIT_FAILURE) -> 1.

intel_gtt, intel_display_poller, intel_watermark:
same as above; additionally print an extra "Test requirement passed:
pci_dev" line on stderr (previously suppressed by IGT log layer).

intel_guc_logger:
same exit code change (98->1); --help drops IGT framework options
(--list-subtests, --run-subtest, --device, etc.) which had no effect
on guc_logger since it opens debugfs directly, not via IGT device
selection; --version, --debug, --hook also removed.
Unknown option exit code: 79 (IGT_EXIT_INVALID) -> 1.

intel_gvtg_test:
skip message: IGT skip block -> single-line; exit code unchanged (77).

Tested on Intel Meteor Lake-P (device 0x7d45) with the series applied:
lsgpu                enumerates card0/renderD128
intel_gpu_frequency  reads cur/min/max/RP1 frequencies
intel_stepping       reports device 0x7d45 rev 0x04
intel_error_decode   parses empty error state
igt_stats            computes median from stdin
intel_backlight      reads current backlight value: 0%
intel_gtt            dumps GTT linear mappings
intel_gpu_time       user: 0.000322s, GPU: 0.0%
intel_infoframes     runs, reports hardware not yet supported
intel_panel_fitter   shows usage with -l/-p/-x/-y options
intel_audio_dump     dumps meteorlake audio registers
intel_watermark      dumps WM_LINETIME and plane watermarks
intel_display_poller shows usage (requires --test option)
intel_lid            polls lid state: open (loops by design)
intel_forcewaked     locks forcewake, restarts daemon on gpu reset
intel_gvtg_test      exits 77, no GVT-g hardware
intel_guc_logger     --help prints usage correctly
intel_vbt_decode     --help prints usage correctly
intel_firmware_decode runs, fails on missing CSR file as expected
intel_dump_decode    runs, rejects unknown options as expected
---
v2 -> v3:
 - lib/igt_tools_stub: replace magic exit code 77 with IGT_EXIT_SKIP
   (+ comment), fix missing blank line after if block, unify
   multi line comment style
 - lib/igt_drm_stub: replace long MIT license text with SPDX
   identifier, document which libigt files this reimplements, name
   the "16" magic constant IGT_DRM_STUB_MAX_CARDS
 - runner/executor: add missing igt_device_scan.h include so
   igt_load_igtrc() has a visible prototype under HAVE_OPING builds
 - lib/i915/intel_decode: reorder so "replace igt.h with minimal
   headers" lands right before "introduce static sub-library for
   tools" - previously the sub-library patch tried to build
   intel_decode.c while it still pulled in igt.h (and transitively
   cairo.h), breaking bisectability

v1 -> v2:
 - Rename all patch subjects
 - Split  tools/intel_gtt  into two patches:  tools/intel_gtt  and  tools/intel_dump_decode 
 - Split  tools/lsgpu  into  lib/igt_core: move igt_load_igtrc to igt_device_scan  +  tools/lsgpu 
 - Shorten  tools/intel_gpu_top  subject (was over 72 chars)

Sebastian Brzezinka (31):
  lib/igt_tools_stub: introduce static sub-library for tools
  lib/igt_stats: introduce static sub-library for tools
  tools/igt_stats: link with minimal sub-libraries
  tools/intel_firmware_decode: link with minimal sub-libraries
  lib/igt_tools_stub: add stubs needed by tools
  lib/igt_drm_stub: introduce for tools needing driver detection
  lib/igt_device_scan: wire to use static sub-libraries
  tools/intel_gpu_top: add explicit drm/tools-stub deps
  lib/igt_halffloat: introduce static sub-library for tools
  lib/i915/intel_decode: replace igt.h with minimal headers
  lib/i915/intel_decode: introduce static sub-library for tools
  lib/intel_mmio: introduce lib_igt_reg_tools static sub-library for
    tools
  tools/intel_gpu_frequency: link with minimal sub-libraries
  tools/intel_stepping: link with minimal sub-libraries
  tools/intel_gtt: link with minimal sub-libraries
  tools/intel_dump_decode: link with minimal sub-libraries
  tools/intel_error_decode: link with minimal sub-libraries
  tools/intel_vbt_decode: link with minimal sub-libraries
  tools/intel_backlight: link with minimal sub-libraries
  tools/intel_lid: link with minimal sub-libraries
  tools/intel_gpu_time: link with minimal sub-libraries
  tools/intel_audio_dump: link with minimal sub-libraries
  tools/intel_forcewaked: link with minimal sub-libraries
  tools/intel_guc_logger: link with minimal sub-libraries
  tools/intel_infoframes: link with minimal sub-libraries
  tools/intel_panel_fitter: link with minimal sub-libraries
  tools/intel_watermark: link with minimal sub-libraries
  tools/intel_display_poller: link with minimal sub-libraries
  tools/intel_gvtg_test: link with minimal sub-libraries
  lib/igt_core: move igt_load_igtrc to igt_device_scan
  tools/lsgpu: link with minimal sub-libraries

 lib/i915/intel_decode.c  |   3 +-
 lib/igt_core.c           |  47 ---------------
 lib/igt_core.h           |   2 -
 lib/igt_device_scan.c    |  48 +++++++++++++++
 lib/igt_device_scan.h    |   2 +
 lib/igt_drm_stub.c       | 125 ++++++++++++++++++++++++++++++++++++++
 lib/igt_tools_stub.c     |  83 +++++++++++++++++++++++---
 lib/meson.build          |  66 +++++++++++++++++++-
 runner/executor.c        |   1 +
 tools/intel_guc_logger.c |  21 ++++++-
 tools/intel_gvtg_test.c  |   2 +-
 tools/lsgpu.c            |   2 +-
 tools/meson.build        | 126 ++++++++++++++++++++++++++++++++-------
 13 files changed, 443 insertions(+), 85 deletions(-)
 create mode 100644 lib/igt_drm_stub.c

-- 
2.53.0


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

* [PATCH i-g-t v3 01/31] lib/igt_tools_stub: introduce static sub-library for tools
  2026-07-15 12:15 [PATCH i-g-t v3 00/31] tools: remove unnecessary shared library dependencies from standalone tools Sebastian Brzezinka
@ 2026-07-15 12:15 ` Sebastian Brzezinka
  2026-07-15 12:15 ` [PATCH i-g-t v3 02/31] lib/igt_stats: " Sebastian Brzezinka
                   ` (33 subsequent siblings)
  34 siblings, 0 replies; 50+ messages in thread
From: Sebastian Brzezinka @ 2026-07-15 12:15 UTC (permalink / raw)
  To: igt-dev
  Cc: Sebastian Brzezinka, kamil.konieczny, krzysztof.karas,
	krzysztof.niemiec, Ashutosh Dixit

Add lib_igt_tools_stub built from igt_tools_stub.c. Tools that need
minimal IGT assert/logging stubs can link this without pulling in the
full libigt.so stack.

Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
Acked-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
Reviewed-by: Krzysztof Niemiec <krzysztof.niemiec@intel.com>
---
 lib/meson.build | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/lib/meson.build b/lib/meson.build
index d1289a5e0..e95b29d49 100644
--- a/lib/meson.build
+++ b/lib/meson.build
@@ -349,6 +349,13 @@ lib_igt_perf_build = static_library('igt_perf',
 lib_igt_perf = declare_dependency(link_with : lib_igt_perf_build,
 				  include_directories : inc)
 
+lib_igt_tools_stub_build = static_library('igt_tools_stub',
+	['igt_tools_stub.c'],
+	include_directories : inc)
+
+lib_igt_tools_stub = declare_dependency(link_with : lib_igt_tools_stub_build,
+					include_directories : inc)
+
 scan_dep = [
 	glib,
 	libpci,
-- 
2.53.0


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

* [PATCH i-g-t v3 02/31] lib/igt_stats: introduce static sub-library for tools
  2026-07-15 12:15 [PATCH i-g-t v3 00/31] tools: remove unnecessary shared library dependencies from standalone tools Sebastian Brzezinka
  2026-07-15 12:15 ` [PATCH i-g-t v3 01/31] lib/igt_tools_stub: introduce static sub-library for tools Sebastian Brzezinka
@ 2026-07-15 12:15 ` Sebastian Brzezinka
  2026-07-15 12:15 ` [PATCH i-g-t v3 03/31] tools/igt_stats: link with minimal sub-libraries Sebastian Brzezinka
                   ` (32 subsequent siblings)
  34 siblings, 0 replies; 50+ messages in thread
From: Sebastian Brzezinka @ 2026-07-15 12:15 UTC (permalink / raw)
  To: igt-dev
  Cc: Sebastian Brzezinka, kamil.konieczny, krzysztof.karas,
	krzysztof.niemiec, Ashutosh Dixit

Add lib_igt_stats built from igt_stats.c. Tools that need the
statistics helpers can link this without pulling in the full
libigt.so stack.

Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
Acked-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
Reviewed-by: Krzysztof Niemiec <krzysztof.niemiec@intel.com>
---
 lib/meson.build | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/lib/meson.build b/lib/meson.build
index e95b29d49..a57c1eb8d 100644
--- a/lib/meson.build
+++ b/lib/meson.build
@@ -397,6 +397,13 @@ lib_igt_profiling_build = static_library('igt_profiling',
 lib_igt_profiling = declare_dependency(link_with : lib_igt_profiling_build,
 				        include_directories : inc)
 
+lib_igt_stats_build = static_library('igt_stats_tools',
+	['igt_stats.c'],
+	include_directories : inc)
+
+lib_igt_stats = declare_dependency(link_with : lib_igt_stats_build,
+				   include_directories : inc)
+
 i915_perf_files = [
   'igt_list.c',
   'i915/perf.c',
-- 
2.53.0


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

* [PATCH i-g-t v3 03/31] tools/igt_stats: link with minimal sub-libraries
  2026-07-15 12:15 [PATCH i-g-t v3 00/31] tools: remove unnecessary shared library dependencies from standalone tools Sebastian Brzezinka
  2026-07-15 12:15 ` [PATCH i-g-t v3 01/31] lib/igt_tools_stub: introduce static sub-library for tools Sebastian Brzezinka
  2026-07-15 12:15 ` [PATCH i-g-t v3 02/31] lib/igt_stats: " Sebastian Brzezinka
@ 2026-07-15 12:15 ` Sebastian Brzezinka
  2026-07-15 12:15 ` [PATCH i-g-t v3 04/31] tools/intel_firmware_decode: " Sebastian Brzezinka
                   ` (31 subsequent siblings)
  34 siblings, 0 replies; 50+ messages in thread
From: Sebastian Brzezinka @ 2026-07-15 12:15 UTC (permalink / raw)
  To: igt-dev
  Cc: Sebastian Brzezinka, kamil.konieczny, krzysztof.karas,
	krzysztof.niemiec, Ashutosh Dixit

igt_stats only needs the statistics helpers and a small assert stub.
Link it against lib_igt_stats and lib_igt_tools_stub instead of the
full libigt.so stack.

ldd before: 35  (ldd | wc -l)
ldd after:   4  (ldd | wc -l)

Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
Acked-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
Reviewed-by: Krzysztof Niemiec <krzysztof.niemiec@intel.com>
---
 tools/meson.build | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/tools/meson.build b/tools/meson.build
index 8185ba160..286a718c8 100644
--- a/tools/meson.build
+++ b/tools/meson.build
@@ -14,7 +14,6 @@ endforeach
 tools_progs = [
 	'igt_facts',
 	'igt_power',
-	'igt_stats',
 	'intel_audio_dump',
 	'intel_backlight',
 	'intel_bios_dumper',
@@ -58,6 +57,11 @@ foreach prog : tools_progs
 		   install : true)
 endforeach
 
+executable('igt_stats', 'igt_stats.c',
+	   dependencies : [lib_igt_stats, lib_igt_tools_stub, math],
+	   install_rpath : bindir_rpathdir,
+	   install : true)
+
 if libudev.found()
 	intel_dp_compliance_src = [
 		'intel_dp_compliance.c',
-- 
2.53.0


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

* [PATCH i-g-t v3 04/31] tools/intel_firmware_decode: link with minimal sub-libraries
  2026-07-15 12:15 [PATCH i-g-t v3 00/31] tools: remove unnecessary shared library dependencies from standalone tools Sebastian Brzezinka
                   ` (2 preceding siblings ...)
  2026-07-15 12:15 ` [PATCH i-g-t v3 03/31] tools/igt_stats: link with minimal sub-libraries Sebastian Brzezinka
@ 2026-07-15 12:15 ` Sebastian Brzezinka
  2026-07-16  7:29   ` Krzysztof Karas
  2026-07-15 12:15 ` [PATCH i-g-t v3 05/31] lib/igt_tools_stub: add stubs needed by tools Sebastian Brzezinka
                   ` (30 subsequent siblings)
  34 siblings, 1 reply; 50+ messages in thread
From: Sebastian Brzezinka @ 2026-07-15 12:15 UTC (permalink / raw)
  To: igt-dev
  Cc: Sebastian Brzezinka, kamil.konieczny, krzysztof.karas,
	krzysztof.niemiec, Ashutosh Dixit

intel_firmware_decode only needs the lightweight assert stub used by
igt_assert(), so the full libigt.so stack is unnecessary.

Switch to linking against lib_igt_tools_stub only.

ldd before: 35  (ldd | wc -l)
ldd after:   3   (ldd | wc -l)

Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
Acked-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
Reviewed-by: Krzysztof Niemiec <krzysztof.niemiec@intel.com>
---
 tools/meson.build | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/tools/meson.build b/tools/meson.build
index 286a718c8..4c67dde4f 100644
--- a/tools/meson.build
+++ b/tools/meson.build
@@ -24,7 +24,6 @@ tools_progs = [
 	'intel_error_decode',
 	'intel_forcewaked',
 	'intel_gpu_frequency',
-	'intel_firmware_decode',
 	'intel_framebuffer_dump',
 	'intel_gpu_time',
 	'intel_gtt',
@@ -62,6 +61,11 @@ executable('igt_stats', 'igt_stats.c',
 	   install_rpath : bindir_rpathdir,
 	   install : true)
 
+executable('intel_firmware_decode', 'intel_firmware_decode.c',
+	   dependencies : [lib_igt_tools_stub],
+	   install_rpath : bindir_rpathdir,
+	   install : true)
+
 if libudev.found()
 	intel_dp_compliance_src = [
 		'intel_dp_compliance.c',
-- 
2.53.0


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

* [PATCH i-g-t v3 05/31] lib/igt_tools_stub: add stubs needed by tools
  2026-07-15 12:15 [PATCH i-g-t v3 00/31] tools: remove unnecessary shared library dependencies from standalone tools Sebastian Brzezinka
                   ` (3 preceding siblings ...)
  2026-07-15 12:15 ` [PATCH i-g-t v3 04/31] tools/intel_firmware_decode: " Sebastian Brzezinka
@ 2026-07-15 12:15 ` Sebastian Brzezinka
  2026-07-16  6:09   ` Krzysztof Karas
  2026-07-15 12:15 ` [PATCH i-g-t v3 06/31] lib/igt_drm_stub: introduce for tools needing driver detection Sebastian Brzezinka
                   ` (29 subsequent siblings)
  34 siblings, 1 reply; 50+ messages in thread
From: Sebastian Brzezinka @ 2026-07-15 12:15 UTC (permalink / raw)
  To: igt-dev
  Cc: Sebastian Brzezinka, kamil.konieczny, krzysztof.karas,
	krzysztof.niemiec, Ashutosh Dixit

Add stubs for functions used by tools when linking without the
full libigt.so: __igt_skip_check, igt_exit, igt_debugfs_open and
igt_open_forcewake_handle_for_pcidev.

Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
Acked-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
---
 lib/igt_tools_stub.c | 83 ++++++++++++++++++++++++++++++++++++++++----
 1 file changed, 76 insertions(+), 7 deletions(-)

diff --git a/lib/igt_tools_stub.c b/lib/igt_tools_stub.c
index 9a0ec6217..21dc53f3f 100644
--- a/lib/igt_tools_stub.c
+++ b/lib/igt_tools_stub.c
@@ -21,12 +21,27 @@
  * IN THE SOFTWARE.
  *
  */
+#include <fcntl.h>
+#include <limits.h>
+#include <stdarg.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <sys/stat.h>
+#include <sys/sysmacros.h>
+#include <unistd.h>
+
 #include "igt_core.h"
+#include "igt_debugfs.h"
 
-/* Stub for igt_log, this stub will simply print the msg on stderr device.
- * Domain and log level are ignored.
+/*
+ * Forward declaration only - avoids pulling in the heavy igt_gt.h header.
+ * The type is used as an opaque pointer; this stub always returns -1.
  */
+struct pci_device;
 
+int igt_open_forcewake_handle_for_pcidev(const struct pci_device *pci_dev);
+
+/* Stub for igt_log: print message to stderr; domain and log level are ignored. */
 void igt_log(const char *domain, enum igt_log_level level, const char *format, ...)
 {
 	va_list args;
@@ -36,11 +51,7 @@ void igt_log(const char *domain, enum igt_log_level level, const char *format, .
 	va_end(args);
 }
 
-
-/* Stub for __igt_fail_assert, this stub will simply print the msg on stderr device and
- * exit the application, domain and log level are ignored.
- */
-
+/* Stub for __igt_fail_assert: print failed assertion to stderr and exit. */
 void __igt_fail_assert(const char *domain, const char *file,
 		       const int line, const char *func, const char *assertion,
 		       const char *format, ...)
@@ -49,3 +60,61 @@ void __igt_fail_assert(const char *domain, const char *file,
 		func, assertion);
 	exit(1);
 }
+
+/* Stub for __igt_skip_check: print skip reason to stderr and exit with skip code. */
+void __igt_skip_check(const char *file, const int line,
+		      const char *func, const char *check, const char *format, ...)
+{
+	fprintf(stderr, "%s: %d %s Skipped: %s", file, line, func, check);
+	if (format) {
+		va_list args;
+
+		fprintf(stderr, ": ");
+		va_start(args, format);
+		vfprintf(stderr, format, args);
+		va_end(args);
+	}
+
+	fprintf(stderr, "\n");
+	/* IGT_EXIT_SKIP (77) is the exit code igt_core.c uses for skipped tests. */
+	exit(IGT_EXIT_SKIP);
+}
+
+/* Stub for igt_exit: tools use exit(0) rather than the full igt teardown sequence. */
+__noreturn void igt_exit(void)
+{
+	exit(0);
+}
+
+/*
+ * Stub for igt_debugfs_open: open a debugfs entry for a DRM device directly
+ * by path. device == -1 follows the igt_debugfs_path() convention of
+ * defaulting to the first DRM device (dri/0). When a valid fd is given, the
+ * DRM minor is resolved via fstat() so the correct dri/<minor> directory is
+ * used.
+ */
+int igt_debugfs_open(int device, const char *filename, int mode)
+{
+	char path[PATH_MAX];
+	int drm_minor = 0;
+
+	if (device >= 0) {
+		struct stat st;
+
+		if (fstat(device, &st) == 0 && S_ISCHR(st.st_mode))
+			drm_minor = minor(st.st_rdev);
+	}
+
+	snprintf(path, sizeof(path),
+		 "/sys/kernel/debug/dri/%d/%s", drm_minor, filename);
+	return open(path, mode);
+}
+
+/*
+ * Stub for igt_open_forcewake_handle_for_pcidev: in tool context the driver
+ * keeps the GPU awake; no forcewake handle needed.
+ */
+int igt_open_forcewake_handle_for_pcidev(const struct pci_device *pci_dev)
+{
+	return -1;
+}
-- 
2.53.0


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

* [PATCH i-g-t v3 06/31] lib/igt_drm_stub: introduce for tools needing driver detection
  2026-07-15 12:15 [PATCH i-g-t v3 00/31] tools: remove unnecessary shared library dependencies from standalone tools Sebastian Brzezinka
                   ` (4 preceding siblings ...)
  2026-07-15 12:15 ` [PATCH i-g-t v3 05/31] lib/igt_tools_stub: add stubs needed by tools Sebastian Brzezinka
@ 2026-07-15 12:15 ` Sebastian Brzezinka
  2026-07-16  7:28   ` Krzysztof Karas
  2026-07-15 12:15 ` [PATCH i-g-t v3 07/31] lib/igt_device_scan: wire to use static sub-libraries Sebastian Brzezinka
                   ` (28 subsequent siblings)
  34 siblings, 1 reply; 50+ messages in thread
From: Sebastian Brzezinka @ 2026-07-15 12:15 UTC (permalink / raw)
  To: igt-dev
  Cc: Sebastian Brzezinka, kamil.konieczny, krzysztof.karas,
	krzysztof.niemiec, Ashutosh Dixit

Add drm/pciaccess-dependent stubs into a new igt_drm_stub.c.  This avoids
pulling libdrm into tools that only need dep-free logging and exit stubs.

The new lib_igt_drm_stub static sub-library provides: igt_pci_system_init,
is_i915_device, is_intel_device, xe_dev_id and __drm_open_driver.

Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
Acked-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
Reviewed-by: Krzysztof Niemiec <krzysztof.niemiec@intel.com>
---
 lib/igt_drm_stub.c | 125 +++++++++++++++++++++++++++++++++++++++++++++
 lib/meson.build    |   9 ++++
 2 files changed, 134 insertions(+)
 create mode 100644 lib/igt_drm_stub.c

diff --git a/lib/igt_drm_stub.c b/lib/igt_drm_stub.c
new file mode 100644
index 000000000..58395b329
--- /dev/null
+++ b/lib/igt_drm_stub.c
@@ -0,0 +1,125 @@
+// SPDX-License-Identifier: MIT
+/*
+ * Copyright © 2026 Intel Corporation
+ */
+
+/*
+ * Minimal DRM/PCI stubs for tools that need driver detection and device
+ * opening but do not link the full libigt.so. Requires libdrm and pciaccess.
+ *
+ * This reimplements a small subset of lib/drmtest.c (__drm_open_driver()),
+ * lib/igt_device.c (is_i915_device(), is_intel_device()) and
+ * lib/xe/xe_query.c (xe_dev_id()) so that tools can pull in just this
+ * static sub-library instead of the whole libigt.so stack.
+ */
+
+#include <errno.h>
+#include <fcntl.h>
+#include <limits.h>
+#include <pciaccess.h>
+#include <stdbool.h>
+#include <stdint.h>
+#include <stdio.h>
+#include <string.h>
+#include <sys/stat.h>
+#include <sys/sysmacros.h>
+#include <unistd.h>
+#include <xf86drm.h>
+
+#include "drmtest.h"
+
+int igt_pci_system_init(void)
+{
+	return pci_system_init();
+}
+
+static bool driver_name_matches(int fd, const char *name)
+{
+	drmVersionPtr version;
+	bool match = false;
+
+	version = drmGetVersion(fd);
+	if (!version)
+		return false;
+
+	match = version->name_len > 0 && !strcmp(version->name, name);
+	drmFreeVersion(version);
+
+	return match;
+}
+
+bool is_i915_device(int fd)
+{
+	return driver_name_matches(fd, "i915");
+}
+
+bool is_intel_device(int fd)
+{
+	return is_i915_device(fd) || driver_name_matches(fd, "xe");
+}
+
+static uint16_t read_pci_device_id(int fd)
+{
+	char path[PATH_MAX], buf[32];
+	struct stat st;
+	int sysfs, len;
+	unsigned int devid;
+
+	if (fstat(fd, &st) || !S_ISCHR(st.st_mode))
+		return 0;
+
+	snprintf(path, sizeof(path), "/sys/dev/char/%d:%d/device/device",
+		 major(st.st_rdev), minor(st.st_rdev));
+	sysfs = open(path, O_RDONLY);
+	if (sysfs < 0)
+		return 0;
+
+	len = read(sysfs, buf, sizeof(buf) - 1);
+	close(sysfs);
+	if (len <= 0)
+		return 0;
+
+	buf[len] = '\0';
+	if (sscanf(buf, "0x%x", &devid) != 1)
+		return 0;
+
+	return devid;
+}
+
+/*
+ * Forward declaration required: xe_dev_id() is declared in the (heavy)
+ * lib/xe/xe_query.h, which this file intentionally does not include. The
+ * declaration below keeps -Wmissing-prototypes happy for the definition
+ * that follows.
+ */
+uint16_t xe_dev_id(int fd);
+uint16_t xe_dev_id(int fd)
+{
+	return read_pci_device_id(fd);
+}
+
+/* Maximum /dev/dri/card<N> minor number probed by __drm_open_driver(). */
+#define IGT_DRM_STUB_MAX_CARDS 16
+
+int __drm_open_driver(int chipset)
+{
+	char path[PATH_MAX];
+	int fd;
+
+	for (int i = 0; i < IGT_DRM_STUB_MAX_CARDS; i++) {
+		snprintf(path, sizeof(path), "/dev/dri/card%d", i);
+		fd = open(path, O_RDWR | O_CLOEXEC);
+		if (fd < 0)
+			continue;
+
+		if ((chipset == DRIVER_INTEL && is_i915_device(fd)) ||
+		    (chipset == DRIVER_XE && driver_name_matches(fd, "xe")) ||
+		    (chipset == DRIVER_ANY && is_intel_device(fd)))
+			return fd;
+
+		close(fd);
+	}
+
+	errno = ENODEV;
+	return -1;
+}
diff --git a/lib/meson.build b/lib/meson.build
index a57c1eb8d..484a912d7 100644
--- a/lib/meson.build
+++ b/lib/meson.build
@@ -356,6 +356,15 @@ lib_igt_tools_stub_build = static_library('igt_tools_stub',
 lib_igt_tools_stub = declare_dependency(link_with : lib_igt_tools_stub_build,
 					include_directories : inc)
 
+lib_igt_drm_stub_build = static_library('igt_drm_stub',
+	['igt_drm_stub.c'],
+	dependencies : [libdrm, pciaccess],
+	include_directories : inc)
+
+lib_igt_drm_stub = declare_dependency(link_with : lib_igt_drm_stub_build,
+				      dependencies : [libdrm, pciaccess],
+				      include_directories : inc)
+
 scan_dep = [
 	glib,
 	libpci,
-- 
2.53.0


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

* [PATCH i-g-t v3 07/31] lib/igt_device_scan: wire to use static sub-libraries
  2026-07-15 12:15 [PATCH i-g-t v3 00/31] tools: remove unnecessary shared library dependencies from standalone tools Sebastian Brzezinka
                   ` (5 preceding siblings ...)
  2026-07-15 12:15 ` [PATCH i-g-t v3 06/31] lib/igt_drm_stub: introduce for tools needing driver detection Sebastian Brzezinka
@ 2026-07-15 12:15 ` Sebastian Brzezinka
  2026-07-16  7:40   ` Krzysztof Karas
  2026-07-15 12:15 ` [PATCH i-g-t v3 08/31] tools/intel_gpu_top: add explicit drm/tools-stub deps Sebastian Brzezinka
                   ` (27 subsequent siblings)
  34 siblings, 1 reply; 50+ messages in thread
From: Sebastian Brzezinka @ 2026-07-15 12:15 UTC (permalink / raw)
  To: igt-dev
  Cc: Sebastian Brzezinka, kamil.konieczny, krzysztof.karas,
	krzysztof.niemiec, Ashutosh Dixit

Drop the directly compiled igt_tools_stub.c from lib_igt_device_scan
and link lib_igt_tools_stub and lib_igt_drm_stub instead. Compiling
igt_tools_stub.c directly would cause duplicate symbol errors when a
tool links both lib_igt_device_scan and lib_igt_tools_stub.

Add libdrm and pciaccess to scan_dep so tools linking lib_igt_device_scan
pick up the right dependencies.

Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
Acked-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
Reviewed-by: Krzysztof Niemiec <krzysztof.niemiec@intel.com>
---
 lib/meson.build | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/lib/meson.build b/lib/meson.build
index 484a912d7..2c1fbcd43 100644
--- a/lib/meson.build
+++ b/lib/meson.build
@@ -367,22 +367,24 @@ lib_igt_drm_stub = declare_dependency(link_with : lib_igt_drm_stub_build,
 
 scan_dep = [
 	glib,
+	libdrm,
 	libpci,
 	libudev,
+	pciaccess,
 ]
 
 lib_igt_device_scan_build = static_library('igt_device_scan',
 	['igt_device_scan.c',
 	'igt_list.c',
 	'igt_map.c',
-	'igt_tools_stub.c',
 	'intel_device_info.c',
 	'intel_cmds_info.c',
 	],
-	dependencies : scan_dep,
+	dependencies : [scan_dep, lib_igt_drm_stub, lib_igt_tools_stub],
 	include_directories : inc)
 
 lib_igt_device_scan = declare_dependency(link_with : lib_igt_device_scan_build,
+				  dependencies : [libdrm, pciaccess],
 				  include_directories : inc)
 
 lib_igt_drm_clients_build = static_library('igt_drm_clients',
-- 
2.53.0


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

* [PATCH i-g-t v3 08/31] tools/intel_gpu_top: add explicit drm/tools-stub deps
  2026-07-15 12:15 [PATCH i-g-t v3 00/31] tools: remove unnecessary shared library dependencies from standalone tools Sebastian Brzezinka
                   ` (6 preceding siblings ...)
  2026-07-15 12:15 ` [PATCH i-g-t v3 07/31] lib/igt_device_scan: wire to use static sub-libraries Sebastian Brzezinka
@ 2026-07-15 12:15 ` Sebastian Brzezinka
  2026-07-16  7:43   ` Krzysztof Karas
  2026-07-15 12:15 ` [PATCH i-g-t v3 09/31] lib/igt_halffloat: introduce static sub-library for tools Sebastian Brzezinka
                   ` (26 subsequent siblings)
  34 siblings, 1 reply; 50+ messages in thread
From: Sebastian Brzezinka @ 2026-07-15 12:15 UTC (permalink / raw)
  To: igt-dev
  Cc: Sebastian Brzezinka, kamil.konieczny, krzysztof.karas,
	krzysztof.niemiec, Ashutosh Dixit

Meson does not automatically propagate static library dependencies
to executables via link_with.  lib_igt_device_scan internally links
lib_igt_drm_stub and lib_igt_tools_stub but does not reexport them
through its declare_dependency.  As a result intel_gpu_top must list
them explicitly, otherwise the linker cannot resolve symbols such as
is_i915_device and igt_log at final link time.

Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
Acked-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
Reviewed-by: Krzysztof Niemiec <krzysztof.niemiec@intel.com>
---
 tools/meson.build | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/tools/meson.build b/tools/meson.build
index 4c67dde4f..53aa31056 100644
--- a/tools/meson.build
+++ b/tools/meson.build
@@ -105,7 +105,8 @@ install_subdir('registers', install_dir : datadir)
 executable('intel_gpu_top', 'intel_gpu_top.c',
 	   install : true,
 	   install_rpath : bindir_rpathdir,
-	   dependencies : [lib_igt_perf,lib_igt_device_scan,lib_igt_drm_clients,lib_igt_drm_fdinfo,math])
+	   dependencies : [lib_igt_perf,lib_igt_device_scan,lib_igt_drm_clients,lib_igt_drm_fdinfo,
+	                   lib_igt_drm_stub, lib_igt_tools_stub, math])
 
 executable('amd_hdmi_compliance', 'amd_hdmi_compliance.c',
 	   dependencies : [tool_deps],
-- 
2.53.0


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

* [PATCH i-g-t v3 09/31] lib/igt_halffloat: introduce static sub-library for tools
  2026-07-15 12:15 [PATCH i-g-t v3 00/31] tools: remove unnecessary shared library dependencies from standalone tools Sebastian Brzezinka
                   ` (7 preceding siblings ...)
  2026-07-15 12:15 ` [PATCH i-g-t v3 08/31] tools/intel_gpu_top: add explicit drm/tools-stub deps Sebastian Brzezinka
@ 2026-07-15 12:15 ` Sebastian Brzezinka
  2026-07-16  7:56   ` Krzysztof Karas
  2026-07-15 12:15 ` [PATCH i-g-t v3 10/31] lib/i915/intel_decode: replace igt.h with minimal headers Sebastian Brzezinka
                   ` (25 subsequent siblings)
  34 siblings, 1 reply; 50+ messages in thread
From: Sebastian Brzezinka @ 2026-07-15 12:15 UTC (permalink / raw)
  To: igt-dev
  Cc: Sebastian Brzezinka, kamil.konieczny, krzysztof.karas,
	krzysztof.niemiec, Ashutosh Dixit

Add lib_igt_halffloat backed by igt_halffloat.c with a math dependency.
Tools that use half-float conversion (e.g. intel_vbt_decode) can link
this minimal library instead of the full libigt.so.

Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
Acked-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
Reviewed-by: Krzysztof Niemiec <krzysztof.niemiec@intel.com>
---
 lib/meson.build | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/lib/meson.build b/lib/meson.build
index 2c1fbcd43..93db217f8 100644
--- a/lib/meson.build
+++ b/lib/meson.build
@@ -415,6 +415,14 @@ lib_igt_stats_build = static_library('igt_stats_tools',
 lib_igt_stats = declare_dependency(link_with : lib_igt_stats_build,
 				   include_directories : inc)
 
+lib_igt_halffloat_build = static_library('igt_halffloat',
+	['igt_halffloat.c'],
+	include_directories : inc)
+
+lib_igt_halffloat = declare_dependency(link_with : lib_igt_halffloat_build,
+				       dependencies : [math],
+				       include_directories : inc)
+
 i915_perf_files = [
   'igt_list.c',
   'i915/perf.c',
-- 
2.53.0


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

* [PATCH i-g-t v3 10/31] lib/i915/intel_decode: replace igt.h with minimal headers
  2026-07-15 12:15 [PATCH i-g-t v3 00/31] tools: remove unnecessary shared library dependencies from standalone tools Sebastian Brzezinka
                   ` (8 preceding siblings ...)
  2026-07-15 12:15 ` [PATCH i-g-t v3 09/31] lib/igt_halffloat: introduce static sub-library for tools Sebastian Brzezinka
@ 2026-07-15 12:15 ` Sebastian Brzezinka
  2026-07-16  8:16   ` Krzysztof Karas
  2026-07-15 12:15 ` [PATCH i-g-t v3 11/31] lib/i915/intel_decode: introduce static sub-library for tools Sebastian Brzezinka
                   ` (24 subsequent siblings)
  34 siblings, 1 reply; 50+ messages in thread
From: Sebastian Brzezinka @ 2026-07-15 12:15 UTC (permalink / raw)
  To: igt-dev
  Cc: Sebastian Brzezinka, kamil.konieczny, krzysztof.karas,
	krzysztof.niemiec, Ashutosh Dixit

intel_decode.c only uses two symbols from the IGT: intel_gen()
and intel_get_device_info(), both provided by intel_chipset.h.
The DRM_PRINTFLIKE macro used for the instr_out() format attribute is
provided by xf86drm.h.

This is a prerequisite for building intel_decode.c into a static
sub-library (lib_i915_decode) that tools can link without pulling in
the full libigt.so stack.

Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
Acked-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
Reviewed-by: Krzysztof Niemiec <krzysztof.niemiec@intel.com>
---
 lib/i915/intel_decode.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/lib/i915/intel_decode.c b/lib/i915/intel_decode.c
index b78993c47..0b404ae53 100644
--- a/lib/i915/intel_decode.c
+++ b/lib/i915/intel_decode.c
@@ -28,8 +28,9 @@
 #include <stdbool.h>
 #include <stdarg.h>
 #include <string.h>
+#include <xf86drm.h>
 
-#include "igt.h"
+#include "intel_chipset.h"
 #include "intel_decode.h"
 
 /* Struct for tracking intel_decode state. */
-- 
2.53.0


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

* [PATCH i-g-t v3 11/31] lib/i915/intel_decode: introduce static sub-library for tools
  2026-07-15 12:15 [PATCH i-g-t v3 00/31] tools: remove unnecessary shared library dependencies from standalone tools Sebastian Brzezinka
                   ` (9 preceding siblings ...)
  2026-07-15 12:15 ` [PATCH i-g-t v3 10/31] lib/i915/intel_decode: replace igt.h with minimal headers Sebastian Brzezinka
@ 2026-07-15 12:15 ` Sebastian Brzezinka
  2026-07-16  8:26   ` Krzysztof Karas
  2026-07-15 12:15 ` [PATCH i-g-t v3 12/31] lib/intel_mmio: introduce lib_igt_reg_tools " Sebastian Brzezinka
                   ` (23 subsequent siblings)
  34 siblings, 1 reply; 50+ messages in thread
From: Sebastian Brzezinka @ 2026-07-15 12:15 UTC (permalink / raw)
  To: igt-dev
  Cc: Sebastian Brzezinka, kamil.konieczny, krzysztof.karas,
	krzysztof.niemiec, Ashutosh Dixit

Add lib_i915_decode built from i915/intel_decode.c and instdone.c.
This lets tools like intel_error_decode link only the decode logic
without pulling in the full libigt.so.

Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
Acked-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
Reviewed-by: Krzysztof Niemiec <krzysztof.niemiec@intel.com>
---
 lib/meson.build | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/lib/meson.build b/lib/meson.build
index 93db217f8..8addc8982 100644
--- a/lib/meson.build
+++ b/lib/meson.build
@@ -423,6 +423,20 @@ lib_igt_halffloat = declare_dependency(link_with : lib_igt_halffloat_build,
 				       dependencies : [math],
 				       include_directories : inc)
 
+lib_i915_decode_build = static_library('i915_decode',
+	['i915/intel_decode.c',
+	 'instdone.c',
+	],
+	dependencies : [lib_igt_chipset],
+	include_directories : inc)
+
+lib_i915_decode = declare_dependency(link_with : lib_i915_decode_build,
+				     dependencies : [lib_igt_chipset,
+				                     lib_igt_tools_stub,
+				                     lib_igt_drm_stub,
+				                     pciaccess],
+				     include_directories : inc)
+
 i915_perf_files = [
   'igt_list.c',
   'i915/perf.c',
-- 
2.53.0


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

* [PATCH i-g-t v3 12/31] lib/intel_mmio: introduce lib_igt_reg_tools static sub-library for tools
  2026-07-15 12:15 [PATCH i-g-t v3 00/31] tools: remove unnecessary shared library dependencies from standalone tools Sebastian Brzezinka
                   ` (10 preceding siblings ...)
  2026-07-15 12:15 ` [PATCH i-g-t v3 11/31] lib/i915/intel_decode: introduce static sub-library for tools Sebastian Brzezinka
@ 2026-07-15 12:15 ` Sebastian Brzezinka
  2026-07-16 13:27   ` Krzysztof Karas
  2026-07-15 12:15 ` [PATCH i-g-t v3 13/31] tools/intel_gpu_frequency: link with minimal sub-libraries Sebastian Brzezinka
                   ` (22 subsequent siblings)
  34 siblings, 1 reply; 50+ messages in thread
From: Sebastian Brzezinka @ 2026-07-15 12:15 UTC (permalink / raw)
  To: igt-dev
  Cc: Sebastian Brzezinka, kamil.konieczny, krzysztof.karas,
	krzysztof.niemiec, Ashutosh Dixit

Add lib_igt_reg_tools built from intel_mmio.c, intel_reg_map.c and
intel_iosf.c.  Tools that need register access (e.g. intel_reg) can link
this library without pulling in the full libigt.so.

Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
Acked-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
Reviewed-by: Krzysztof Niemiec <krzysztof.niemiec@intel.com>
---
 lib/meson.build | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/lib/meson.build b/lib/meson.build
index 8addc8982..aa8eae68b 100644
--- a/lib/meson.build
+++ b/lib/meson.build
@@ -437,6 +437,21 @@ lib_i915_decode = declare_dependency(link_with : lib_i915_decode_build,
 				                     pciaccess],
 				     include_directories : inc)
 
+lib_igt_reg_tools_build = static_library('igt_reg_tools',
+	['intel_mmio.c',
+	 'intel_reg_map.c',
+	 'intel_iosf.c',
+	],
+	dependencies : [pciaccess, libdrm],
+	include_directories : inc)
+
+lib_igt_reg_tools = declare_dependency(link_with : lib_igt_reg_tools_build,
+				       dependencies : [lib_igt_chipset,
+				                       lib_igt_tools_stub,
+				                       lib_igt_drm_stub,
+				                       pciaccess, libdrm],
+				       include_directories : inc)
+
 i915_perf_files = [
   'igt_list.c',
   'i915/perf.c',
-- 
2.53.0


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

* [PATCH i-g-t v3 13/31] tools/intel_gpu_frequency: link with minimal sub-libraries
  2026-07-15 12:15 [PATCH i-g-t v3 00/31] tools: remove unnecessary shared library dependencies from standalone tools Sebastian Brzezinka
                   ` (11 preceding siblings ...)
  2026-07-15 12:15 ` [PATCH i-g-t v3 12/31] lib/intel_mmio: introduce lib_igt_reg_tools " Sebastian Brzezinka
@ 2026-07-15 12:15 ` Sebastian Brzezinka
  2026-07-16 13:34   ` Krzysztof Karas
  2026-07-15 12:15 ` [PATCH i-g-t v3 14/31] tools/intel_stepping: " Sebastian Brzezinka
                   ` (21 subsequent siblings)
  34 siblings, 1 reply; 50+ messages in thread
From: Sebastian Brzezinka @ 2026-07-15 12:15 UTC (permalink / raw)
  To: igt-dev
  Cc: Sebastian Brzezinka, kamil.konieczny, krzysztof.karas,
	krzysztof.niemiec, Ashutosh Dixit

intel_gpu_frequency needs only intel_gen/devid helpers and a DRM device
opener to query the GPU frequency.  Link it against lib_igt_chipset for
the devid helpers and lib_igt_drm_stub for driver detection and device
opening, instead of the full libigt.so stack.

ldd before: 35  (ldd intel_gpu_frequency | wc -l)
ldd after:   5  (ldd intel_gpu_frequency | wc -l)

Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
Acked-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
Reviewed-by: Krzysztof Niemiec <krzysztof.niemiec@intel.com>
---
 tools/meson.build | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/tools/meson.build b/tools/meson.build
index 53aa31056..01400f53e 100644
--- a/tools/meson.build
+++ b/tools/meson.build
@@ -23,7 +23,6 @@ tools_progs = [
 	'intel_dump_decode',
 	'intel_error_decode',
 	'intel_forcewaked',
-	'intel_gpu_frequency',
 	'intel_framebuffer_dump',
 	'intel_gpu_time',
 	'intel_gtt',
@@ -66,6 +65,11 @@ executable('intel_firmware_decode', 'intel_firmware_decode.c',
 	   install_rpath : bindir_rpathdir,
 	   install : true)
 
+executable('intel_gpu_frequency', 'intel_gpu_frequency.c',
+	   dependencies : [lib_igt_chipset, lib_igt_tools_stub, lib_igt_drm_stub],
+	   install_rpath : bindir_rpathdir,
+	   install : true)
+
 if libudev.found()
 	intel_dp_compliance_src = [
 		'intel_dp_compliance.c',
-- 
2.53.0


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

* [PATCH i-g-t v3 14/31] tools/intel_stepping: link with minimal sub-libraries
  2026-07-15 12:15 [PATCH i-g-t v3 00/31] tools: remove unnecessary shared library dependencies from standalone tools Sebastian Brzezinka
                   ` (12 preceding siblings ...)
  2026-07-15 12:15 ` [PATCH i-g-t v3 13/31] tools/intel_gpu_frequency: link with minimal sub-libraries Sebastian Brzezinka
@ 2026-07-15 12:15 ` Sebastian Brzezinka
  2026-07-15 12:15 ` [PATCH i-g-t v3 15/31] tools/intel_gtt: " Sebastian Brzezinka
                   ` (20 subsequent siblings)
  34 siblings, 0 replies; 50+ messages in thread
From: Sebastian Brzezinka @ 2026-07-15 12:15 UTC (permalink / raw)
  To: igt-dev
  Cc: Sebastian Brzezinka, kamil.konieczny, krzysztof.karas,
	krzysztof.niemiec, Ashutosh Dixit

intel_stepping only needs the chipset tables and the small tool stub
support used by those helpers, not the full libigt.so stack.

Switch to linking against lib_igt_chipset, lib_igt_tools_stub and
libpciaccess.

ldd before: 35  (ldd | wc -l)
ldd after:   4  (ldd | wc -l)

Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
Acked-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
Reviewed-by: Krzysztof Niemiec <krzysztof.niemiec@intel.com>
---
 tools/meson.build | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/tools/meson.build b/tools/meson.build
index 01400f53e..8eb346321 100644
--- a/tools/meson.build
+++ b/tools/meson.build
@@ -36,7 +36,6 @@ tools_progs = [
 	'intel_pm_rpm',
 	'intel_reg_checker',
 	'intel_residency',
-	'intel_stepping',
 	'intel_tiling_detect',
 	'intel_vbt_decode',
 	'intel_watermark',
@@ -70,6 +69,12 @@ executable('intel_gpu_frequency', 'intel_gpu_frequency.c',
 	   install_rpath : bindir_rpathdir,
 	   install : true)
 
+executable('intel_stepping', 'intel_stepping.c',
+	   dependencies : [lib_igt_chipset, lib_igt_tools_stub, lib_igt_drm_stub,
+	                    pciaccess, libdrm],
+	   install_rpath : bindir_rpathdir,
+	   install : true)
+
 if libudev.found()
 	intel_dp_compliance_src = [
 		'intel_dp_compliance.c',
-- 
2.53.0


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

* [PATCH i-g-t v3 15/31] tools/intel_gtt: link with minimal sub-libraries
  2026-07-15 12:15 [PATCH i-g-t v3 00/31] tools: remove unnecessary shared library dependencies from standalone tools Sebastian Brzezinka
                   ` (13 preceding siblings ...)
  2026-07-15 12:15 ` [PATCH i-g-t v3 14/31] tools/intel_stepping: " Sebastian Brzezinka
@ 2026-07-15 12:15 ` Sebastian Brzezinka
  2026-07-15 12:15 ` [PATCH i-g-t v3 16/31] tools/intel_dump_decode: " Sebastian Brzezinka
                   ` (19 subsequent siblings)
  34 siblings, 0 replies; 50+ messages in thread
From: Sebastian Brzezinka @ 2026-07-15 12:15 UTC (permalink / raw)
  To: igt-dev
  Cc: Sebastian Brzezinka, kamil.konieczny, krzysztof.karas,
	krzysztof.niemiec, Ashutosh Dixit

intel_gtt only needs the chipset helpers plus the small tool stubs they
rely on. The full libigt.so dependency chain is unnecessary.

Switch to linking against lib_igt_chipset, lib_igt_tools_stub,
lib_igt_drm_stub, pciaccess and libdrm.

ldd before: 35  (ldd | wc -l)
ldd after:   5  (ldd | wc -l)

Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
Acked-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
Reviewed-by: Krzysztof Niemiec <krzysztof.niemiec@intel.com>
---
 tools/meson.build | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/tools/meson.build b/tools/meson.build
index 8eb346321..a3fef87a9 100644
--- a/tools/meson.build
+++ b/tools/meson.build
@@ -25,7 +25,6 @@ tools_progs = [
 	'intel_forcewaked',
 	'intel_framebuffer_dump',
 	'intel_gpu_time',
-	'intel_gtt',
 	'intel_guc_logger',
 	'intel_hdcp',
 	'intel_infoframes',
@@ -75,6 +74,12 @@ executable('intel_stepping', 'intel_stepping.c',
 	   install_rpath : bindir_rpathdir,
 	   install : true)
 
+executable('intel_gtt', 'intel_gtt.c',
+	   dependencies : [lib_igt_chipset, lib_igt_tools_stub, lib_igt_drm_stub,
+	                    pciaccess, libdrm],
+	   install_rpath : bindir_rpathdir,
+	   install : true)
+
 if libudev.found()
 	intel_dp_compliance_src = [
 		'intel_dp_compliance.c',
-- 
2.53.0


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

* [PATCH i-g-t v3 16/31] tools/intel_dump_decode: link with minimal sub-libraries
  2026-07-15 12:15 [PATCH i-g-t v3 00/31] tools: remove unnecessary shared library dependencies from standalone tools Sebastian Brzezinka
                   ` (14 preceding siblings ...)
  2026-07-15 12:15 ` [PATCH i-g-t v3 15/31] tools/intel_gtt: " Sebastian Brzezinka
@ 2026-07-15 12:15 ` Sebastian Brzezinka
  2026-07-15 12:15 ` [PATCH i-g-t v3 17/31] tools/intel_error_decode: " Sebastian Brzezinka
                   ` (18 subsequent siblings)
  34 siblings, 0 replies; 50+ messages in thread
From: Sebastian Brzezinka @ 2026-07-15 12:15 UTC (permalink / raw)
  To: igt-dev
  Cc: Sebastian Brzezinka, kamil.konieczny, krzysztof.karas,
	krzysztof.niemiec, Ashutosh Dixit

intel_dump_decode only needs the i915 decoder. Link it against
lib_i915_decode instead of the full libigt.so stack.

ldd before: 35  (ldd | wc -l)
ldd after:   4  (ldd | wc -l)

Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
Acked-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
Reviewed-by: Krzysztof Niemiec <krzysztof.niemiec@intel.com>
---
 tools/meson.build | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/tools/meson.build b/tools/meson.build
index a3fef87a9..467b8eea1 100644
--- a/tools/meson.build
+++ b/tools/meson.build
@@ -20,7 +20,6 @@ tools_progs = [
 	'intel_display_bandwidth',
 	'intel_display_crc',
 	'intel_display_poller',
-	'intel_dump_decode',
 	'intel_error_decode',
 	'intel_forcewaked',
 	'intel_framebuffer_dump',
@@ -80,6 +79,11 @@ executable('intel_gtt', 'intel_gtt.c',
 	   install_rpath : bindir_rpathdir,
 	   install : true)
 
+executable('intel_dump_decode', 'intel_dump_decode.c',
+	   dependencies : [lib_i915_decode],
+	   install_rpath : bindir_rpathdir,
+	   install : true)
+
 if libudev.found()
 	intel_dp_compliance_src = [
 		'intel_dp_compliance.c',
-- 
2.53.0


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

* [PATCH i-g-t v3 17/31] tools/intel_error_decode: link with minimal sub-libraries
  2026-07-15 12:15 [PATCH i-g-t v3 00/31] tools: remove unnecessary shared library dependencies from standalone tools Sebastian Brzezinka
                   ` (15 preceding siblings ...)
  2026-07-15 12:15 ` [PATCH i-g-t v3 16/31] tools/intel_dump_decode: " Sebastian Brzezinka
@ 2026-07-15 12:15 ` Sebastian Brzezinka
  2026-07-15 12:15 ` [PATCH i-g-t v3 18/31] tools/intel_vbt_decode: " Sebastian Brzezinka
                   ` (17 subsequent siblings)
  34 siblings, 0 replies; 50+ messages in thread
From: Sebastian Brzezinka @ 2026-07-15 12:15 UTC (permalink / raw)
  To: igt-dev
  Cc: Sebastian Brzezinka, kamil.konieczny, krzysztof.karas,
	krzysztof.niemiec, Ashutosh Dixit

intel_error_decode needs the batch decoder, chipset tables and zlib for
compressed error state handling, but not the full libigt.so stack.

Switch to linking against lib_i915_decode plus the minimal helper
libraries it relies on.

ldd before: 35  (ldd | wc -l)
ldd after:   4  (ldd | wc -l)

Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
Acked-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
Reviewed-by: Krzysztof Niemiec <krzysztof.niemiec@intel.com>
---
 tools/meson.build | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/tools/meson.build b/tools/meson.build
index 467b8eea1..b04754c5e 100644
--- a/tools/meson.build
+++ b/tools/meson.build
@@ -20,7 +20,6 @@ tools_progs = [
 	'intel_display_bandwidth',
 	'intel_display_crc',
 	'intel_display_poller',
-	'intel_error_decode',
 	'intel_forcewaked',
 	'intel_framebuffer_dump',
 	'intel_gpu_time',
@@ -84,6 +83,11 @@ executable('intel_dump_decode', 'intel_dump_decode.c',
 	   install_rpath : bindir_rpathdir,
 	   install : true)
 
+executable('intel_error_decode', 'intel_error_decode.c',
+	   dependencies : [lib_i915_decode, pciaccess, zlib, libdrm],
+	   install_rpath : bindir_rpathdir,
+	   install : true)
+
 if libudev.found()
 	intel_dp_compliance_src = [
 		'intel_dp_compliance.c',
-- 
2.53.0


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

* [PATCH i-g-t v3 18/31] tools/intel_vbt_decode: link with minimal sub-libraries
  2026-07-15 12:15 [PATCH i-g-t v3 00/31] tools: remove unnecessary shared library dependencies from standalone tools Sebastian Brzezinka
                   ` (16 preceding siblings ...)
  2026-07-15 12:15 ` [PATCH i-g-t v3 17/31] tools/intel_error_decode: " Sebastian Brzezinka
@ 2026-07-15 12:15 ` Sebastian Brzezinka
  2026-07-15 12:15 ` [PATCH i-g-t v3 19/31] tools/intel_backlight: " Sebastian Brzezinka
                   ` (16 subsequent siblings)
  34 siblings, 0 replies; 50+ messages in thread
From: Sebastian Brzezinka @ 2026-07-15 12:15 UTC (permalink / raw)
  To: igt-dev
  Cc: Sebastian Brzezinka, kamil.konieczny, krzysztof.karas,
	krzysztof.niemiec, Ashutosh Dixit

intel_vbt_decode only needs the chipset tables, half-float conversion
helpers and the lightweight tool stubs used by those helpers.

Switch to linking against lib_igt_chipset, lib_igt_halffloat and
lib_igt_tools_stub instead of the full libigt.so stack.

ldd before: 35  (ldd | wc -l)
ldd after:   4  (ldd | wc -l)

Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
Acked-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
Reviewed-by: Krzysztof Niemiec <krzysztof.niemiec@intel.com>
---
 tools/meson.build | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/tools/meson.build b/tools/meson.build
index b04754c5e..46cf1a717 100644
--- a/tools/meson.build
+++ b/tools/meson.build
@@ -34,7 +34,6 @@ tools_progs = [
 	'intel_reg_checker',
 	'intel_residency',
 	'intel_tiling_detect',
-	'intel_vbt_decode',
 	'intel_watermark',
 	'intel_gem_info',
 	'intel_gvtg_test',
@@ -88,6 +87,11 @@ executable('intel_error_decode', 'intel_error_decode.c',
 	   install_rpath : bindir_rpathdir,
 	   install : true)
 
+executable('intel_vbt_decode', 'intel_vbt_decode.c',
+	   dependencies : [lib_igt_chipset, lib_igt_halffloat, lib_igt_tools_stub, pciaccess, libdrm, math],
+	   install_rpath : bindir_rpathdir,
+	   install : true)
+
 if libudev.found()
 	intel_dp_compliance_src = [
 		'intel_dp_compliance.c',
-- 
2.53.0


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

* [PATCH i-g-t v3 19/31] tools/intel_backlight: link with minimal sub-libraries
  2026-07-15 12:15 [PATCH i-g-t v3 00/31] tools: remove unnecessary shared library dependencies from standalone tools Sebastian Brzezinka
                   ` (17 preceding siblings ...)
  2026-07-15 12:15 ` [PATCH i-g-t v3 18/31] tools/intel_vbt_decode: " Sebastian Brzezinka
@ 2026-07-15 12:15 ` Sebastian Brzezinka
  2026-07-15 12:15 ` [PATCH i-g-t v3 20/31] tools/intel_lid: " Sebastian Brzezinka
                   ` (15 subsequent siblings)
  34 siblings, 0 replies; 50+ messages in thread
From: Sebastian Brzezinka @ 2026-07-15 12:15 UTC (permalink / raw)
  To: igt-dev
  Cc: Sebastian Brzezinka, kamil.konieczny, krzysztof.karas,
	krzysztof.niemiec, Ashutosh Dixit

intel_backlight only needs MMIO/register access helpers and the chipset
metadata they use. The full libigt.so stack is unnecessary.

Add lib_igt_reg_tools and link intel_backlight against it instead of
libigt.so.

ldd before: 35  (ldd | wc -l)
ldd after:   5  (ldd | wc -l)

Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
Acked-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
Reviewed-by: Krzysztof Niemiec <krzysztof.niemiec@intel.com>
---
 tools/meson.build | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/tools/meson.build b/tools/meson.build
index 46cf1a717..8899a5b49 100644
--- a/tools/meson.build
+++ b/tools/meson.build
@@ -15,7 +15,6 @@ tools_progs = [
 	'igt_facts',
 	'igt_power',
 	'intel_audio_dump',
-	'intel_backlight',
 	'intel_bios_dumper',
 	'intel_display_bandwidth',
 	'intel_display_crc',
@@ -92,6 +91,11 @@ executable('intel_vbt_decode', 'intel_vbt_decode.c',
 	   install_rpath : bindir_rpathdir,
 	   install : true)
 
+executable('intel_backlight', 'intel_backlight.c',
+	   dependencies : [lib_igt_reg_tools, pciaccess, libdrm],
+	   install_rpath : bindir_rpathdir,
+	   install : true)
+
 if libudev.found()
 	intel_dp_compliance_src = [
 		'intel_dp_compliance.c',
-- 
2.53.0


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

* [PATCH i-g-t v3 20/31] tools/intel_lid: link with minimal sub-libraries
  2026-07-15 12:15 [PATCH i-g-t v3 00/31] tools: remove unnecessary shared library dependencies from standalone tools Sebastian Brzezinka
                   ` (18 preceding siblings ...)
  2026-07-15 12:15 ` [PATCH i-g-t v3 19/31] tools/intel_backlight: " Sebastian Brzezinka
@ 2026-07-15 12:15 ` Sebastian Brzezinka
  2026-07-15 12:15 ` [PATCH i-g-t v3 21/31] tools/intel_gpu_time: " Sebastian Brzezinka
                   ` (14 subsequent siblings)
  34 siblings, 0 replies; 50+ messages in thread
From: Sebastian Brzezinka @ 2026-07-15 12:15 UTC (permalink / raw)
  To: igt-dev
  Cc: Sebastian Brzezinka, kamil.konieczny, krzysztof.karas,
	krzysztof.niemiec, Ashutosh Dixit

intel_lid only needs the register/MMIO helper subset, not the full
libigt.so stack.

Switch to linking against lib_igt_reg_tools.

ldd before: 35  (ldd | wc -l)
ldd after:   5  (ldd | wc -l)

Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
Acked-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
Reviewed-by: Krzysztof Niemiec <krzysztof.niemiec@intel.com>
---
 tools/meson.build | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/tools/meson.build b/tools/meson.build
index 8899a5b49..0978f8f11 100644
--- a/tools/meson.build
+++ b/tools/meson.build
@@ -25,7 +25,6 @@ tools_progs = [
 	'intel_guc_logger',
 	'intel_hdcp',
 	'intel_infoframes',
-	'intel_lid',
 	'intel_opregion_decode',
 	'intel_panel_fitter',
 	'intel_perf_counters',
@@ -96,6 +95,11 @@ executable('intel_backlight', 'intel_backlight.c',
 	   install_rpath : bindir_rpathdir,
 	   install : true)
 
+executable('intel_lid', 'intel_lid.c',
+	   dependencies : [lib_igt_reg_tools, pciaccess, libdrm],
+	   install_rpath : bindir_rpathdir,
+	   install : true)
+
 if libudev.found()
 	intel_dp_compliance_src = [
 		'intel_dp_compliance.c',
-- 
2.53.0


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

* [PATCH i-g-t v3 21/31] tools/intel_gpu_time: link with minimal sub-libraries
  2026-07-15 12:15 [PATCH i-g-t v3 00/31] tools: remove unnecessary shared library dependencies from standalone tools Sebastian Brzezinka
                   ` (19 preceding siblings ...)
  2026-07-15 12:15 ` [PATCH i-g-t v3 20/31] tools/intel_lid: " Sebastian Brzezinka
@ 2026-07-15 12:15 ` Sebastian Brzezinka
  2026-07-15 12:15 ` [PATCH i-g-t v3 22/31] tools/intel_audio_dump: " Sebastian Brzezinka
                   ` (13 subsequent siblings)
  34 siblings, 0 replies; 50+ messages in thread
From: Sebastian Brzezinka @ 2026-07-15 12:15 UTC (permalink / raw)
  To: igt-dev
  Cc: Sebastian Brzezinka, kamil.konieczny, krzysztof.karas,
	krzysztof.niemiec, Ashutosh Dixit

intel_gpu_time only needs the register/MMIO helper subset, not the full
libigt.so stack.

Switch to linking against lib_igt_reg_tools.

ldd before: 35  (ldd | wc -l)
ldd after:   5   (ldd | wc -l)

Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
Acked-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
Reviewed-by: Krzysztof Niemiec <krzysztof.niemiec@intel.com>
---
 tools/meson.build | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/tools/meson.build b/tools/meson.build
index 0978f8f11..2e8ceea36 100644
--- a/tools/meson.build
+++ b/tools/meson.build
@@ -21,7 +21,6 @@ tools_progs = [
 	'intel_display_poller',
 	'intel_forcewaked',
 	'intel_framebuffer_dump',
-	'intel_gpu_time',
 	'intel_guc_logger',
 	'intel_hdcp',
 	'intel_infoframes',
@@ -100,6 +99,11 @@ executable('intel_lid', 'intel_lid.c',
 	   install_rpath : bindir_rpathdir,
 	   install : true)
 
+executable('intel_gpu_time', 'intel_gpu_time.c',
+	   dependencies : [lib_igt_reg_tools, pciaccess, libdrm],
+	   install_rpath : bindir_rpathdir,
+	   install : true)
+
 if libudev.found()
 	intel_dp_compliance_src = [
 		'intel_dp_compliance.c',
-- 
2.53.0


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

* [PATCH i-g-t v3 22/31] tools/intel_audio_dump: link with minimal sub-libraries
  2026-07-15 12:15 [PATCH i-g-t v3 00/31] tools: remove unnecessary shared library dependencies from standalone tools Sebastian Brzezinka
                   ` (20 preceding siblings ...)
  2026-07-15 12:15 ` [PATCH i-g-t v3 21/31] tools/intel_gpu_time: " Sebastian Brzezinka
@ 2026-07-15 12:15 ` Sebastian Brzezinka
  2026-07-15 12:15 ` [PATCH i-g-t v3 23/31] tools/intel_forcewaked: " Sebastian Brzezinka
                   ` (12 subsequent siblings)
  34 siblings, 0 replies; 50+ messages in thread
From: Sebastian Brzezinka @ 2026-07-15 12:15 UTC (permalink / raw)
  To: igt-dev
  Cc: Sebastian Brzezinka, kamil.konieczny, krzysztof.karas,
	krzysztof.niemiec, Ashutosh Dixit

intel_audio_dump only needs the register/MMIO helper subset, not the
full libigt.so stack.

Switch to linking against lib_igt_reg_tools.

ldd before: 35  (ldd | wc -l)
ldd after:   5  (ldd | wc -l)

Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
Acked-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
Reviewed-by: Krzysztof Niemiec <krzysztof.niemiec@intel.com>
---
 tools/meson.build | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/tools/meson.build b/tools/meson.build
index 2e8ceea36..f9bbb41a9 100644
--- a/tools/meson.build
+++ b/tools/meson.build
@@ -14,7 +14,6 @@ endforeach
 tools_progs = [
 	'igt_facts',
 	'igt_power',
-	'intel_audio_dump',
 	'intel_bios_dumper',
 	'intel_display_bandwidth',
 	'intel_display_crc',
@@ -104,6 +103,11 @@ executable('intel_gpu_time', 'intel_gpu_time.c',
 	   install_rpath : bindir_rpathdir,
 	   install : true)
 
+executable('intel_audio_dump', 'intel_audio_dump.c',
+	   dependencies : [lib_igt_reg_tools, pciaccess, libdrm],
+	   install_rpath : bindir_rpathdir,
+	   install : true)
+
 if libudev.found()
 	intel_dp_compliance_src = [
 		'intel_dp_compliance.c',
-- 
2.53.0


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

* [PATCH i-g-t v3 23/31] tools/intel_forcewaked: link with minimal sub-libraries
  2026-07-15 12:15 [PATCH i-g-t v3 00/31] tools: remove unnecessary shared library dependencies from standalone tools Sebastian Brzezinka
                   ` (21 preceding siblings ...)
  2026-07-15 12:15 ` [PATCH i-g-t v3 22/31] tools/intel_audio_dump: " Sebastian Brzezinka
@ 2026-07-15 12:15 ` Sebastian Brzezinka
  2026-07-15 12:15 ` [PATCH i-g-t v3 24/31] tools/intel_guc_logger: " Sebastian Brzezinka
                   ` (11 subsequent siblings)
  34 siblings, 0 replies; 50+ messages in thread
From: Sebastian Brzezinka @ 2026-07-15 12:15 UTC (permalink / raw)
  To: igt-dev
  Cc: Sebastian Brzezinka, kamil.konieczny, krzysztof.karas,
	krzysztof.niemiec, Ashutosh Dixit

intel_forcewaked only needs the register/MMIO helper subset, not the
full libigt.so stack.

Switch to linking against lib_igt_reg_tools.

ldd before: 35  (ldd | wc -l)
ldd after:   5  (ldd | wc -l)

Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
Acked-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
Reviewed-by: Krzysztof Niemiec <krzysztof.niemiec@intel.com>
---
 tools/meson.build | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/tools/meson.build b/tools/meson.build
index f9bbb41a9..15bd40dec 100644
--- a/tools/meson.build
+++ b/tools/meson.build
@@ -18,7 +18,6 @@ tools_progs = [
 	'intel_display_bandwidth',
 	'intel_display_crc',
 	'intel_display_poller',
-	'intel_forcewaked',
 	'intel_framebuffer_dump',
 	'intel_guc_logger',
 	'intel_hdcp',
@@ -108,6 +107,11 @@ executable('intel_audio_dump', 'intel_audio_dump.c',
 	   install_rpath : bindir_rpathdir,
 	   install : true)
 
+executable('intel_forcewaked', 'intel_forcewaked.c',
+	   dependencies : [lib_igt_reg_tools, pciaccess, libdrm],
+	   install_rpath : bindir_rpathdir,
+	   install : true)
+
 if libudev.found()
 	intel_dp_compliance_src = [
 		'intel_dp_compliance.c',
-- 
2.53.0


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

* [PATCH i-g-t v3 24/31] tools/intel_guc_logger: link with minimal sub-libraries
  2026-07-15 12:15 [PATCH i-g-t v3 00/31] tools: remove unnecessary shared library dependencies from standalone tools Sebastian Brzezinka
                   ` (22 preceding siblings ...)
  2026-07-15 12:15 ` [PATCH i-g-t v3 23/31] tools/intel_forcewaked: " Sebastian Brzezinka
@ 2026-07-15 12:15 ` Sebastian Brzezinka
  2026-07-15 12:15 ` [PATCH i-g-t v3 25/31] tools/intel_infoframes: " Sebastian Brzezinka
                   ` (10 subsequent siblings)
  34 siblings, 0 replies; 50+ messages in thread
From: Sebastian Brzezinka @ 2026-07-15 12:15 UTC (permalink / raw)
  To: igt-dev
  Cc: Sebastian Brzezinka, kamil.konieczny, krzysztof.karas,
	krzysztof.niemiec, Ashutosh Dixit

intel_guc_logger only needs core logging/assert helpers and debugfs
access, not the full libigt.so stack. Replace the monolithic include
with the minimal headers and link against lib_igt_tools_stub.

The tool previously used igt_simple_main_args() for option parsing, which
is part of libigt.so and cannot be used without it. Replace it with a
direct getopt_long() loop. As part of this: add a 'help' long option, a
usage string header, and a default case that calls exit(1) on unrecognised
options, behaviour that igt_simple_main_args() provided implicitly.

ldd before: 35  (ldd | wc -l)
ldd after:   3  (ldd | wc -l)

Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
Acked-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
Reviewed-by: Krzysztof Niemiec <krzysztof.niemiec@intel.com>
---
 tools/intel_guc_logger.c | 21 ++++++++++++++++++---
 tools/meson.build        |  6 +++++-
 2 files changed, 23 insertions(+), 4 deletions(-)

diff --git a/tools/intel_guc_logger.c b/tools/intel_guc_logger.c
index 629b4e660..3990aef87 100644
--- a/tools/intel_guc_logger.c
+++ b/tools/intel_guc_logger.c
@@ -38,9 +38,12 @@
 #include <sys/syscall.h>
 #include <sys/mman.h>
 #include <assert.h>
+#include <getopt.h>
 #include <pthread.h>
 
-#include "igt.h"
+#include "drmtest.h"
+#include "igt_core.h"
+#include "igt_debugfs.h"
 
 #define MB(x) ((uint64_t)(x) * 1024 * 1024)
 #ifndef PAGE_SIZE
@@ -367,6 +370,8 @@ static int parse_options(int opt, int opt_index, void *data)
 		discard_oldlogs = true;
 		igt_debug("old/boot-time logs will be discarded\n");
 		break;
+	default:
+		exit(1);
 	}
 
 	return 0;
@@ -382,10 +387,12 @@ static void process_command_line(int argc, char **argv)
 		{"polltimeout", required_argument, 0, 'p'},
 		{"size", required_argument, 0, 's'},
 		{"discard", no_argument, 0, 'd'},
+		{"help", no_argument, 0, 'h'},
 		{ 0, 0, 0, 0 }
 	};
 
 	const char *help =
+		"Usage: intel_guc_logger [options]\n"
 		"  -v --verbosity=level   verbosity level of GuC logging (0-3)\n"
 		"  -o --outputfile=name   name of the output file, including the location, where logs will be stored\n"
 		"  -b --buffers=num       number of buffers to be maintained on logger side for storing logs\n"
@@ -394,8 +401,16 @@ static void process_command_line(int argc, char **argv)
 		"  -s --size=MB           max size of output file in MBs after which logging will be stopped\n"
 		"  -d --discard           discard the old/boot-time logs before entering into the capture loop\n";
 
-	igt_simple_init_parse_opts(&argc, argv, "v:o:b:t:p:s:d", long_options,
-				   help, parse_options, NULL);
+	int opt, opt_index = 0;
+
+	while ((opt = getopt_long(argc, argv, "v:o:b:t:p:s:dh",
+				  long_options, &opt_index)) != -1) {
+		if (opt == 'h') {
+			printf("%s", help);
+			exit(0);
+		}
+		parse_options(opt, opt_index, NULL);
+	}
 }
 
 int main(int argc, char **argv)
diff --git a/tools/meson.build b/tools/meson.build
index 15bd40dec..32a345e9d 100644
--- a/tools/meson.build
+++ b/tools/meson.build
@@ -19,7 +19,6 @@ tools_progs = [
 	'intel_display_crc',
 	'intel_display_poller',
 	'intel_framebuffer_dump',
-	'intel_guc_logger',
 	'intel_hdcp',
 	'intel_infoframes',
 	'intel_opregion_decode',
@@ -112,6 +111,11 @@ executable('intel_forcewaked', 'intel_forcewaked.c',
 	   install_rpath : bindir_rpathdir,
 	   install : true)
 
+executable('intel_guc_logger', 'intel_guc_logger.c',
+	   dependencies : [lib_igt_tools_stub, libdrm, pthreads],
+	   install_rpath : bindir_rpathdir,
+	   install : true)
+
 if libudev.found()
 	intel_dp_compliance_src = [
 		'intel_dp_compliance.c',
-- 
2.53.0


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

* [PATCH i-g-t v3 25/31] tools/intel_infoframes: link with minimal sub-libraries
  2026-07-15 12:15 [PATCH i-g-t v3 00/31] tools: remove unnecessary shared library dependencies from standalone tools Sebastian Brzezinka
                   ` (23 preceding siblings ...)
  2026-07-15 12:15 ` [PATCH i-g-t v3 24/31] tools/intel_guc_logger: " Sebastian Brzezinka
@ 2026-07-15 12:15 ` Sebastian Brzezinka
  2026-07-15 12:15 ` [PATCH i-g-t v3 26/31] tools/intel_panel_fitter: " Sebastian Brzezinka
                   ` (9 subsequent siblings)
  34 siblings, 0 replies; 50+ messages in thread
From: Sebastian Brzezinka @ 2026-07-15 12:15 UTC (permalink / raw)
  To: igt-dev
  Cc: Sebastian Brzezinka, kamil.konieczny, krzysztof.karas,
	krzysztof.niemiec, Ashutosh Dixit

intel_infoframes only needs the register/MMIO helper subset, not the
full libigt.so stack.

Switch to linking against lib_igt_reg_tools.

ldd before: 35  (ldd | wc -l)
ldd after:   5  (ldd | wc -l)

Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
Acked-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
Reviewed-by: Krzysztof Niemiec <krzysztof.niemiec@intel.com>
---
 tools/meson.build | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/tools/meson.build b/tools/meson.build
index 32a345e9d..a31b6d0ed 100644
--- a/tools/meson.build
+++ b/tools/meson.build
@@ -20,7 +20,6 @@ tools_progs = [
 	'intel_display_poller',
 	'intel_framebuffer_dump',
 	'intel_hdcp',
-	'intel_infoframes',
 	'intel_opregion_decode',
 	'intel_panel_fitter',
 	'intel_perf_counters',
@@ -116,6 +115,11 @@ executable('intel_guc_logger', 'intel_guc_logger.c',
 	   install_rpath : bindir_rpathdir,
 	   install : true)
 
+executable('intel_infoframes', 'intel_infoframes.c',
+	   dependencies : [lib_igt_reg_tools, pciaccess, libdrm],
+	   install_rpath : bindir_rpathdir,
+	   install : true)
+
 if libudev.found()
 	intel_dp_compliance_src = [
 		'intel_dp_compliance.c',
-- 
2.53.0


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

* [PATCH i-g-t v3 26/31] tools/intel_panel_fitter: link with minimal sub-libraries
  2026-07-15 12:15 [PATCH i-g-t v3 00/31] tools: remove unnecessary shared library dependencies from standalone tools Sebastian Brzezinka
                   ` (24 preceding siblings ...)
  2026-07-15 12:15 ` [PATCH i-g-t v3 25/31] tools/intel_infoframes: " Sebastian Brzezinka
@ 2026-07-15 12:15 ` Sebastian Brzezinka
  2026-07-15 12:15 ` [PATCH i-g-t v3 27/31] tools/intel_watermark: " Sebastian Brzezinka
                   ` (8 subsequent siblings)
  34 siblings, 0 replies; 50+ messages in thread
From: Sebastian Brzezinka @ 2026-07-15 12:15 UTC (permalink / raw)
  To: igt-dev
  Cc: Sebastian Brzezinka, kamil.konieczny, krzysztof.karas,
	krzysztof.niemiec, Ashutosh Dixit

intel_panel_fitter only needs the register/MMIO helper subset, not the
full libigt.so stack.

Switch to linking against lib_igt_reg_tools.

ldd before: 35  (ldd | wc -l)
ldd after:   5  (ldd | wc -l)

Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
Acked-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
Reviewed-by: Krzysztof Niemiec <krzysztof.niemiec@intel.com>
---
 tools/meson.build | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/tools/meson.build b/tools/meson.build
index a31b6d0ed..1a4e14ed3 100644
--- a/tools/meson.build
+++ b/tools/meson.build
@@ -21,7 +21,6 @@ tools_progs = [
 	'intel_framebuffer_dump',
 	'intel_hdcp',
 	'intel_opregion_decode',
-	'intel_panel_fitter',
 	'intel_perf_counters',
 	'intel_pm_rpm',
 	'intel_reg_checker',
@@ -120,6 +119,11 @@ executable('intel_infoframes', 'intel_infoframes.c',
 	   install_rpath : bindir_rpathdir,
 	   install : true)
 
+executable('intel_panel_fitter', 'intel_panel_fitter.c',
+	   dependencies : [lib_igt_reg_tools, pciaccess, libdrm],
+	   install_rpath : bindir_rpathdir,
+	   install : true)
+
 if libudev.found()
 	intel_dp_compliance_src = [
 		'intel_dp_compliance.c',
-- 
2.53.0


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

* [PATCH i-g-t v3 27/31] tools/intel_watermark: link with minimal sub-libraries
  2026-07-15 12:15 [PATCH i-g-t v3 00/31] tools: remove unnecessary shared library dependencies from standalone tools Sebastian Brzezinka
                   ` (25 preceding siblings ...)
  2026-07-15 12:15 ` [PATCH i-g-t v3 26/31] tools/intel_panel_fitter: " Sebastian Brzezinka
@ 2026-07-15 12:15 ` Sebastian Brzezinka
  2026-07-15 12:15 ` [PATCH i-g-t v3 28/31] tools/intel_display_poller: " Sebastian Brzezinka
                   ` (7 subsequent siblings)
  34 siblings, 0 replies; 50+ messages in thread
From: Sebastian Brzezinka @ 2026-07-15 12:15 UTC (permalink / raw)
  To: igt-dev
  Cc: Sebastian Brzezinka, kamil.konieczny, krzysztof.karas,
	krzysztof.niemiec, Ashutosh Dixit

intel_watermark only needs the register/MMIO helper subset, not the full
libigt.so stack.

Switch to linking against lib_igt_reg_tools.

ldd before: 35  (ldd | wc -l)
ldd after:   5  (ldd | wc -l)

Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
Acked-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
Reviewed-by: Krzysztof Niemiec <krzysztof.niemiec@intel.com>
---
 tools/meson.build | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/tools/meson.build b/tools/meson.build
index 1a4e14ed3..0cc62b54d 100644
--- a/tools/meson.build
+++ b/tools/meson.build
@@ -26,7 +26,6 @@ tools_progs = [
 	'intel_reg_checker',
 	'intel_residency',
 	'intel_tiling_detect',
-	'intel_watermark',
 	'intel_gem_info',
 	'intel_gvtg_test',
 	'dpcd_reg',
@@ -124,6 +123,11 @@ executable('intel_panel_fitter', 'intel_panel_fitter.c',
 	   install_rpath : bindir_rpathdir,
 	   install : true)
 
+executable('intel_watermark', 'intel_watermark.c',
+	   dependencies : [lib_igt_reg_tools, pciaccess, libdrm],
+	   install_rpath : bindir_rpathdir,
+	   install : true)
+
 if libudev.found()
 	intel_dp_compliance_src = [
 		'intel_dp_compliance.c',
-- 
2.53.0


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

* [PATCH i-g-t v3 28/31] tools/intel_display_poller: link with minimal sub-libraries
  2026-07-15 12:15 [PATCH i-g-t v3 00/31] tools: remove unnecessary shared library dependencies from standalone tools Sebastian Brzezinka
                   ` (26 preceding siblings ...)
  2026-07-15 12:15 ` [PATCH i-g-t v3 27/31] tools/intel_watermark: " Sebastian Brzezinka
@ 2026-07-15 12:15 ` Sebastian Brzezinka
  2026-07-15 12:15 ` [PATCH i-g-t v3 29/31] tools/intel_gvtg_test: " Sebastian Brzezinka
                   ` (6 subsequent siblings)
  34 siblings, 0 replies; 50+ messages in thread
From: Sebastian Brzezinka @ 2026-07-15 12:15 UTC (permalink / raw)
  To: igt-dev
  Cc: Sebastian Brzezinka, kamil.konieczny, krzysztof.karas,
	krzysztof.niemiec, Ashutosh Dixit

intel_display_poller only needs the register/MMIO helper subset, not
the full libigt.so stack.

Switch to linking against lib_igt_reg_tools.

ldd before: 35  (ldd | wc -l)
ldd after:   5  (ldd | wc -l)

Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
Acked-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
Reviewed-by: Krzysztof Niemiec <krzysztof.niemiec@intel.com>
---
 tools/meson.build | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/tools/meson.build b/tools/meson.build
index 0cc62b54d..2a084a0c4 100644
--- a/tools/meson.build
+++ b/tools/meson.build
@@ -17,7 +17,6 @@ tools_progs = [
 	'intel_bios_dumper',
 	'intel_display_bandwidth',
 	'intel_display_crc',
-	'intel_display_poller',
 	'intel_framebuffer_dump',
 	'intel_hdcp',
 	'intel_opregion_decode',
@@ -128,6 +127,11 @@ executable('intel_watermark', 'intel_watermark.c',
 	   install_rpath : bindir_rpathdir,
 	   install : true)
 
+executable('intel_display_poller', 'intel_display_poller.c',
+	   dependencies : [lib_igt_reg_tools, pciaccess, libdrm],
+	   install_rpath : bindir_rpathdir,
+	   install : true)
+
 if libudev.found()
 	intel_dp_compliance_src = [
 		'intel_dp_compliance.c',
-- 
2.53.0


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

* [PATCH i-g-t v3 29/31] tools/intel_gvtg_test: link with minimal sub-libraries
  2026-07-15 12:15 [PATCH i-g-t v3 00/31] tools: remove unnecessary shared library dependencies from standalone tools Sebastian Brzezinka
                   ` (27 preceding siblings ...)
  2026-07-15 12:15 ` [PATCH i-g-t v3 28/31] tools/intel_display_poller: " Sebastian Brzezinka
@ 2026-07-15 12:15 ` Sebastian Brzezinka
  2026-07-15 12:15 ` [PATCH i-g-t v3 30/31] lib/igt_core: move igt_load_igtrc to igt_device_scan Sebastian Brzezinka
                   ` (5 subsequent siblings)
  34 siblings, 0 replies; 50+ messages in thread
From: Sebastian Brzezinka @ 2026-07-15 12:15 UTC (permalink / raw)
  To: igt-dev
  Cc: Sebastian Brzezinka, kamil.konieczny, krzysztof.karas,
	krzysztof.niemiec, Ashutosh Dixit

intel_gvtg_test only needs the core assert/log/skip helpers provided by
igt_core plus the lightweight tool stubs. Replace the monolithic include
with the minimal header set and stop linking against libigt.so.

ldd before: 35  (ldd | wc -l)
ldd after:   3  (ldd | wc -l)

Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
Acked-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
Reviewed-by: Krzysztof Niemiec <krzysztof.niemiec@intel.com>
---
 tools/intel_gvtg_test.c | 2 +-
 tools/meson.build       | 6 +++++-
 2 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/tools/intel_gvtg_test.c b/tools/intel_gvtg_test.c
index 408e703bf..fe8f7a599 100644
--- a/tools/intel_gvtg_test.c
+++ b/tools/intel_gvtg_test.c
@@ -30,7 +30,7 @@
  */
 #include "config.h"
 
-#include "igt.h"
+#include "igt_core.h"
 #include <errno.h>
 #include <getopt.h>
 #include <math.h>
diff --git a/tools/meson.build b/tools/meson.build
index 2a084a0c4..6e694164f 100644
--- a/tools/meson.build
+++ b/tools/meson.build
@@ -26,7 +26,6 @@ tools_progs = [
 	'intel_residency',
 	'intel_tiling_detect',
 	'intel_gem_info',
-	'intel_gvtg_test',
 	'dpcd_reg',
 	'lsgpu',
 ]
@@ -132,6 +131,11 @@ executable('intel_display_poller', 'intel_display_poller.c',
 	   install_rpath : bindir_rpathdir,
 	   install : true)
 
+executable('intel_gvtg_test', 'intel_gvtg_test.c',
+	   dependencies : [lib_igt_tools_stub, pciaccess, libdrm, math],
+	   install_rpath : bindir_rpathdir,
+	   install : true)
+
 if libudev.found()
 	intel_dp_compliance_src = [
 		'intel_dp_compliance.c',
-- 
2.53.0


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

* [PATCH i-g-t v3 30/31] lib/igt_core: move igt_load_igtrc to igt_device_scan
  2026-07-15 12:15 [PATCH i-g-t v3 00/31] tools: remove unnecessary shared library dependencies from standalone tools Sebastian Brzezinka
                   ` (28 preceding siblings ...)
  2026-07-15 12:15 ` [PATCH i-g-t v3 29/31] tools/intel_gvtg_test: " Sebastian Brzezinka
@ 2026-07-15 12:15 ` Sebastian Brzezinka
  2026-07-16 14:08   ` Kamil Konieczny
  2026-07-15 12:15 ` [PATCH i-g-t v3 31/31] tools/lsgpu: link with minimal sub-libraries Sebastian Brzezinka
                   ` (4 subsequent siblings)
  34 siblings, 1 reply; 50+ messages in thread
From: Sebastian Brzezinka @ 2026-07-15 12:15 UTC (permalink / raw)
  To: igt-dev
  Cc: Sebastian Brzezinka, kamil.konieczny, krzysztof.karas,
	krzysztof.niemiec, Ashutosh Dixit

igt_load_igtrc() is used exclusively by igt_device_scan internals to read
per-device configuration from the igtrc file.  Moving it from igt_core.c
to igt_device_scan.c co-locates the function with its primary user and
makes it possible for lsgpu to link against lib_igt_device_scan without
needing the rest of libigt.

Update the declaration accordingly: remove from igt_core.h and add to
igt_device_scan.h where the implementation now lives.

Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
Acked-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
---
 lib/igt_core.c        | 47 ------------------------------------------
 lib/igt_core.h        |  2 --
 lib/igt_device_scan.c | 48 +++++++++++++++++++++++++++++++++++++++++++
 lib/igt_device_scan.h |  2 ++
 runner/executor.c     |  1 +
 5 files changed, 51 insertions(+), 49 deletions(-)

diff --git a/lib/igt_core.c b/lib/igt_core.c
index a7c097d9e..2f737b01a 100644
--- a/lib/igt_core.c
+++ b/lib/igt_core.c
@@ -972,53 +972,6 @@ static void oom_adjust_for_doom(void)
 
 }
 
-/**
- * load_igtrc:
- *
- * Load .igtrc from the path pointed to by #IGT_CONFIG_PATH or from
- * home directory if that is not set. The returned keyfile needs to be
- * deallocated using g_key_file_free().
- *
- * Returns: Pointer to the keyfile, NULL on error.
- */
-GKeyFile *igt_load_igtrc(void)
-{
-	char *key_file_env = NULL;
-	char *key_file_loc = NULL;
-	GError *error = NULL;
-	GKeyFile *file;
-	int ret;
-
-	/* Determine igt config path */
-	key_file_env = getenv("IGT_CONFIG_PATH");
-	if (key_file_env) {
-		key_file_loc = key_file_env;
-	} else {
-		key_file_loc = malloc(100);
-		snprintf(key_file_loc, 100, "%s/.igtrc", g_get_home_dir());
-	}
-
-	/* Load igt config file */
-	file = g_key_file_new();
-	ret = g_key_file_load_from_file(file, key_file_loc,
-					G_KEY_FILE_NONE, &error);
-	if (!ret) {
-		g_error_free(error);
-		g_key_file_free(file);
-		file = NULL;
-
-		goto out;
-	}
-
-	g_clear_error(&error);
-
- out:
-	if (!key_file_env && key_file_loc)
-		free(key_file_loc);
-
-	return file;
-}
-
 static void common_init_config(void)
 {
 	GError *error = NULL;
diff --git a/lib/igt_core.h b/lib/igt_core.h
index 3337293bc..afaf35aa8 100644
--- a/lib/igt_core.h
+++ b/lib/igt_core.h
@@ -95,8 +95,6 @@ extern const char* __igt_test_description __attribute__((weak));
 extern bool __igt_plain_output;
 extern char *igt_frame_dump_path;
 
-struct _GKeyFile *igt_load_igtrc(void);
-
 /**
  * IGT_TEST_DESCRIPTION:
  * @str: description string
diff --git a/lib/igt_device_scan.c b/lib/igt_device_scan.c
index 7c7995224..a15a4624e 100644
--- a/lib/igt_device_scan.c
+++ b/lib/igt_device_scan.c
@@ -33,6 +33,7 @@
 #include <ctype.h>
 #include <dirent.h>
 #include <fcntl.h>
+#include <glib.h>
 #include <libudev.h>
 #ifdef __linux__
 #include <linux/limits.h>
@@ -2477,3 +2478,50 @@ int igt_device_prepare_filtered_view(const char *vendor)
 
 	return gpu_count;
 }
+
+/**
+ * igt_load_igtrc:
+ *
+ * Load .igtrc from the path pointed to by #IGT_CONFIG_PATH or from
+ * home directory if that is not set. The returned keyfile needs to be
+ * deallocated using g_key_file_free().
+ *
+ * Returns: Pointer to the keyfile, NULL on error.
+ */
+GKeyFile *igt_load_igtrc(void)
+{
+	char *key_file_env = NULL;
+	char *key_file_loc = NULL;
+	GError *error = NULL;
+	GKeyFile *file;
+	int ret;
+
+	/* Determine igt config path */
+	key_file_env = getenv("IGT_CONFIG_PATH");
+	if (key_file_env) {
+		key_file_loc = key_file_env;
+	} else {
+		key_file_loc = malloc(100);
+		snprintf(key_file_loc, 100, "%s/.igtrc", g_get_home_dir());
+	}
+
+	/* Load igt config file */
+	file = g_key_file_new();
+	ret = g_key_file_load_from_file(file, key_file_loc,
+					G_KEY_FILE_NONE, &error);
+	if (!ret) {
+		g_error_free(error);
+		g_key_file_free(file);
+		file = NULL;
+
+		goto out;
+	}
+
+	g_clear_error(&error);
+
+ out:
+	if (!key_file_env && key_file_loc)
+		free(key_file_loc);
+
+	return file;
+}
diff --git a/lib/igt_device_scan.h b/lib/igt_device_scan.h
index f24a193cd..5b04033e3 100644
--- a/lib/igt_device_scan.h
+++ b/lib/igt_device_scan.h
@@ -103,4 +103,6 @@ int igt_open_render(struct igt_device_card *card);
 /* Add or use filters to match multiGPU devices */
 int igt_device_prepare_filtered_view(const char *vendor);
 
+struct _GKeyFile *igt_load_igtrc(void);
+
 #endif /* __IGT_DEVICE_SCAN_H__ */
diff --git a/runner/executor.c b/runner/executor.c
index a8907c575..a2cf517df 100644
--- a/runner/executor.c
+++ b/runner/executor.c
@@ -35,6 +35,7 @@
 
 #include "igt_aux.h"
 #include "igt_core.h"
+#include "igt_device_scan.h"
 #include "igt_facts.h"
 #include "igt_taints.h"
 #include "igt_vec.h"
-- 
2.53.0


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

* [PATCH i-g-t v3 31/31] tools/lsgpu: link with minimal sub-libraries
  2026-07-15 12:15 [PATCH i-g-t v3 00/31] tools: remove unnecessary shared library dependencies from standalone tools Sebastian Brzezinka
                   ` (29 preceding siblings ...)
  2026-07-15 12:15 ` [PATCH i-g-t v3 30/31] lib/igt_core: move igt_load_igtrc to igt_device_scan Sebastian Brzezinka
@ 2026-07-15 12:15 ` Sebastian Brzezinka
  2026-07-15 16:00 ` ✓ Xe.CI.BAT: success for tools: remove unnecessary shared library dependencies from standalone tools Patchwork
                   ` (3 subsequent siblings)
  34 siblings, 0 replies; 50+ messages in thread
From: Sebastian Brzezinka @ 2026-07-15 12:15 UTC (permalink / raw)
  To: igt-dev
  Cc: Sebastian Brzezinka, kamil.konieczny, krzysztof.karas,
	krzysztof.niemiec, Ashutosh Dixit

lsgpu only needs device enumeration and the lightweight tool stubs.
Replace #include "igt.h" with the minimal header set and stop linking
against libigt.so.

ldd before: 35  (ldd | wc -l)
ldd after:   8  (ldd | wc -l)

Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
Acked-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
Reviewed-by: Krzysztof Niemiec <krzysztof.niemiec@intel.com>
---
 tools/lsgpu.c     | 2 +-
 tools/meson.build | 7 ++++++-
 2 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/tools/lsgpu.c b/tools/lsgpu.c
index 935371dea..7d6b70b9b 100644
--- a/tools/lsgpu.c
+++ b/tools/lsgpu.c
@@ -34,7 +34,7 @@
 #include <signal.h>
 #include <sys/ioctl.h>
 
-#include "igt.h"
+#include "igt_core.h"
 #include "igt_device_scan.h"
 
 /**
diff --git a/tools/meson.build b/tools/meson.build
index 6e694164f..fbc6c0a00 100644
--- a/tools/meson.build
+++ b/tools/meson.build
@@ -27,7 +27,6 @@ tools_progs = [
 	'intel_tiling_detect',
 	'intel_gem_info',
 	'dpcd_reg',
-	'lsgpu',
 ]
 tool_deps = igt_deps
 tool_deps += zlib
@@ -172,6 +171,12 @@ install_data(['intel_gpu_abrt', 'intel-gfx-fw-info'], install_dir : bindir)
 
 install_subdir('registers', install_dir : datadir)
 
+executable('lsgpu', 'lsgpu.c',
+	   dependencies : [lib_igt_device_scan, lib_igt_tools_stub,
+	                    lib_igt_drm_stub, glib, libudev, libpci],
+	   install_rpath : bindir_rpathdir,
+	   install : true)
+
 executable('intel_gpu_top', 'intel_gpu_top.c',
 	   install : true,
 	   install_rpath : bindir_rpathdir,
-- 
2.53.0


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

* ✓ Xe.CI.BAT: success for tools: remove unnecessary shared library dependencies from standalone tools
  2026-07-15 12:15 [PATCH i-g-t v3 00/31] tools: remove unnecessary shared library dependencies from standalone tools Sebastian Brzezinka
                   ` (30 preceding siblings ...)
  2026-07-15 12:15 ` [PATCH i-g-t v3 31/31] tools/lsgpu: link with minimal sub-libraries Sebastian Brzezinka
@ 2026-07-15 16:00 ` Patchwork
  2026-07-15 16:56 ` ✓ i915.CI.BAT: " Patchwork
                   ` (2 subsequent siblings)
  34 siblings, 0 replies; 50+ messages in thread
From: Patchwork @ 2026-07-15 16:00 UTC (permalink / raw)
  To: Sebastian Brzezinka; +Cc: igt-dev

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

== Series Details ==

Series: tools: remove unnecessary shared library dependencies from standalone tools
URL   : https://patchwork.freedesktop.org/series/170485/
State : success

== Summary ==

CI Bug Log - changes from XEIGT_9007_BAT -> XEIGTPW_15535_BAT
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

  

Participating hosts (13 -> 12)
------------------------------

  Missing    (1): bat-bmg-2 


Changes
-------

  No changes found


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

  * IGT: IGT_9007 -> IGTPW_15535

  IGTPW_15535: 15535
  IGT_9007: 9007
  xe-5412-116ce94f4e028e50e3523c46a8ce1e665ce47cb9: 116ce94f4e028e50e3523c46a8ce1e665ce47cb9

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/index.html

[-- Attachment #2: Type: text/html, Size: 1343 bytes --]

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

* ✓ i915.CI.BAT: success for tools: remove unnecessary shared library dependencies from standalone tools
  2026-07-15 12:15 [PATCH i-g-t v3 00/31] tools: remove unnecessary shared library dependencies from standalone tools Sebastian Brzezinka
                   ` (31 preceding siblings ...)
  2026-07-15 16:00 ` ✓ Xe.CI.BAT: success for tools: remove unnecessary shared library dependencies from standalone tools Patchwork
@ 2026-07-15 16:56 ` Patchwork
  2026-07-15 19:27 ` ✓ Xe.CI.FULL: " Patchwork
  2026-07-15 22:53 ` ✗ i915.CI.Full: failure " Patchwork
  34 siblings, 0 replies; 50+ messages in thread
From: Patchwork @ 2026-07-15 16:56 UTC (permalink / raw)
  To: Sebastian Brzezinka; +Cc: igt-dev

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

== Series Details ==

Series: tools: remove unnecessary shared library dependencies from standalone tools
URL   : https://patchwork.freedesktop.org/series/170485/
State : success

== Summary ==

CI Bug Log - changes from IGT_9007 -> IGTPW_15535
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

  External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/index.html

Participating hosts (41 -> 39)
------------------------------

  Missing    (2): bat-dg2-13 fi-snb-2520m 

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

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

### IGT changes ###

#### Issues hit ####

  * igt@kms_addfb_basic@too-high:
    - bat-apl-1:          [PASS][1] -> [DMESG-WARN][2] ([i915#13735]) +38 other tests dmesg-warn
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/bat-apl-1/igt@kms_addfb_basic@too-high.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/bat-apl-1/igt@kms_addfb_basic@too-high.html

  * igt@kms_pipe_crc_basic@nonblocking-crc-frame-sequence@pipe-b-dp-1:
    - bat-apl-1:          [PASS][3] -> [DMESG-WARN][4] ([i915#13735] / [i915#180]) +38 other tests dmesg-warn
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/bat-apl-1/igt@kms_pipe_crc_basic@nonblocking-crc-frame-sequence@pipe-b-dp-1.html
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/bat-apl-1/igt@kms_pipe_crc_basic@nonblocking-crc-frame-sequence@pipe-b-dp-1.html

  
  [i915#13735]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13735
  [i915#180]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/180


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

  * CI: CI-20190529 -> None
  * IGT: IGT_9007 -> IGTPW_15535

  CI-20190529: 20190529
  CI_DRM_18830: 116ce94f4e028e50e3523c46a8ce1e665ce47cb9 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_15535: 15535
  IGT_9007: 9007

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/index.html

[-- Attachment #2: Type: text/html, Size: 2700 bytes --]

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

* ✓ Xe.CI.FULL: success for tools: remove unnecessary shared library dependencies from standalone tools
  2026-07-15 12:15 [PATCH i-g-t v3 00/31] tools: remove unnecessary shared library dependencies from standalone tools Sebastian Brzezinka
                   ` (32 preceding siblings ...)
  2026-07-15 16:56 ` ✓ i915.CI.BAT: " Patchwork
@ 2026-07-15 19:27 ` Patchwork
  2026-07-15 22:53 ` ✗ i915.CI.Full: failure " Patchwork
  34 siblings, 0 replies; 50+ messages in thread
From: Patchwork @ 2026-07-15 19:27 UTC (permalink / raw)
  To: Sebastian Brzezinka; +Cc: igt-dev

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

== Series Details ==

Series: tools: remove unnecessary shared library dependencies from standalone tools
URL   : https://patchwork.freedesktop.org/series/170485/
State : success

== Summary ==

CI Bug Log - changes from XEIGT_9007_FULL -> XEIGTPW_15535_FULL
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

  

Participating hosts (2 -> 2)
------------------------------

  No changes in participating hosts

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

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

### IGT changes ###

#### Suppressed ####

  The following results come from untrusted machines, tests, or statuses.
  They do not affect the overall result.

  * {igt@xe_cw_post_sync@walker-post-sync}:
    - shard-bmg:          NOTRUN -> [SKIP][1]
   [1]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-1/igt@xe_cw_post_sync@walker-post-sync.html

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

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

### IGT changes ###

#### Issues hit ####

  * igt@kms_big_fb@x-tiled-64bpp-rotate-270:
    - shard-bmg:          NOTRUN -> [SKIP][2] ([Intel XE#2327]) +3 other tests skip
   [2]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-6/igt@kms_big_fb@x-tiled-64bpp-rotate-270.html

  * igt@kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-0:
    - shard-bmg:          NOTRUN -> [SKIP][3] ([Intel XE#1124]) +10 other tests skip
   [3]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-9/igt@kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-0.html

  * igt@kms_bw@connected-linear-tiling-4-displays-target-2160x1440p:
    - shard-bmg:          NOTRUN -> [SKIP][4] ([Intel XE#7679]) +2 other tests skip
   [4]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-6/igt@kms_bw@connected-linear-tiling-4-displays-target-2160x1440p.html

  * igt@kms_bw@linear-tiling-4-displays-target-3840x2160p:
    - shard-bmg:          NOTRUN -> [SKIP][5] ([Intel XE#367])
   [5]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-1/igt@kms_bw@linear-tiling-4-displays-target-3840x2160p.html

  * igt@kms_ccs@bad-aux-stride-4-tiled-mtl-rc-ccs-cc:
    - shard-bmg:          NOTRUN -> [SKIP][6] ([Intel XE#2887]) +11 other tests skip
   [6]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-2/igt@kms_ccs@bad-aux-stride-4-tiled-mtl-rc-ccs-cc.html

  * igt@kms_ccs@crc-primary-suspend-yf-tiled-ccs:
    - shard-bmg:          NOTRUN -> [SKIP][7] ([Intel XE#3432]) +1 other test skip
   [7]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-1/igt@kms_ccs@crc-primary-suspend-yf-tiled-ccs.html

  * igt@kms_chamelium_color@ctm-0-75:
    - shard-bmg:          NOTRUN -> [SKIP][8] ([Intel XE#2325] / [Intel XE#7358])
   [8]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-8/igt@kms_chamelium_color@ctm-0-75.html

  * igt@kms_chamelium_color_pipeline@plane-lut1d-post-ctm3x4:
    - shard-bmg:          NOTRUN -> [SKIP][9] ([Intel XE#7358])
   [9]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-8/igt@kms_chamelium_color_pipeline@plane-lut1d-post-ctm3x4.html

  * igt@kms_chamelium_frames@dp-crc-single:
    - shard-bmg:          NOTRUN -> [SKIP][10] ([Intel XE#2252]) +6 other tests skip
   [10]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-6/igt@kms_chamelium_frames@dp-crc-single.html

  * igt@kms_chamelium_sharpness_filter@filter-basic:
    - shard-bmg:          NOTRUN -> [SKIP][11] ([Intel XE#6507])
   [11]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-1/igt@kms_chamelium_sharpness_filter@filter-basic.html

  * igt@kms_content_protection@content-type-change:
    - shard-bmg:          NOTRUN -> [SKIP][12] ([Intel XE#7642]) +1 other test skip
   [12]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-7/igt@kms_content_protection@content-type-change.html

  * igt@kms_content_protection@lic-type-0@pipe-a-dp-2:
    - shard-bmg:          NOTRUN -> [FAIL][13] ([Intel XE#1178] / [Intel XE#3304] / [Intel XE#7374]) +3 other tests fail
   [13]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-5/igt@kms_content_protection@lic-type-0@pipe-a-dp-2.html

  * igt@kms_cursor_crc@cursor-onscreen-256x85:
    - shard-bmg:          NOTRUN -> [SKIP][14] ([Intel XE#2320]) +4 other tests skip
   [14]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-9/igt@kms_cursor_crc@cursor-onscreen-256x85.html

  * igt@kms_cursor_legacy@flip-vs-cursor-atomic:
    - shard-bmg:          NOTRUN -> [FAIL][15] ([Intel XE#7571])
   [15]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-10/igt@kms_cursor_legacy@flip-vs-cursor-atomic.html

  * igt@kms_dp_link_training@uhbr-sst:
    - shard-bmg:          NOTRUN -> [SKIP][16] ([Intel XE#4354] / [Intel XE#5870])
   [16]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-6/igt@kms_dp_link_training@uhbr-sst.html

  * igt@kms_dsc@dsc-fractional-bpp-bigjoiner:
    - shard-bmg:          NOTRUN -> [SKIP][17] ([Intel XE#8265]) +2 other tests skip
   [17]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-1/igt@kms_dsc@dsc-fractional-bpp-bigjoiner.html

  * igt@kms_fbc_dirty_rect@fbc-dirty-rectangle-different-formats:
    - shard-bmg:          NOTRUN -> [SKIP][18] ([Intel XE#4422] / [Intel XE#7442])
   [18]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-9/igt@kms_fbc_dirty_rect@fbc-dirty-rectangle-different-formats.html

  * igt@kms_feature_discovery@display-3x:
    - shard-bmg:          NOTRUN -> [SKIP][19] ([Intel XE#2373] / [Intel XE#7448])
   [19]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-6/igt@kms_feature_discovery@display-3x.html

  * igt@kms_flip@flip-vs-expired-vblank-interruptible@c-edp1:
    - shard-lnl:          [PASS][20] -> [FAIL][21] ([Intel XE#301] / [Intel XE#3149]) +1 other test fail
   [20]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9007/shard-lnl-4/igt@kms_flip@flip-vs-expired-vblank-interruptible@c-edp1.html
   [21]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-lnl-4/igt@kms_flip@flip-vs-expired-vblank-interruptible@c-edp1.html

  * igt@kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-upscaling:
    - shard-bmg:          NOTRUN -> [SKIP][22] ([Intel XE#7178] / [Intel XE#7351]) +2 other tests skip
   [22]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-9/igt@kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-upscaling.html

  * igt@kms_frontbuffer_tracking@drrs-abgr161616f-draw-render:
    - shard-bmg:          NOTRUN -> [SKIP][23] ([Intel XE#7061] / [Intel XE#7356]) +3 other tests skip
   [23]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-7/igt@kms_frontbuffer_tracking@drrs-abgr161616f-draw-render.html

  * igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-onoff:
    - shard-bmg:          NOTRUN -> [SKIP][24] ([Intel XE#4141]) +10 other tests skip
   [24]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-8/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-onoff.html

  * igt@kms_frontbuffer_tracking@fbcdrrshdr-1p-primscrn-shrfb-plflip-blt:
    - shard-bmg:          NOTRUN -> [SKIP][25] ([Intel XE#2311]) +48 other tests skip
   [25]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-4/igt@kms_frontbuffer_tracking@fbcdrrshdr-1p-primscrn-shrfb-plflip-blt.html

  * igt@kms_frontbuffer_tracking@fbchdr-argb161616f-draw-render:
    - shard-bmg:          NOTRUN -> [SKIP][26] ([Intel XE#7061]) +4 other tests skip
   [26]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-5/igt@kms_frontbuffer_tracking@fbchdr-argb161616f-draw-render.html

  * igt@kms_frontbuffer_tracking@fbcpsrhdr-2p-primscrn-pri-indfb-draw-mmap-wc:
    - shard-bmg:          NOTRUN -> [SKIP][27] ([Intel XE#2313]) +41 other tests skip
   [27]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-4/igt@kms_frontbuffer_tracking@fbcpsrhdr-2p-primscrn-pri-indfb-draw-mmap-wc.html

  * igt@kms_frontbuffer_tracking@fbcpsrhdr-tiling-y:
    - shard-bmg:          NOTRUN -> [SKIP][28] ([Intel XE#7399])
   [28]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-1/igt@kms_frontbuffer_tracking@fbcpsrhdr-tiling-y.html

  * igt@kms_joiner@basic-max-non-joiner:
    - shard-bmg:          NOTRUN -> [SKIP][29] ([Intel XE#4298] / [Intel XE#5873])
   [29]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-3/igt@kms_joiner@basic-max-non-joiner.html

  * igt@kms_joiner@basic-ultra-joiner:
    - shard-bmg:          NOTRUN -> [SKIP][30] ([Intel XE#6911] / [Intel XE#7378])
   [30]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-1/igt@kms_joiner@basic-ultra-joiner.html

  * igt@kms_plane@pixel-format-4-tiled-lnl-ccs-modifier-source-clamping:
    - shard-bmg:          NOTRUN -> [SKIP][31] ([Intel XE#7283]) +4 other tests skip
   [31]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-4/igt@kms_plane@pixel-format-4-tiled-lnl-ccs-modifier-source-clamping.html

  * igt@kms_plane_multiple@tiling-yf:
    - shard-bmg:          NOTRUN -> [SKIP][32] ([Intel XE#5020] / [Intel XE#7348])
   [32]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-9/igt@kms_plane_multiple@tiling-yf.html

  * igt@kms_pm_backlight@bad-brightness:
    - shard-bmg:          NOTRUN -> [SKIP][33] ([Intel XE#7376] / [Intel XE#7760] / [Intel XE#870]) +1 other test skip
   [33]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-7/igt@kms_pm_backlight@bad-brightness.html

  * igt@kms_pm_backlight@brightness-with-dpms:
    - shard-bmg:          NOTRUN -> [SKIP][34] ([Intel XE#2938] / [Intel XE#7376] / [Intel XE#7760])
   [34]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-7/igt@kms_pm_backlight@brightness-with-dpms.html

  * igt@kms_psr2_sf@psr2-overlay-plane-move-continuous-sf:
    - shard-bmg:          NOTRUN -> [SKIP][35] ([Intel XE#1489]) +6 other tests skip
   [35]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-5/igt@kms_psr2_sf@psr2-overlay-plane-move-continuous-sf.html

  * igt@kms_psr@psr2-sprite-blt:
    - shard-bmg:          NOTRUN -> [SKIP][36] ([Intel XE#2234] / [Intel XE#2850]) +10 other tests skip
   [36]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-6/igt@kms_psr@psr2-sprite-blt.html

  * igt@kms_psr_stress_test@invalidate-primary-flip-overlay:
    - shard-bmg:          NOTRUN -> [SKIP][37] ([Intel XE#7795])
   [37]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-8/igt@kms_psr_stress_test@invalidate-primary-flip-overlay.html

  * igt@kms_rotation_crc@sprite-rotation-90-pos-100-0:
    - shard-bmg:          NOTRUN -> [SKIP][38] ([Intel XE#3904] / [Intel XE#7342]) +1 other test skip
   [38]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-10/igt@kms_rotation_crc@sprite-rotation-90-pos-100-0.html

  * igt@kms_sharpness_filter@invalid-filter-with-scaling-mode:
    - shard-bmg:          NOTRUN -> [SKIP][39] ([Intel XE#6503])
   [39]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-6/igt@kms_sharpness_filter@invalid-filter-with-scaling-mode.html

  * igt@kms_vrr@lobf:
    - shard-bmg:          NOTRUN -> [SKIP][40] ([Intel XE#2168] / [Intel XE#7444])
   [40]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-8/igt@kms_vrr@lobf.html

  * igt@kms_vrr@seamless-rr-switch-drrs:
    - shard-bmg:          NOTRUN -> [SKIP][41] ([Intel XE#1499]) +3 other tests skip
   [41]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-1/igt@kms_vrr@seamless-rr-switch-drrs.html

  * igt@xe_create@multigpu-create-massive-size:
    - shard-bmg:          NOTRUN -> [SKIP][42] ([Intel XE#2504] / [Intel XE#7319] / [Intel XE#7350])
   [42]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-4/igt@xe_create@multigpu-create-massive-size.html

  * igt@xe_evict@evict-small-multi-queue:
    - shard-bmg:          NOTRUN -> [SKIP][43] ([Intel XE#8370])
   [43]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-1/igt@xe_evict@evict-small-multi-queue.html

  * igt@xe_exec_basic@multigpu-no-exec-bindexecqueue:
    - shard-bmg:          NOTRUN -> [SKIP][44] ([Intel XE#2322] / [Intel XE#7372]) +7 other tests skip
   [44]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-5/igt@xe_exec_basic@multigpu-no-exec-bindexecqueue.html

  * igt@xe_exec_fault_mode@many-execqueues-multi-queue-userptr-invalidate-imm:
    - shard-bmg:          NOTRUN -> [SKIP][45] ([Intel XE#8374]) +9 other tests skip
   [45]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-1/igt@xe_exec_fault_mode@many-execqueues-multi-queue-userptr-invalidate-imm.html

  * igt@xe_exec_multi_queue@one-queue-preempt-mode-fault-dyn-priority-smem:
    - shard-bmg:          NOTRUN -> [SKIP][46] ([Intel XE#8364]) +27 other tests skip
   [46]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-6/igt@xe_exec_multi_queue@one-queue-preempt-mode-fault-dyn-priority-smem.html

  * igt@xe_exec_reset@cm-multi-queue-gt-reset:
    - shard-bmg:          NOTRUN -> [SKIP][47] ([Intel XE#8369]) +1 other test skip
   [47]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-8/igt@xe_exec_reset@cm-multi-queue-gt-reset.html

  * igt@xe_exec_threads@threads-multi-queue-cm-fd-userptr:
    - shard-bmg:          NOTRUN -> [SKIP][48] ([Intel XE#8378]) +8 other tests skip
   [48]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-7/igt@xe_exec_threads@threads-multi-queue-cm-fd-userptr.html

  * igt@xe_multigpu_svm@mgpu-concurrent-access-prefetch:
    - shard-bmg:          NOTRUN -> [SKIP][49] ([Intel XE#6964]) +1 other test skip
   [49]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-10/igt@xe_multigpu_svm@mgpu-concurrent-access-prefetch.html

  * igt@xe_page_reclaim@prl-max-entries:
    - shard-bmg:          NOTRUN -> [SKIP][50] ([Intel XE#7793]) +1 other test skip
   [50]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-7/igt@xe_page_reclaim@prl-max-entries.html

  * igt@xe_pat@l2-flush-opt-svm-pat-restrict:
    - shard-bmg:          NOTRUN -> [SKIP][51] ([Intel XE#7590])
   [51]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-1/igt@xe_pat@l2-flush-opt-svm-pat-restrict.html

  * igt@xe_pat@pat-sw-hw-compare:
    - shard-bmg:          NOTRUN -> [FAIL][52] ([Intel XE#7695])
   [52]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-6/igt@xe_pat@pat-sw-hw-compare.html

  * igt@xe_pm@d3cold-basic:
    - shard-bmg:          NOTRUN -> [SKIP][53] ([Intel XE#2284] / [Intel XE#7370])
   [53]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-5/igt@xe_pm@d3cold-basic.html

  * igt@xe_prefetch_fault@prefetch-fault-svm:
    - shard-bmg:          NOTRUN -> [SKIP][54] ([Intel XE#7599])
   [54]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-1/igt@xe_prefetch_fault@prefetch-fault-svm.html

  * igt@xe_pxp@pxp-termination-key-update-post-suspend:
    - shard-bmg:          NOTRUN -> [SKIP][55] ([Intel XE#4733] / [Intel XE#7417])
   [55]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-5/igt@xe_pxp@pxp-termination-key-update-post-suspend.html

  * igt@xe_query@multigpu-query-invalid-size:
    - shard-bmg:          NOTRUN -> [SKIP][56] ([Intel XE#944])
   [56]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-10/igt@xe_query@multigpu-query-invalid-size.html

  * igt@xe_wedged@wedged-at-any-timeout:
    - shard-bmg:          NOTRUN -> [DMESG-WARN][57] ([Intel XE#5545])
   [57]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-9/igt@xe_wedged@wedged-at-any-timeout.html

  * igt@xe_wedged@wedged-mode-toggle:
    - shard-bmg:          [PASS][58] -> [ABORT][59] ([Intel XE#8007]) +1 other test abort
   [58]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9007/shard-bmg-10/igt@xe_wedged@wedged-mode-toggle.html
   [59]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-10/igt@xe_wedged@wedged-mode-toggle.html

  
#### Possible fixes ####

  * igt@kms_async_flips@alternate-sync-async-flip:
    - shard-lnl:          [FAIL][60] ([Intel XE#3718] / [Intel XE#7265]) -> [PASS][61] +1 other test pass
   [60]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9007/shard-lnl-7/igt@kms_async_flips@alternate-sync-async-flip.html
   [61]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-lnl-6/igt@kms_async_flips@alternate-sync-async-flip.html

  * igt@kms_flip@flip-vs-expired-vblank@c-edp1:
    - shard-lnl:          [FAIL][62] ([Intel XE#301] / [Intel XE#3149]) -> [PASS][63]
   [62]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9007/shard-lnl-4/igt@kms_flip@flip-vs-expired-vblank@c-edp1.html
   [63]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-lnl-6/igt@kms_flip@flip-vs-expired-vblank@c-edp1.html

  * igt@kms_hdmi_inject@inject-audio:
    - shard-bmg:          [SKIP][64] ([Intel XE#7308]) -> [PASS][65]
   [64]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9007/shard-bmg-2/igt@kms_hdmi_inject@inject-audio.html
   [65]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-6/igt@kms_hdmi_inject@inject-audio.html

  * igt@kms_pm_dc@dc6-psr:
    - shard-lnl:          [FAIL][66] ([Intel XE#8399]) -> [PASS][67]
   [66]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9007/shard-lnl-1/igt@kms_pm_dc@dc6-psr.html
   [67]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-lnl-3/igt@kms_pm_dc@dc6-psr.html

  * igt@kms_vrr@seamless-rr-switch-virtual@pipe-a-edp-1:
    - shard-lnl:          [FAIL][68] ([Intel XE#2142]) -> [PASS][69] +1 other test pass
   [68]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9007/shard-lnl-8/igt@kms_vrr@seamless-rr-switch-virtual@pipe-a-edp-1.html
   [69]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-lnl-6/igt@kms_vrr@seamless-rr-switch-virtual@pipe-a-edp-1.html

  * igt@xe_evict@evict-beng-mixed-many-threads-small:
    - shard-bmg:          [INCOMPLETE][70] ([Intel XE#6321] / [Intel XE#8355]) -> [PASS][71]
   [70]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9007/shard-bmg-2/igt@xe_evict@evict-beng-mixed-many-threads-small.html
   [71]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-6/igt@xe_evict@evict-beng-mixed-many-threads-small.html

  * igt@xe_exec_reset@long-spin-reuse-many-preempt-threads:
    - shard-bmg:          [FAIL][72] ([Intel XE#7850]) -> [PASS][73]
   [72]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9007/shard-bmg-5/igt@xe_exec_reset@long-spin-reuse-many-preempt-threads.html
   [73]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-9/igt@xe_exec_reset@long-spin-reuse-many-preempt-threads.html

  * igt@xe_exec_system_allocator@threads-shared-vm-many-large-new-race:
    - shard-bmg:          [ABORT][74] ([Intel XE#8007]) -> [PASS][75] +3 other tests pass
   [74]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9007/shard-bmg-10/igt@xe_exec_system_allocator@threads-shared-vm-many-large-new-race.html
   [75]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-6/igt@xe_exec_system_allocator@threads-shared-vm-many-large-new-race.html

  * igt@xe_sriov_auto_provisioning@resources-released-on-vfs-disabling@numvfs-random:
    - shard-bmg:          [FAIL][76] ([Intel XE#7992]) -> [PASS][77] +3 other tests pass
   [76]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9007/shard-bmg-1/igt@xe_sriov_auto_provisioning@resources-released-on-vfs-disabling@numvfs-random.html
   [77]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-10/igt@xe_sriov_auto_provisioning@resources-released-on-vfs-disabling@numvfs-random.html

  * igt@xe_sriov_flr@flr-vf1-clear:
    - shard-bmg:          [FAIL][78] ([Intel XE#6569]) -> [PASS][79]
   [78]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9007/shard-bmg-9/igt@xe_sriov_flr@flr-vf1-clear.html
   [79]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-3/igt@xe_sriov_flr@flr-vf1-clear.html

  * igt@xe_sriov_scheduling@equal-throughput-normal-priority@numvfs-random-gt1-vcs0:
    - shard-bmg:          [FAIL][80] ([Intel XE#8526]) -> [PASS][81]
   [80]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9007/shard-bmg-9/igt@xe_sriov_scheduling@equal-throughput-normal-priority@numvfs-random-gt1-vcs0.html
   [81]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-9/igt@xe_sriov_scheduling@equal-throughput-normal-priority@numvfs-random-gt1-vcs0.html

  
#### Warnings ####

  * igt@kms_flip@flip-vs-expired-vblank:
    - shard-lnl:          [FAIL][82] ([Intel XE#301] / [Intel XE#3149]) -> [FAIL][83] ([Intel XE#301])
   [82]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9007/shard-lnl-4/igt@kms_flip@flip-vs-expired-vblank.html
   [83]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-lnl-6/igt@kms_flip@flip-vs-expired-vblank.html

  * igt@kms_plane_scaling@planes-downscale-factor-0-5:
    - shard-lnl:          [SKIP][84] ([Intel XE#2763] / [Intel XE#6886]) -> [ABORT][85] ([Intel XE#8007]) +1 other test abort
   [84]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9007/shard-lnl-6/igt@kms_plane_scaling@planes-downscale-factor-0-5.html
   [85]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-lnl-7/igt@kms_plane_scaling@planes-downscale-factor-0-5.html

  * igt@kms_tiled_display@basic-test-pattern:
    - shard-bmg:          [SKIP][86] ([Intel XE#2426] / [Intel XE#5848]) -> [FAIL][87] ([Intel XE#1729] / [Intel XE#7424])
   [86]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9007/shard-bmg-9/igt@kms_tiled_display@basic-test-pattern.html
   [87]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/shard-bmg-4/igt@kms_tiled_display@basic-test-pattern.html

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

  [Intel XE#1124]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1124
  [Intel XE#1178]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1178
  [Intel XE#1489]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1489
  [Intel XE#1499]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1499
  [Intel XE#1729]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1729
  [Intel XE#2142]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2142
  [Intel XE#2168]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2168
  [Intel XE#2234]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2234
  [Intel XE#2252]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2252
  [Intel XE#2284]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2284
  [Intel XE#2311]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2311
  [Intel XE#2313]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2313
  [Intel XE#2320]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2320
  [Intel XE#2322]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2322
  [Intel XE#2325]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2325
  [Intel XE#2327]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2327
  [Intel XE#2373]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2373
  [Intel XE#2426]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2426
  [Intel XE#2504]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2504
  [Intel XE#2763]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2763
  [Intel XE#2850]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2850
  [Intel XE#2887]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2887
  [Intel XE#2938]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2938
  [Intel XE#301]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/301
  [Intel XE#3149]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3149
  [Intel XE#3304]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3304
  [Intel XE#3432]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3432
  [Intel XE#367]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/367
  [Intel XE#3718]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3718
  [Intel XE#3904]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3904
  [Intel XE#4141]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4141
  [Intel XE#4298]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4298
  [Intel XE#4354]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4354
  [Intel XE#4422]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4422
  [Intel XE#4733]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4733
  [Intel XE#5020]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5020
  [Intel XE#5545]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5545
  [Intel XE#5848]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5848
  [Intel XE#5870]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5870
  [Intel XE#5873]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5873
  [Intel XE#6321]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6321
  [Intel XE#6503]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6503
  [Intel XE#6507]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6507
  [Intel XE#6569]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6569
  [Intel XE#6886]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6886
  [Intel XE#6911]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6911
  [Intel XE#6964]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6964
  [Intel XE#7061]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7061
  [Intel XE#7178]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7178
  [Intel XE#7265]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7265
  [Intel XE#7283]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7283
  [Intel XE#7308]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7308
  [Intel XE#7319]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7319
  [Intel XE#7342]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7342
  [Intel XE#7348]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7348
  [Intel XE#7350]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7350
  [Intel XE#7351]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7351
  [Intel XE#7356]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7356
  [Intel XE#7358]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7358
  [Intel XE#7370]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7370
  [Intel XE#7372]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7372
  [Intel XE#7374]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7374
  [Intel XE#7376]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7376
  [Intel XE#7378]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7378
  [Intel XE#7399]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7399
  [Intel XE#7417]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7417
  [Intel XE#7424]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7424
  [Intel XE#7442]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7442
  [Intel XE#7444]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7444
  [Intel XE#7448]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7448
  [Intel XE#7571]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7571
  [Intel XE#7590]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7590
  [Intel XE#7599]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7599
  [Intel XE#7642]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7642
  [Intel XE#7679]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7679
  [Intel XE#7695]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7695
  [Intel XE#7760]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7760
  [Intel XE#7793]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7793
  [Intel XE#7795]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7795
  [Intel XE#7850]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7850
  [Intel XE#7992]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7992
  [Intel XE#8007]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8007
  [Intel XE#8265]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8265
  [Intel XE#8355]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8355
  [Intel XE#8364]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8364
  [Intel XE#8369]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8369
  [Intel XE#8370]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8370
  [Intel XE#8374]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8374
  [Intel XE#8378]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8378
  [Intel XE#8399]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8399
  [Intel XE#8526]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8526
  [Intel XE#870]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/870
  [Intel XE#944]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/944


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

  * IGT: IGT_9007 -> IGTPW_15535

  IGTPW_15535: 15535
  IGT_9007: 9007
  xe-5412-116ce94f4e028e50e3523c46a8ce1e665ce47cb9: 116ce94f4e028e50e3523c46a8ce1e665ce47cb9

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15535/index.html

[-- Attachment #2: Type: text/html, Size: 32033 bytes --]

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

* ✗ i915.CI.Full: failure for tools: remove unnecessary shared library dependencies from standalone tools
  2026-07-15 12:15 [PATCH i-g-t v3 00/31] tools: remove unnecessary shared library dependencies from standalone tools Sebastian Brzezinka
                   ` (33 preceding siblings ...)
  2026-07-15 19:27 ` ✓ Xe.CI.FULL: " Patchwork
@ 2026-07-15 22:53 ` Patchwork
  34 siblings, 0 replies; 50+ messages in thread
From: Patchwork @ 2026-07-15 22:53 UTC (permalink / raw)
  To: Sebastian Brzezinka; +Cc: igt-dev

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

== Series Details ==

Series: tools: remove unnecessary shared library dependencies from standalone tools
URL   : https://patchwork.freedesktop.org/series/170485/
State : failure

== Summary ==

CI Bug Log - changes from IGT_9007_full -> IGTPW_15535_full
====================================================

Summary
-------

  **FAILURE**

  Serious unknown changes coming with IGTPW_15535_full absolutely need to be
  verified manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in IGTPW_15535_full, please notify your bug team (I915-ci-infra@lists.freedesktop.org) to allow them
  to document this new failure mode, which will reduce false positives in CI.

  External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/index.html

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

  No changes in participating hosts

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

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

### IGT changes ###

#### Possible regressions ####

  * igt@gem_busy@close-race:
    - shard-mtlp:         [PASS][1] -> [ABORT][2]
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-mtlp-2/igt@gem_busy@close-race.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-6/igt@gem_busy@close-race.html

  * igt@gem_exec_schedule@wide@rcs0:
    - shard-glk:          NOTRUN -> [FAIL][3] +1 other test fail
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-glk5/igt@gem_exec_schedule@wide@rcs0.html

  
New tests
---------

  New tests have been introduced between IGT_9007_full and IGTPW_15535_full:

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

  * igt@kms_cursor_crc@cursor-suspend@pipe-a-hdmi-a-4:
    - Statuses : 1 pass(s)
    - Exec time: [20.78] s

  * igt@kms_cursor_crc@cursor-suspend@pipe-d-hdmi-a-4:
    - Statuses : 1 pass(s)
    - Exec time: [20.24] s

  

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

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

### IGT changes ###

#### Issues hit ####

  * igt@api_intel_bb@blit-reloc-keep-cache:
    - shard-dg2:          NOTRUN -> [SKIP][4] ([i915#8411])
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-6/igt@api_intel_bb@blit-reloc-keep-cache.html
    - shard-rkl:          NOTRUN -> [SKIP][5] ([i915#8411]) +1 other test skip
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-2/igt@api_intel_bb@blit-reloc-keep-cache.html
    - shard-dg1:          NOTRUN -> [SKIP][6] ([i915#8411])
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-19/igt@api_intel_bb@blit-reloc-keep-cache.html
    - shard-mtlp:         NOTRUN -> [SKIP][7] ([i915#8411])
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-4/igt@api_intel_bb@blit-reloc-keep-cache.html

  * igt@api_intel_bb@object-reloc-keep-cache:
    - shard-rkl:          NOTRUN -> [SKIP][8] ([i915#14544] / [i915#8411])
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-6/igt@api_intel_bb@object-reloc-keep-cache.html

  * igt@device_reset@unbind-cold-reset-rebind:
    - shard-mtlp:         NOTRUN -> [SKIP][9] ([i915#11078])
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-2/igt@device_reset@unbind-cold-reset-rebind.html

  * igt@dmabuf@all-tests:
    - shard-tglu:         NOTRUN -> [SKIP][10] ([i915#15931])
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-4/igt@dmabuf@all-tests.html
    - shard-mtlp:         NOTRUN -> [SKIP][11] ([i915#15931])
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-8/igt@dmabuf@all-tests.html
    - shard-dg2:          NOTRUN -> [SKIP][12] ([i915#15931])
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-8/igt@dmabuf@all-tests.html
    - shard-dg1:          NOTRUN -> [SKIP][13] ([i915#15931])
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-12/igt@dmabuf@all-tests.html

  * igt@drm_buddy@drm_buddy:
    - shard-tglu:         NOTRUN -> [SKIP][14] ([i915#15678])
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-4/igt@drm_buddy@drm_buddy.html

  * igt@gem_basic@multigpu-create-close:
    - shard-rkl:          NOTRUN -> [SKIP][15] ([i915#7697]) +1 other test skip
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-2/igt@gem_basic@multigpu-create-close.html
    - shard-dg1:          NOTRUN -> [SKIP][16] ([i915#7697])
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-14/igt@gem_basic@multigpu-create-close.html
    - shard-tglu:         NOTRUN -> [SKIP][17] ([i915#7697])
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-6/igt@gem_basic@multigpu-create-close.html
    - shard-mtlp:         NOTRUN -> [SKIP][18] ([i915#7697])
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-6/igt@gem_basic@multigpu-create-close.html
    - shard-dg2:          NOTRUN -> [SKIP][19] ([i915#7697])
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-6/igt@gem_basic@multigpu-create-close.html

  * igt@gem_caching@writes:
    - shard-mtlp:         NOTRUN -> [SKIP][20] ([i915#4873])
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-3/igt@gem_caching@writes.html

  * igt@gem_ccs@ctrl-surf-copy-new-ctx:
    - shard-rkl:          NOTRUN -> [SKIP][21] ([i915#9323])
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-2/igt@gem_ccs@ctrl-surf-copy-new-ctx.html

  * igt@gem_ccs@suspend-resume:
    - shard-tglu:         NOTRUN -> [SKIP][22] ([i915#9323])
   [22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-8/igt@gem_ccs@suspend-resume.html

  * igt@gem_ccs@suspend-resume@tile4-compressed-compfmt0-lmem0-lmem0:
    - shard-dg2:          NOTRUN -> [INCOMPLETE][23] ([i915#13356] / [i915#16348])
   [23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-4/igt@gem_ccs@suspend-resume@tile4-compressed-compfmt0-lmem0-lmem0.html

  * igt@gem_create@create-ext-cpu-access-sanity-check:
    - shard-rkl:          NOTRUN -> [SKIP][24] ([i915#6335]) +1 other test skip
   [24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-8/igt@gem_create@create-ext-cpu-access-sanity-check.html

  * igt@gem_ctx_isolation@preservation-s3@rcs0:
    - shard-glk:          [PASS][25] -> [INCOMPLETE][26] ([i915#13356] / [i915#16466])
   [25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-glk9/igt@gem_ctx_isolation@preservation-s3@rcs0.html
   [26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-glk4/igt@gem_ctx_isolation@preservation-s3@rcs0.html

  * igt@gem_ctx_persistence@process:
    - shard-snb:          NOTRUN -> [SKIP][27] ([i915#1099])
   [27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-snb7/igt@gem_ctx_persistence@process.html

  * igt@gem_eio@hibernate:
    - shard-rkl:          NOTRUN -> [ABORT][28] ([i915#7975])
   [28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-1/igt@gem_eio@hibernate.html

  * igt@gem_eio@in-flight-suspend:
    - shard-glk:          NOTRUN -> [INCOMPLETE][29] ([i915#13390])
   [29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-glk5/igt@gem_eio@in-flight-suspend.html

  * igt@gem_exec_balancer@noheartbeat:
    - shard-mtlp:         NOTRUN -> [SKIP][30] ([i915#8555])
   [30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-6/igt@gem_exec_balancer@noheartbeat.html

  * igt@gem_exec_balancer@parallel:
    - shard-tglu:         NOTRUN -> [SKIP][31] ([i915#4525])
   [31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-6/igt@gem_exec_balancer@parallel.html

  * igt@gem_exec_balancer@parallel-balancer:
    - shard-rkl:          NOTRUN -> [SKIP][32] ([i915#4525]) +3 other tests skip
   [32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-7/igt@gem_exec_balancer@parallel-balancer.html

  * igt@gem_exec_big@single:
    - shard-mtlp:         NOTRUN -> [FAIL][33] ([i915#15871])
   [33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-3/igt@gem_exec_big@single.html

  * igt@gem_exec_capture@capture-invisible@smem0:
    - shard-rkl:          NOTRUN -> [SKIP][34] ([i915#6334]) +1 other test skip
   [34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-7/igt@gem_exec_capture@capture-invisible@smem0.html

  * igt@gem_exec_flush@basic-batch-kernel-default-cmd:
    - shard-mtlp:         NOTRUN -> [SKIP][35] ([i915#3711])
   [35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-3/igt@gem_exec_flush@basic-batch-kernel-default-cmd.html

  * igt@gem_exec_flush@basic-uc-ro-default:
    - shard-dg2:          NOTRUN -> [SKIP][36] ([i915#3539] / [i915#4852])
   [36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-3/igt@gem_exec_flush@basic-uc-ro-default.html
    - shard-dg1:          NOTRUN -> [SKIP][37] ([i915#3539] / [i915#4852]) +1 other test skip
   [37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-13/igt@gem_exec_flush@basic-uc-ro-default.html

  * igt@gem_exec_reloc@basic-cpu-gtt:
    - shard-rkl:          NOTRUN -> [SKIP][38] ([i915#3281]) +17 other tests skip
   [38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-3/igt@gem_exec_reloc@basic-cpu-gtt.html
    - shard-dg1:          NOTRUN -> [SKIP][39] ([i915#3281]) +6 other tests skip
   [39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-16/igt@gem_exec_reloc@basic-cpu-gtt.html

  * igt@gem_exec_reloc@basic-gtt-cpu-noreloc:
    - shard-mtlp:         NOTRUN -> [SKIP][40] ([i915#3281]) +7 other tests skip
   [40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-5/igt@gem_exec_reloc@basic-gtt-cpu-noreloc.html

  * igt@gem_exec_reloc@basic-wc-cpu:
    - shard-dg2:          NOTRUN -> [SKIP][41] ([i915#3281]) +3 other tests skip
   [41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-5/igt@gem_exec_reloc@basic-wc-cpu.html

  * igt@gem_exec_schedule@preempt-queue-chain:
    - shard-mtlp:         NOTRUN -> [SKIP][42] ([i915#4537] / [i915#4812])
   [42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-1/igt@gem_exec_schedule@preempt-queue-chain.html
    - shard-dg2:          NOTRUN -> [SKIP][43] ([i915#4537] / [i915#4812])
   [43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-5/igt@gem_exec_schedule@preempt-queue-chain.html
    - shard-dg1:          NOTRUN -> [SKIP][44] ([i915#4812])
   [44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-18/igt@gem_exec_schedule@preempt-queue-chain.html

  * igt@gem_exec_schedule@semaphore-power:
    - shard-rkl:          NOTRUN -> [SKIP][45] ([i915#7276])
   [45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-4/igt@gem_exec_schedule@semaphore-power.html

  * igt@gem_exec_suspend@basic-s3:
    - shard-glk:          NOTRUN -> [INCOMPLETE][46] ([i915#13196] / [i915#13356]) +1 other test incomplete
   [46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-glk8/igt@gem_exec_suspend@basic-s3.html

  * igt@gem_fence_thrash@bo-write-verify-x:
    - shard-mtlp:         NOTRUN -> [SKIP][47] ([i915#4860])
   [47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-6/igt@gem_fence_thrash@bo-write-verify-x.html

  * igt@gem_lmem_evict@dontneed-evict-race:
    - shard-rkl:          NOTRUN -> [SKIP][48] ([i915#4613] / [i915#7582])
   [48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-2/igt@gem_lmem_evict@dontneed-evict-race.html

  * igt@gem_lmem_swapping@heavy-verify-random:
    - shard-tglu-1:       NOTRUN -> [SKIP][49] ([i915#4613]) +1 other test skip
   [49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-1/igt@gem_lmem_swapping@heavy-verify-random.html

  * igt@gem_lmem_swapping@massive-random:
    - shard-glk:          NOTRUN -> [SKIP][50] ([i915#4613]) +3 other tests skip
   [50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-glk1/igt@gem_lmem_swapping@massive-random.html

  * igt@gem_lmem_swapping@parallel-random-verify-ccs:
    - shard-rkl:          NOTRUN -> [SKIP][51] ([i915#4613]) +4 other tests skip
   [51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-8/igt@gem_lmem_swapping@parallel-random-verify-ccs.html

  * igt@gem_lmem_swapping@smem-oom:
    - shard-tglu:         NOTRUN -> [SKIP][52] ([i915#4613]) +2 other tests skip
   [52]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-9/igt@gem_lmem_swapping@smem-oom.html

  * igt@gem_lmem_swapping@verify-ccs:
    - shard-dg1:          NOTRUN -> [SKIP][53] ([i915#12193])
   [53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-19/igt@gem_lmem_swapping@verify-ccs.html
    - shard-mtlp:         NOTRUN -> [SKIP][54] ([i915#4613]) +1 other test skip
   [54]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-4/igt@gem_lmem_swapping@verify-ccs.html

  * igt@gem_lmem_swapping@verify-ccs@lmem0:
    - shard-dg1:          NOTRUN -> [SKIP][55] ([i915#4565])
   [55]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-19/igt@gem_lmem_swapping@verify-ccs@lmem0.html

  * igt@gem_mmap_gtt@basic-write-read-distinct:
    - shard-mtlp:         NOTRUN -> [SKIP][56] ([i915#4077]) +4 other tests skip
   [56]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-1/igt@gem_mmap_gtt@basic-write-read-distinct.html

  * igt@gem_mmap_gtt@fault-concurrent-y:
    - shard-dg2:          NOTRUN -> [SKIP][57] ([i915#4077]) +3 other tests skip
   [57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-6/igt@gem_mmap_gtt@fault-concurrent-y.html
    - shard-dg1:          NOTRUN -> [SKIP][58] ([i915#4077]) +4 other tests skip
   [58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-14/igt@gem_mmap_gtt@fault-concurrent-y.html

  * igt@gem_mmap_wc@write:
    - shard-mtlp:         NOTRUN -> [SKIP][59] ([i915#4083]) +2 other tests skip
   [59]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-2/igt@gem_mmap_wc@write.html

  * igt@gem_mmap_wc@write-gtt-read-wc:
    - shard-dg2:          NOTRUN -> [SKIP][60] ([i915#4083]) +2 other tests skip
   [60]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-5/igt@gem_mmap_wc@write-gtt-read-wc.html
    - shard-dg1:          NOTRUN -> [SKIP][61] ([i915#4083]) +1 other test skip
   [61]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-18/igt@gem_mmap_wc@write-gtt-read-wc.html

  * igt@gem_partial_pwrite_pread@writes-after-reads-snoop:
    - shard-dg2:          NOTRUN -> [SKIP][62] ([i915#3282]) +1 other test skip
   [62]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-1/igt@gem_partial_pwrite_pread@writes-after-reads-snoop.html

  * igt@gem_partial_pwrite_pread@writes-after-reads-uncached:
    - shard-rkl:          NOTRUN -> [SKIP][63] ([i915#3282]) +8 other tests skip
   [63]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-1/igt@gem_partial_pwrite_pread@writes-after-reads-uncached.html

  * igt@gem_pwrite@basic-exhaustion:
    - shard-glk11:        NOTRUN -> [WARN][64] ([i915#14702] / [i915#2658])
   [64]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-glk11/igt@gem_pwrite@basic-exhaustion.html
    - shard-dg1:          NOTRUN -> [SKIP][65] ([i915#3282])
   [65]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-17/igt@gem_pwrite@basic-exhaustion.html
    - shard-snb:          NOTRUN -> [WARN][66] ([i915#2658])
   [66]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-snb5/igt@gem_pwrite@basic-exhaustion.html
    - shard-tglu:         NOTRUN -> [WARN][67] ([i915#2658])
   [67]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-3/igt@gem_pwrite@basic-exhaustion.html
    - shard-mtlp:         NOTRUN -> [SKIP][68] ([i915#3282])
   [68]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-2/igt@gem_pwrite@basic-exhaustion.html

  * igt@gem_pxp@verify-pxp-key-change-after-suspend-resume:
    - shard-dg2:          NOTRUN -> [SKIP][69] ([i915#4270]) +1 other test skip
   [69]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-3/igt@gem_pxp@verify-pxp-key-change-after-suspend-resume.html
    - shard-dg1:          NOTRUN -> [SKIP][70] ([i915#4270])
   [70]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-18/igt@gem_pxp@verify-pxp-key-change-after-suspend-resume.html

  * igt@gem_readwrite@beyond-eob:
    - shard-rkl:          NOTRUN -> [SKIP][71] ([i915#14544] / [i915#3282])
   [71]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-6/igt@gem_readwrite@beyond-eob.html

  * igt@gem_render_copy@y-tiled-to-vebox-y-tiled:
    - shard-dg2:          NOTRUN -> [SKIP][72] ([i915#5190] / [i915#8428]) +2 other tests skip
   [72]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-4/igt@gem_render_copy@y-tiled-to-vebox-y-tiled.html
    - shard-mtlp:         NOTRUN -> [SKIP][73] ([i915#8428]) +2 other tests skip
   [73]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-1/igt@gem_render_copy@y-tiled-to-vebox-y-tiled.html

  * igt@gem_unfence_active_buffers:
    - shard-dg2:          NOTRUN -> [SKIP][74] ([i915#4879])
   [74]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-7/igt@gem_unfence_active_buffers.html

  * igt@gem_userptr_blits@access-control:
    - shard-mtlp:         NOTRUN -> [SKIP][75] ([i915#3297]) +2 other tests skip
   [75]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-1/igt@gem_userptr_blits@access-control.html

  * igt@gem_userptr_blits@coherency-unsync:
    - shard-rkl:          NOTRUN -> [SKIP][76] ([i915#3297]) +2 other tests skip
   [76]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-2/igt@gem_userptr_blits@coherency-unsync.html

  * igt@gem_userptr_blits@dmabuf-sync:
    - shard-tglu:         NOTRUN -> [SKIP][77] ([i915#3297] / [i915#3323])
   [77]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-4/igt@gem_userptr_blits@dmabuf-sync.html
    - shard-glk:          NOTRUN -> [SKIP][78] ([i915#3323])
   [78]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-glk8/igt@gem_userptr_blits@dmabuf-sync.html
    - shard-rkl:          NOTRUN -> [SKIP][79] ([i915#3297] / [i915#3323])
   [79]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-8/igt@gem_userptr_blits@dmabuf-sync.html

  * igt@gem_userptr_blits@dmabuf-unsync:
    - shard-dg2:          NOTRUN -> [SKIP][80] ([i915#3297]) +2 other tests skip
   [80]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-8/igt@gem_userptr_blits@dmabuf-unsync.html
    - shard-rkl:          NOTRUN -> [SKIP][81] ([i915#14544] / [i915#3297])
   [81]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-6/igt@gem_userptr_blits@dmabuf-unsync.html
    - shard-dg1:          NOTRUN -> [SKIP][82] ([i915#3297]) +1 other test skip
   [82]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-12/igt@gem_userptr_blits@dmabuf-unsync.html
    - shard-tglu:         NOTRUN -> [SKIP][83] ([i915#3297])
   [83]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-4/igt@gem_userptr_blits@dmabuf-unsync.html

  * igt@gem_workarounds@suspend-resume-fd:
    - shard-glk:          NOTRUN -> [INCOMPLETE][84] ([i915#13356] / [i915#14586])
   [84]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-glk9/igt@gem_workarounds@suspend-resume-fd.html

  * igt@gen3_render_tiledy_blits:
    - shard-mtlp:         NOTRUN -> [SKIP][85] +14 other tests skip
   [85]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-2/igt@gen3_render_tiledy_blits.html

  * igt@gen9_exec_parse@batch-without-end:
    - shard-rkl:          NOTRUN -> [SKIP][86] ([i915#2527]) +1 other test skip
   [86]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-2/igt@gen9_exec_parse@batch-without-end.html
    - shard-dg1:          NOTRUN -> [SKIP][87] ([i915#2527]) +1 other test skip
   [87]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-19/igt@gen9_exec_parse@batch-without-end.html

  * igt@gen9_exec_parse@bb-chained:
    - shard-dg2:          NOTRUN -> [SKIP][88] ([i915#2856])
   [88]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-8/igt@gen9_exec_parse@bb-chained.html
    - shard-rkl:          NOTRUN -> [SKIP][89] ([i915#14544] / [i915#2527])
   [89]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-6/igt@gen9_exec_parse@bb-chained.html
    - shard-tglu:         NOTRUN -> [SKIP][90] ([i915#2527] / [i915#2856])
   [90]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-4/igt@gen9_exec_parse@bb-chained.html

  * igt@gen9_exec_parse@bb-oversize:
    - shard-mtlp:         NOTRUN -> [SKIP][91] ([i915#2856]) +1 other test skip
   [91]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-1/igt@gen9_exec_parse@bb-oversize.html

  * igt@gen9_exec_parse@bb-secure:
    - shard-tglu-1:       NOTRUN -> [SKIP][92] ([i915#2527] / [i915#2856]) +1 other test skip
   [92]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-1/igt@gen9_exec_parse@bb-secure.html

  * igt@i915_drm_fdinfo@busy-hang@ccs0:
    - shard-mtlp:         NOTRUN -> [SKIP][93] ([i915#14073]) +13 other tests skip
   [93]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-6/igt@i915_drm_fdinfo@busy-hang@ccs0.html

  * igt@i915_drm_fdinfo@busy@rcs0:
    - shard-dg1:          NOTRUN -> [SKIP][94] ([i915#14073]) +11 other tests skip
   [94]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-14/igt@i915_drm_fdinfo@busy@rcs0.html

  * igt@i915_drm_fdinfo@busy@vecs1:
    - shard-dg2:          NOTRUN -> [SKIP][95] ([i915#14073]) +15 other tests skip
   [95]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-6/igt@i915_drm_fdinfo@busy@vecs1.html

  * igt@i915_drm_fdinfo@virtual-busy:
    - shard-dg1:          NOTRUN -> [SKIP][96] ([i915#14118])
   [96]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-16/igt@i915_drm_fdinfo@virtual-busy.html

  * igt@i915_module_load@fault-injection@__uc_init:
    - shard-rkl:          NOTRUN -> [SKIP][97] ([i915#15479]) +4 other tests skip
   [97]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-4/igt@i915_module_load@fault-injection@__uc_init.html

  * igt@i915_module_load@fault-injection@intel_connector_register:
    - shard-rkl:          NOTRUN -> [ABORT][98] ([i915#15342]) +1 other test abort
   [98]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-4/igt@i915_module_load@fault-injection@intel_connector_register.html
    - shard-glk:          NOTRUN -> [ABORT][99] ([i915#15342]) +1 other test abort
   [99]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-glk4/igt@i915_module_load@fault-injection@intel_connector_register.html

  * igt@i915_module_load@reload-no-display:
    - shard-dg1:          [PASS][100] -> [DMESG-WARN][101] ([i915#13029] / [i915#14545])
   [100]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-dg1-16/igt@i915_module_load@reload-no-display.html
   [101]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-16/igt@i915_module_load@reload-no-display.html

  * igt@i915_module_load@resize-bar:
    - shard-rkl:          NOTRUN -> [SKIP][102] ([i915#6412])
   [102]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-7/igt@i915_module_load@resize-bar.html

  * igt@i915_pm_freq_api@freq-basic-api:
    - shard-tglu-1:       NOTRUN -> [SKIP][103] ([i915#8399])
   [103]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-1/igt@i915_pm_freq_api@freq-basic-api.html

  * igt@i915_pm_freq_api@freq-reset:
    - shard-tglu:         NOTRUN -> [SKIP][104] ([i915#8399])
   [104]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-10/igt@i915_pm_freq_api@freq-reset.html

  * igt@i915_pm_freq_api@freq-reset-multiple:
    - shard-rkl:          NOTRUN -> [SKIP][105] ([i915#8399]) +1 other test skip
   [105]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-2/igt@i915_pm_freq_api@freq-reset-multiple.html

  * igt@i915_pm_rc6_residency@media-rc6-accuracy:
    - shard-rkl:          NOTRUN -> [SKIP][106] ([i915#16080] / [i915#16166])
   [106]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-7/igt@i915_pm_rc6_residency@media-rc6-accuracy.html

  * igt@i915_pm_rc6_residency@rc6-accuracy:
    - shard-dg2:          NOTRUN -> [FAIL][107] ([i915#12964]) +1 other test fail
   [107]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-3/igt@i915_pm_rc6_residency@rc6-accuracy.html

  * igt@i915_pm_rc6_residency@rc6-idle:
    - shard-rkl:          NOTRUN -> [SKIP][108] ([i915#14498])
   [108]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-7/igt@i915_pm_rc6_residency@rc6-idle.html

  * igt@i915_pm_rps@min-max-config-idle:
    - shard-dg2:          NOTRUN -> [SKIP][109] ([i915#11681] / [i915#6621])
   [109]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-1/igt@i915_pm_rps@min-max-config-idle.html
    - shard-dg1:          NOTRUN -> [SKIP][110] ([i915#11681] / [i915#6621])
   [110]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-17/igt@i915_pm_rps@min-max-config-idle.html
    - shard-mtlp:         NOTRUN -> [SKIP][111] ([i915#11681] / [i915#6621])
   [111]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-7/igt@i915_pm_rps@min-max-config-idle.html

  * igt@i915_pm_rps@thresholds-park:
    - shard-mtlp:         NOTRUN -> [SKIP][112] ([i915#11681])
   [112]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-3/igt@i915_pm_rps@thresholds-park.html

  * igt@i915_pm_sseu@full-enable:
    - shard-dg2:          NOTRUN -> [SKIP][113] ([i915#4387])
   [113]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-6/igt@i915_pm_sseu@full-enable.html
    - shard-rkl:          NOTRUN -> [SKIP][114] ([i915#4387])
   [114]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-2/igt@i915_pm_sseu@full-enable.html
    - shard-dg1:          NOTRUN -> [SKIP][115] ([i915#4387])
   [115]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-14/igt@i915_pm_sseu@full-enable.html
    - shard-tglu:         NOTRUN -> [SKIP][116] ([i915#4387])
   [116]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-6/igt@i915_pm_sseu@full-enable.html
    - shard-mtlp:         NOTRUN -> [SKIP][117] ([i915#8437])
   [117]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-6/igt@i915_pm_sseu@full-enable.html

  * igt@i915_query@hwconfig_table:
    - shard-tglu:         NOTRUN -> [SKIP][118] ([i915#6245])
   [118]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-7/igt@i915_query@hwconfig_table.html

  * igt@i915_suspend@debugfs-reader:
    - shard-glk11:        NOTRUN -> [INCOMPLETE][119] ([i915#16182] / [i915#4817])
   [119]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-glk11/igt@i915_suspend@debugfs-reader.html

  * igt@i915_suspend@fence-restore-tiled2untiled:
    - shard-glk:          NOTRUN -> [INCOMPLETE][120] ([i915#16182] / [i915#4817]) +1 other test incomplete
   [120]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-glk3/igt@i915_suspend@fence-restore-tiled2untiled.html
    - shard-rkl:          NOTRUN -> [INCOMPLETE][121] ([i915#4817])
   [121]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-3/igt@i915_suspend@fence-restore-tiled2untiled.html

  * igt@intel_hwmon@hwmon-write:
    - shard-rkl:          NOTRUN -> [SKIP][122] ([i915#7707])
   [122]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-2/igt@intel_hwmon@hwmon-write.html

  * igt@kms_addfb_basic@bo-too-small-due-to-tiling:
    - shard-mtlp:         NOTRUN -> [SKIP][123] ([i915#4212])
   [123]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-1/igt@kms_addfb_basic@bo-too-small-due-to-tiling.html

  * igt@kms_atomic_transition@plane-all-modeset-transition-fencing:
    - shard-mtlp:         NOTRUN -> [SKIP][124] ([i915#1769] / [i915#3555])
   [124]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-1/igt@kms_atomic_transition@plane-all-modeset-transition-fencing.html

  * igt@kms_atomic_transition@plane-all-modeset-transition-fencing-internal-panels:
    - shard-rkl:          NOTRUN -> [SKIP][125] ([i915#1769] / [i915#3555]) +1 other test skip
   [125]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-8/igt@kms_atomic_transition@plane-all-modeset-transition-fencing-internal-panels.html
    - shard-glk11:        NOTRUN -> [SKIP][126] ([i915#1769])
   [126]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-glk11/igt@kms_atomic_transition@plane-all-modeset-transition-fencing-internal-panels.html

  * igt@kms_atomic_transition@plane-all-modeset-transition-internal-panels:
    - shard-glk:          NOTRUN -> [SKIP][127] ([i915#1769])
   [127]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-glk5/igt@kms_atomic_transition@plane-all-modeset-transition-internal-panels.html

  * igt@kms_atomic_transition@plane-all-modeset-transition-internal-panels@pipe-a-edp-1:
    - shard-mtlp:         [PASS][128] -> [FAIL][129] ([i915#5956]) +1 other test fail
   [128]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-mtlp-3/igt@kms_atomic_transition@plane-all-modeset-transition-internal-panels@pipe-a-edp-1.html
   [129]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-3/igt@kms_atomic_transition@plane-all-modeset-transition-internal-panels@pipe-a-edp-1.html

  * igt@kms_big_fb@4-tiled-16bpp-rotate-0:
    - shard-rkl:          NOTRUN -> [SKIP][130] ([i915#5286]) +6 other tests skip
   [130]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-3/igt@kms_big_fb@4-tiled-16bpp-rotate-0.html

  * igt@kms_big_fb@4-tiled-addfb:
    - shard-tglu-1:       NOTRUN -> [SKIP][131] ([i915#5286]) +3 other tests skip
   [131]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-1/igt@kms_big_fb@4-tiled-addfb.html

  * igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-180-async-flip:
    - shard-dg1:          NOTRUN -> [SKIP][132] ([i915#4538] / [i915#5286]) +5 other tests skip
   [132]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-12/igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-180-async-flip.html
    - shard-tglu:         NOTRUN -> [SKIP][133] ([i915#5286]) +7 other tests skip
   [133]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-4/igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-180-async-flip.html
    - shard-rkl:          NOTRUN -> [SKIP][134] ([i915#14544] / [i915#5286])
   [134]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-6/igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-180-async-flip.html

  * igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-180-hflip:
    - shard-mtlp:         [PASS][135] -> [FAIL][136] ([i915#15733] / [i915#5138])
   [135]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-mtlp-7/igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-180-hflip.html
   [136]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-4/igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-180-hflip.html

  * igt@kms_big_fb@linear-32bpp-rotate-90:
    - shard-rkl:          NOTRUN -> [SKIP][137] ([i915#3638]) +3 other tests skip
   [137]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-1/igt@kms_big_fb@linear-32bpp-rotate-90.html

  * igt@kms_big_fb@linear-max-hw-stride-32bpp-rotate-180-hflip:
    - shard-mtlp:         NOTRUN -> [SKIP][138] ([i915#3828])
   [138]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-4/igt@kms_big_fb@linear-max-hw-stride-32bpp-rotate-180-hflip.html

  * igt@kms_big_fb@linear-max-hw-stride-64bpp-rotate-0-hflip:
    - shard-rkl:          NOTRUN -> [SKIP][139] ([i915#3828])
   [139]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-8/igt@kms_big_fb@linear-max-hw-stride-64bpp-rotate-0-hflip.html
    - shard-dg1:          NOTRUN -> [SKIP][140] ([i915#3828])
   [140]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-17/igt@kms_big_fb@linear-max-hw-stride-64bpp-rotate-0-hflip.html

  * igt@kms_big_fb@y-tiled-64bpp-rotate-0:
    - shard-dg2:          NOTRUN -> [SKIP][141] ([i915#4538] / [i915#5190]) +3 other tests skip
   [141]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-1/igt@kms_big_fb@y-tiled-64bpp-rotate-0.html

  * igt@kms_big_fb@y-tiled-8bpp-rotate-90:
    - shard-dg1:          NOTRUN -> [SKIP][142] ([i915#3638]) +2 other tests skip
   [142]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-19/igt@kms_big_fb@y-tiled-8bpp-rotate-90.html

  * igt@kms_big_fb@yf-tiled-64bpp-rotate-90:
    - shard-dg1:          NOTRUN -> [SKIP][143] ([i915#4538]) +2 other tests skip
   [143]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-18/igt@kms_big_fb@yf-tiled-64bpp-rotate-90.html

  * igt@kms_big_fb@yf-tiled-addfb:
    - shard-dg2:          NOTRUN -> [SKIP][144] ([i915#5190])
   [144]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-7/igt@kms_big_fb@yf-tiled-addfb.html

  * igt@kms_ccs@bad-aux-stride-4-tiled-mtl-mc-ccs@pipe-a-hdmi-a-4:
    - shard-dg1:          NOTRUN -> [SKIP][145] ([i915#6095]) +243 other tests skip
   [145]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-16/igt@kms_ccs@bad-aux-stride-4-tiled-mtl-mc-ccs@pipe-a-hdmi-a-4.html

  * igt@kms_ccs@bad-pixel-format-4-tiled-dg2-rc-ccs-cc@pipe-c-edp-1:
    - shard-mtlp:         NOTRUN -> [SKIP][146] ([i915#6095]) +49 other tests skip
   [146]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-2/igt@kms_ccs@bad-pixel-format-4-tiled-dg2-rc-ccs-cc@pipe-c-edp-1.html

  * igt@kms_ccs@bad-pixel-format-4-tiled-mtl-rc-ccs-cc:
    - shard-tglu-1:       NOTRUN -> [SKIP][147] ([i915#6095]) +9 other tests skip
   [147]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-1/igt@kms_ccs@bad-pixel-format-4-tiled-mtl-rc-ccs-cc.html

  * igt@kms_ccs@bad-rotation-90-4-tiled-mtl-rc-ccs@pipe-b-hdmi-a-2:
    - shard-rkl:          NOTRUN -> [SKIP][148] ([i915#6095]) +75 other tests skip
   [148]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-7/igt@kms_ccs@bad-rotation-90-4-tiled-mtl-rc-ccs@pipe-b-hdmi-a-2.html

  * igt@kms_ccs@ccs-on-another-bo-4-tiled-mtl-rc-ccs-cc:
    - shard-rkl:          NOTRUN -> [SKIP][149] ([i915#14098] / [i915#14544] / [i915#6095]) +2 other tests skip
   [149]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-6/igt@kms_ccs@ccs-on-another-bo-4-tiled-mtl-rc-ccs-cc.html

  * igt@kms_ccs@crc-primary-basic-4-tiled-bmg-ccs:
    - shard-dg2:          NOTRUN -> [SKIP][150] ([i915#12313])
   [150]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-6/igt@kms_ccs@crc-primary-basic-4-tiled-bmg-ccs.html
    - shard-rkl:          NOTRUN -> [SKIP][151] ([i915#12313]) +2 other tests skip
   [151]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-2/igt@kms_ccs@crc-primary-basic-4-tiled-bmg-ccs.html
    - shard-dg1:          NOTRUN -> [SKIP][152] ([i915#12313])
   [152]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-19/igt@kms_ccs@crc-primary-basic-4-tiled-bmg-ccs.html
    - shard-tglu:         NOTRUN -> [SKIP][153] ([i915#12313])
   [153]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-10/igt@kms_ccs@crc-primary-basic-4-tiled-bmg-ccs.html
    - shard-mtlp:         NOTRUN -> [SKIP][154] ([i915#12313])
   [154]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-4/igt@kms_ccs@crc-primary-basic-4-tiled-bmg-ccs.html

  * igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs:
    - shard-dg2:          NOTRUN -> [SKIP][155] ([i915#12805])
   [155]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-5/igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs.html
    - shard-rkl:          NOTRUN -> [SKIP][156] ([i915#12805])
   [156]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-1/igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs.html
    - shard-dg1:          NOTRUN -> [SKIP][157] ([i915#12805])
   [157]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-18/igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs.html
    - shard-tglu:         NOTRUN -> [SKIP][158] ([i915#12805])
   [158]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-7/igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs.html
    - shard-mtlp:         NOTRUN -> [SKIP][159] ([i915#12805])
   [159]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-1/igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs.html

  * igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-rc-ccs-cc:
    - shard-dg2:          [PASS][160] -> [ABORT][161] ([i915#15132])
   [160]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-dg2-3/igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-rc-ccs-cc.html
   [161]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-10/igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-rc-ccs-cc.html

  * igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-rc-ccs-cc@pipe-d-dp-3:
    - shard-dg2:          NOTRUN -> [ABORT][162] ([i915#15132])
   [162]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-10/igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-rc-ccs-cc@pipe-d-dp-3.html

  * igt@kms_ccs@crc-primary-suspend-y-tiled-ccs:
    - shard-glk:          NOTRUN -> [INCOMPLETE][163] ([i915#14694] / [i915#15582]) +1 other test incomplete
   [163]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-glk1/igt@kms_ccs@crc-primary-suspend-y-tiled-ccs.html

  * igt@kms_ccs@crc-primary-suspend-yf-tiled-ccs:
    - shard-rkl:          NOTRUN -> [SKIP][164] ([i915#14098] / [i915#6095]) +58 other tests skip
   [164]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-2/igt@kms_ccs@crc-primary-suspend-yf-tiled-ccs.html

  * igt@kms_ccs@crc-primary-suspend-yf-tiled-ccs@pipe-a-hdmi-a-1:
    - shard-glk:          NOTRUN -> [INCOMPLETE][165] ([i915#15582]) +1 other test incomplete
   [165]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-glk9/igt@kms_ccs@crc-primary-suspend-yf-tiled-ccs@pipe-a-hdmi-a-1.html

  * igt@kms_ccs@crc-sprite-planes-basic-4-tiled-mtl-rc-ccs-cc@pipe-b-hdmi-a-1:
    - shard-tglu:         NOTRUN -> [SKIP][166] ([i915#6095]) +44 other tests skip
   [166]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-10/igt@kms_ccs@crc-sprite-planes-basic-4-tiled-mtl-rc-ccs-cc@pipe-b-hdmi-a-1.html

  * igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs-cc@pipe-a-hdmi-a-2:
    - shard-rkl:          NOTRUN -> [SKIP][167] ([i915#14544] / [i915#6095]) +3 other tests skip
   [167]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-6/igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs-cc@pipe-a-hdmi-a-2.html

  * igt@kms_ccs@random-ccs-data-4-tiled-lnl-ccs:
    - shard-tglu-1:       NOTRUN -> [SKIP][168] ([i915#12313]) +2 other tests skip
   [168]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-1/igt@kms_ccs@random-ccs-data-4-tiled-lnl-ccs.html

  * igt@kms_ccs@random-ccs-data-y-tiled-ccs:
    - shard-snb:          NOTRUN -> [SKIP][169] +193 other tests skip
   [169]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-snb7/igt@kms_ccs@random-ccs-data-y-tiled-ccs.html

  * igt@kms_ccs@random-ccs-data-y-tiled-gen12-mc-ccs@pipe-c-hdmi-a-1:
    - shard-dg2:          NOTRUN -> [SKIP][170] ([i915#10307] / [i915#6095]) +100 other tests skip
   [170]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-4/igt@kms_ccs@random-ccs-data-y-tiled-gen12-mc-ccs@pipe-c-hdmi-a-1.html

  * igt@kms_ccs@random-ccs-data-y-tiled-gen12-mc-ccs@pipe-d-hdmi-a-1:
    - shard-dg2:          NOTRUN -> [SKIP][171] ([i915#10307] / [i915#10434] / [i915#6095])
   [171]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-4/igt@kms_ccs@random-ccs-data-y-tiled-gen12-mc-ccs@pipe-d-hdmi-a-1.html

  * igt@kms_cdclk@mode-transition:
    - shard-rkl:          NOTRUN -> [SKIP][172] ([i915#3742]) +1 other test skip
   [172]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-3/igt@kms_cdclk@mode-transition.html
    - shard-dg1:          NOTRUN -> [SKIP][173] ([i915#3742]) +1 other test skip
   [173]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-16/igt@kms_cdclk@mode-transition.html
    - shard-tglu:         NOTRUN -> [SKIP][174] ([i915#3742]) +1 other test skip
   [174]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-8/igt@kms_cdclk@mode-transition.html

  * igt@kms_cdclk@mode-transition-all-outputs:
    - shard-dg2:          NOTRUN -> [SKIP][175] ([i915#16017])
   [175]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-10/igt@kms_cdclk@mode-transition-all-outputs.html
    - shard-mtlp:         NOTRUN -> [SKIP][176] ([i915#16017])
   [176]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-5/igt@kms_cdclk@mode-transition-all-outputs.html

  * igt@kms_cdclk@mode-transition@pipe-b-edp-1:
    - shard-mtlp:         NOTRUN -> [SKIP][177] ([i915#13781]) +4 other tests skip
   [177]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-5/igt@kms_cdclk@mode-transition@pipe-b-edp-1.html

  * igt@kms_chamelium_audio@dp-audio-after-suspend:
    - shard-rkl:          NOTRUN -> [SKIP][178] ([i915#11151])
   [178]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-5/igt@kms_chamelium_audio@dp-audio-after-suspend.html

  * igt@kms_chamelium_color@degamma:
    - shard-dg2:          NOTRUN -> [SKIP][179] +8 other tests skip
   [179]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-6/igt@kms_chamelium_color@degamma.html

  * igt@kms_chamelium_color_pipeline@plane-lut1d-lut1d:
    - shard-rkl:          NOTRUN -> [SKIP][180] ([i915#16471]) +2 other tests skip
   [180]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-5/igt@kms_chamelium_color_pipeline@plane-lut1d-lut1d.html
    - shard-dg1:          NOTRUN -> [SKIP][181] ([i915#16471])
   [181]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-13/igt@kms_chamelium_color_pipeline@plane-lut1d-lut1d.html

  * igt@kms_chamelium_edid@dp-edid-resolution-list:
    - shard-dg2:          NOTRUN -> [SKIP][182] ([i915#11151] / [i915#7828]) +2 other tests skip
   [182]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-8/igt@kms_chamelium_edid@dp-edid-resolution-list.html

  * igt@kms_chamelium_frames@hdmi-aspect-ratio:
    - shard-tglu:         NOTRUN -> [SKIP][183] ([i915#11151] / [i915#7828]) +4 other tests skip
   [183]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-10/igt@kms_chamelium_frames@hdmi-aspect-ratio.html

  * igt@kms_chamelium_hpd@dp-hpd-after-suspend:
    - shard-glk11:        NOTRUN -> [SKIP][184] +234 other tests skip
   [184]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-glk11/igt@kms_chamelium_hpd@dp-hpd-after-suspend.html

  * igt@kms_chamelium_hpd@dp-hpd-for-each-pipe:
    - shard-mtlp:         NOTRUN -> [SKIP][185] ([i915#11151] / [i915#7828]) +4 other tests skip
   [185]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-6/igt@kms_chamelium_hpd@dp-hpd-for-each-pipe.html

  * igt@kms_chamelium_hpd@dp-hpd-storm:
    - shard-tglu-1:       NOTRUN -> [SKIP][186] ([i915#11151] / [i915#7828]) +4 other tests skip
   [186]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-1/igt@kms_chamelium_hpd@dp-hpd-storm.html

  * igt@kms_chamelium_hpd@dp-hpd-storm-disable:
    - shard-dg1:          NOTRUN -> [SKIP][187] ([i915#11151] / [i915#7828]) +1 other test skip
   [187]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-13/igt@kms_chamelium_hpd@dp-hpd-storm-disable.html

  * igt@kms_chamelium_hpd@vga-hpd-fast:
    - shard-rkl:          NOTRUN -> [SKIP][188] ([i915#11151] / [i915#7828]) +5 other tests skip
   [188]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-7/igt@kms_chamelium_hpd@vga-hpd-fast.html

  * igt@kms_content_protection@dp-mst-type-1:
    - shard-tglu:         NOTRUN -> [SKIP][189] ([i915#15330] / [i915#3116] / [i915#3299])
   [189]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-9/igt@kms_content_protection@dp-mst-type-1.html

  * igt@kms_content_protection@dp-mst-type-1-suspend-resume:
    - shard-tglu-1:       NOTRUN -> [SKIP][190] ([i915#15330])
   [190]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-1/igt@kms_content_protection@dp-mst-type-1-suspend-resume.html

  * igt@kms_content_protection@legacy-hdcp14:
    - shard-dg2:          NOTRUN -> [SKIP][191] ([i915#15865])
   [191]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-7/igt@kms_content_protection@legacy-hdcp14.html
    - shard-tglu:         NOTRUN -> [SKIP][192] ([i915#15865])
   [192]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-8/igt@kms_content_protection@legacy-hdcp14.html
    - shard-mtlp:         NOTRUN -> [SKIP][193] ([i915#15865])
   [193]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-8/igt@kms_content_protection@legacy-hdcp14.html

  * igt@kms_content_protection@mei-interface:
    - shard-tglu-1:       NOTRUN -> [SKIP][194] ([i915#15865]) +1 other test skip
   [194]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-1/igt@kms_content_protection@mei-interface.html

  * igt@kms_content_protection@srm:
    - shard-rkl:          NOTRUN -> [SKIP][195] ([i915#15865]) +5 other tests skip
   [195]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-8/igt@kms_content_protection@srm.html
    - shard-dg1:          NOTRUN -> [SKIP][196] ([i915#15865]) +1 other test skip
   [196]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-17/igt@kms_content_protection@srm.html

  * igt@kms_cursor_crc@cursor-offscreen-512x170:
    - shard-tglu-1:       NOTRUN -> [SKIP][197] ([i915#13049])
   [197]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-1/igt@kms_cursor_crc@cursor-offscreen-512x170.html

  * igt@kms_cursor_crc@cursor-offscreen-64x21:
    - shard-mtlp:         NOTRUN -> [SKIP][198] ([i915#8814])
   [198]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-3/igt@kms_cursor_crc@cursor-offscreen-64x21.html

  * igt@kms_cursor_crc@cursor-onscreen-32x10:
    - shard-mtlp:         NOTRUN -> [SKIP][199] ([i915#3555] / [i915#8814]) +3 other tests skip
   [199]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-7/igt@kms_cursor_crc@cursor-onscreen-32x10.html

  * igt@kms_cursor_crc@cursor-onscreen-32x32:
    - shard-tglu-1:       NOTRUN -> [SKIP][200] ([i915#3555]) +1 other test skip
   [200]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-1/igt@kms_cursor_crc@cursor-onscreen-32x32.html

  * igt@kms_cursor_crc@cursor-onscreen-max-size:
    - shard-rkl:          NOTRUN -> [SKIP][201] ([i915#14544] / [i915#3555])
   [201]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-6/igt@kms_cursor_crc@cursor-onscreen-max-size.html

  * igt@kms_cursor_crc@cursor-random-256x85@pipe-a-hdmi-a-1:
    - shard-tglu:         [PASS][202] -> [FAIL][203] ([i915#13566]) +3 other tests fail
   [202]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-tglu-7/igt@kms_cursor_crc@cursor-random-256x85@pipe-a-hdmi-a-1.html
   [203]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-10/igt@kms_cursor_crc@cursor-random-256x85@pipe-a-hdmi-a-1.html

  * igt@kms_cursor_crc@cursor-random-256x85@pipe-a-hdmi-a-2:
    - shard-rkl:          [PASS][204] -> [FAIL][205] ([i915#13566]) +1 other test fail
   [204]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-7/igt@kms_cursor_crc@cursor-random-256x85@pipe-a-hdmi-a-2.html
   [205]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-4/igt@kms_cursor_crc@cursor-random-256x85@pipe-a-hdmi-a-2.html

  * igt@kms_cursor_crc@cursor-random-512x512:
    - shard-rkl:          NOTRUN -> [SKIP][206] ([i915#13049]) +1 other test skip
   [206]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-7/igt@kms_cursor_crc@cursor-random-512x512.html

  * igt@kms_cursor_crc@cursor-rapid-movement-32x32:
    - shard-dg2:          NOTRUN -> [SKIP][207] ([i915#3555]) +1 other test skip
   [207]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-3/igt@kms_cursor_crc@cursor-rapid-movement-32x32.html
    - shard-rkl:          NOTRUN -> [SKIP][208] ([i915#3555]) +3 other tests skip
   [208]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-7/igt@kms_cursor_crc@cursor-rapid-movement-32x32.html
    - shard-dg1:          NOTRUN -> [SKIP][209] ([i915#3555]) +1 other test skip
   [209]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-18/igt@kms_cursor_crc@cursor-rapid-movement-32x32.html
    - shard-tglu:         NOTRUN -> [SKIP][210] ([i915#3555]) +1 other test skip
   [210]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-5/igt@kms_cursor_crc@cursor-rapid-movement-32x32.html

  * igt@kms_cursor_crc@cursor-sliding-128x42@pipe-a-hdmi-a-1:
    - shard-rkl:          NOTRUN -> [FAIL][211] ([i915#13566]) +7 other tests fail
   [211]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-8/igt@kms_cursor_crc@cursor-sliding-128x42@pipe-a-hdmi-a-1.html

  * igt@kms_cursor_crc@cursor-sliding-256x85:
    - shard-tglu:         NOTRUN -> [FAIL][212] ([i915#13566]) +1 other test fail
   [212]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-9/igt@kms_cursor_crc@cursor-sliding-256x85.html

  * igt@kms_cursor_crc@cursor-sliding-512x512:
    - shard-dg2:          NOTRUN -> [SKIP][213] ([i915#13049])
   [213]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-4/igt@kms_cursor_crc@cursor-sliding-512x512.html

  * igt@kms_cursor_crc@cursor-suspend:
    - shard-glk10:        NOTRUN -> [INCOMPLETE][214] ([i915#12358] / [i915#14152] / [i915#7882])
   [214]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-glk10/igt@kms_cursor_crc@cursor-suspend.html

  * igt@kms_cursor_crc@cursor-suspend@pipe-a-hdmi-a-1:
    - shard-glk10:        NOTRUN -> [INCOMPLETE][215] ([i915#12358] / [i915#14152])
   [215]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-glk10/igt@kms_cursor_crc@cursor-suspend@pipe-a-hdmi-a-1.html

  * igt@kms_cursor_legacy@2x-long-flip-vs-cursor-atomic:
    - shard-dg2:          NOTRUN -> [SKIP][216] ([i915#13046] / [i915#5354]) +1 other test skip
   [216]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-5/igt@kms_cursor_legacy@2x-long-flip-vs-cursor-atomic.html

  * igt@kms_cursor_legacy@cursorb-vs-flipb-atomic-transitions:
    - shard-mtlp:         NOTRUN -> [SKIP][217] ([i915#9809]) +2 other tests skip
   [217]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-2/igt@kms_cursor_legacy@cursorb-vs-flipb-atomic-transitions.html

  * igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size:
    - shard-glk10:        NOTRUN -> [FAIL][218] ([i915#15804])
   [218]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-glk10/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html

  * igt@kms_cursor_legacy@modeset-atomic-cursor-hotspot:
    - shard-tglu:         NOTRUN -> [SKIP][219] ([i915#9067])
   [219]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-5/igt@kms_cursor_legacy@modeset-atomic-cursor-hotspot.html

  * igt@kms_dirtyfb@drrs-dirtyfb-ioctl:
    - shard-rkl:          NOTRUN -> [SKIP][220] ([i915#9723])
   [220]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-5/igt@kms_dirtyfb@drrs-dirtyfb-ioctl.html

  * igt@kms_dither@fb-8bpc-vs-panel-6bpc@pipe-a-hdmi-a-2:
    - shard-rkl:          NOTRUN -> [SKIP][221] ([i915#3804])
   [221]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-4/igt@kms_dither@fb-8bpc-vs-panel-6bpc@pipe-a-hdmi-a-2.html

  * igt@kms_dp_link_training@non-uhbr-sst:
    - shard-rkl:          NOTRUN -> [SKIP][222] ([i915#13749])
   [222]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-7/igt@kms_dp_link_training@non-uhbr-sst.html

  * igt@kms_dp_linktrain_fallback@dp-fallback:
    - shard-rkl:          NOTRUN -> [SKIP][223] ([i915#13707])
   [223]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-3/igt@kms_dp_linktrain_fallback@dp-fallback.html

  * igt@kms_dp_linktrain_fallback@dsc-fallback:
    - shard-tglu-1:       NOTRUN -> [SKIP][224] ([i915#13707])
   [224]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-1/igt@kms_dp_linktrain_fallback@dsc-fallback.html

  * igt@kms_dsc@dsc-fractional-bpp-bigjoiner:
    - shard-dg1:          NOTRUN -> [SKIP][225] ([i915#16361]) +1 other test skip
   [225]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-12/igt@kms_dsc@dsc-fractional-bpp-bigjoiner.html
    - shard-tglu:         NOTRUN -> [SKIP][226] ([i915#16361]) +3 other tests skip
   [226]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-9/igt@kms_dsc@dsc-fractional-bpp-bigjoiner.html
    - shard-mtlp:         NOTRUN -> [SKIP][227] ([i915#16361]) +2 other tests skip
   [227]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-7/igt@kms_dsc@dsc-fractional-bpp-bigjoiner.html

  * igt@kms_dsc@dsc-with-bpc-bigjoiner:
    - shard-tglu-1:       NOTRUN -> [SKIP][228] ([i915#16361]) +2 other tests skip
   [228]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-1/igt@kms_dsc@dsc-with-bpc-bigjoiner.html

  * igt@kms_dsc@dsc-with-bpc-formats-bigjoiner:
    - shard-dg2:          NOTRUN -> [SKIP][229] ([i915#16361]) +2 other tests skip
   [229]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-1/igt@kms_dsc@dsc-with-bpc-formats-bigjoiner.html

  * igt@kms_dsc@dsc-with-output-formats-bigjoiner:
    - shard-rkl:          NOTRUN -> [SKIP][230] ([i915#16361]) +3 other tests skip
   [230]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-1/igt@kms_dsc@dsc-with-output-formats-bigjoiner.html

  * igt@kms_fbcon_fbt@psr:
    - shard-tglu:         NOTRUN -> [SKIP][231] ([i915#3469])
   [231]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-9/igt@kms_fbcon_fbt@psr.html

  * igt@kms_feature_discovery@display-3x:
    - shard-rkl:          NOTRUN -> [SKIP][232] ([i915#16081])
   [232]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-5/igt@kms_feature_discovery@display-3x.html

  * igt@kms_feature_discovery@dsc:
    - shard-rkl:          NOTRUN -> [SKIP][233] ([i915#16600])
   [233]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-1/igt@kms_feature_discovery@dsc.html
    - shard-dg1:          NOTRUN -> [SKIP][234] ([i915#16600])
   [234]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-18/igt@kms_feature_discovery@dsc.html

  * igt@kms_feature_discovery@psr1:
    - shard-rkl:          NOTRUN -> [SKIP][235] ([i915#658])
   [235]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-4/igt@kms_feature_discovery@psr1.html
    - shard-tglu-1:       NOTRUN -> [SKIP][236] ([i915#658])
   [236]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-1/igt@kms_feature_discovery@psr1.html

  * igt@kms_fence_pin_leak:
    - shard-dg2:          NOTRUN -> [SKIP][237] ([i915#4881])
   [237]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-3/igt@kms_fence_pin_leak.html

  * igt@kms_flip@2x-blocking-absolute-wf_vblank:
    - shard-mtlp:         NOTRUN -> [SKIP][238] ([i915#3637] / [i915#9934]) +3 other tests skip
   [238]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-4/igt@kms_flip@2x-blocking-absolute-wf_vblank.html

  * igt@kms_flip@2x-flip-vs-dpms-on-nop-interruptible:
    - shard-tglu:         NOTRUN -> [SKIP][239] ([i915#9934])
   [239]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-7/igt@kms_flip@2x-flip-vs-dpms-on-nop-interruptible.html
    - shard-mtlp:         NOTRUN -> [SKIP][240] ([i915#9934])
   [240]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-1/igt@kms_flip@2x-flip-vs-dpms-on-nop-interruptible.html

  * igt@kms_flip@2x-flip-vs-panning-vs-hang:
    - shard-tglu-1:       NOTRUN -> [SKIP][241] ([i915#3637] / [i915#9934]) +5 other tests skip
   [241]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-1/igt@kms_flip@2x-flip-vs-panning-vs-hang.html

  * igt@kms_flip@2x-modeset-vs-vblank-race:
    - shard-rkl:          NOTRUN -> [SKIP][242] ([i915#9934]) +17 other tests skip
   [242]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-7/igt@kms_flip@2x-modeset-vs-vblank-race.html

  * igt@kms_flip@2x-plain-flip-ts-check:
    - shard-tglu:         NOTRUN -> [SKIP][243] ([i915#3637] / [i915#9934]) +3 other tests skip
   [243]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-6/igt@kms_flip@2x-plain-flip-ts-check.html

  * igt@kms_flip@2x-single-buffer-flip-vs-dpms-off-vs-modeset-interruptible:
    - shard-dg2:          NOTRUN -> [SKIP][244] ([i915#9934]) +5 other tests skip
   [244]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-7/igt@kms_flip@2x-single-buffer-flip-vs-dpms-off-vs-modeset-interruptible.html
    - shard-dg1:          NOTRUN -> [SKIP][245] ([i915#9934]) +6 other tests skip
   [245]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-15/igt@kms_flip@2x-single-buffer-flip-vs-dpms-off-vs-modeset-interruptible.html

  * igt@kms_flip@flip-vs-expired-vblank-interruptible:
    - shard-rkl:          [PASS][246] -> [FAIL][247] ([i915#13027]) +1 other test fail
   [246]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-7/igt@kms_flip@flip-vs-expired-vblank-interruptible.html
   [247]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-1/igt@kms_flip@flip-vs-expired-vblank-interruptible.html

  * igt@kms_flip@flip-vs-expired-vblank-interruptible@b-edp1:
    - shard-mtlp:         [PASS][248] -> [FAIL][249] ([i915#13027]) +1 other test fail
   [248]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-mtlp-6/igt@kms_flip@flip-vs-expired-vblank-interruptible@b-edp1.html
   [249]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-1/igt@kms_flip@flip-vs-expired-vblank-interruptible@b-edp1.html

  * igt@kms_flip@flip-vs-panning:
    - shard-dg1:          [PASS][250] -> [DMESG-WARN][251] ([i915#4423])
   [250]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-dg1-19/igt@kms_flip@flip-vs-panning.html
   [251]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-14/igt@kms_flip@flip-vs-panning.html

  * igt@kms_flip@flip-vs-suspend:
    - shard-rkl:          [PASS][252] -> [INCOMPLETE][253] ([i915#16276] / [i915#6113]) +1 other test incomplete
   [252]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-3/igt@kms_flip@flip-vs-suspend.html
   [253]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-3/igt@kms_flip@flip-vs-suspend.html

  * igt@kms_flip_scaled_crc@flip-32bpp-4tile-to-32bpp-4tiledg2rcccs-downscaling:
    - shard-dg1:          NOTRUN -> [SKIP][254] ([i915#15643]) +4 other tests skip
   [254]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-13/igt@kms_flip_scaled_crc@flip-32bpp-4tile-to-32bpp-4tiledg2rcccs-downscaling.html

  * igt@kms_flip_scaled_crc@flip-32bpp-xtile-to-64bpp-xtile-downscaling@pipe-a-default-mode:
    - shard-mtlp:         NOTRUN -> [SKIP][255] ([i915#3555] / [i915#8810] / [i915#8813]) +3 other tests skip
   [255]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-3/igt@kms_flip_scaled_crc@flip-32bpp-xtile-to-64bpp-xtile-downscaling@pipe-a-default-mode.html

  * igt@kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-downscaling:
    - shard-mtlp:         NOTRUN -> [SKIP][256] ([i915#15643]) +3 other tests skip
   [256]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-6/igt@kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-downscaling.html
    - shard-dg2:          NOTRUN -> [SKIP][257] ([i915#15643]) +2 other tests skip
   [257]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-6/igt@kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-downscaling.html

  * igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-16bpp-4tile-upscaling:
    - shard-tglu:         NOTRUN -> [SKIP][258] ([i915#15643]) +2 other tests skip
   [258]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-10/igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-16bpp-4tile-upscaling.html

  * igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tile-upscaling:
    - shard-rkl:          NOTRUN -> [SKIP][259] ([i915#15643]) +8 other tests skip
   [259]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-2/igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tile-upscaling.html

  * igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tiledg2rcccs-upscaling:
    - shard-tglu-1:       NOTRUN -> [SKIP][260] ([i915#15643]) +1 other test skip
   [260]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-1/igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tiledg2rcccs-upscaling.html

  * igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-draw-mmap-wc:
    - shard-rkl:          NOTRUN -> [SKIP][261] ([i915#1825]) +11 other tests skip
   [261]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-3/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-draw-mmap-wc.html

  * igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-pwrite:
    - shard-mtlp:         NOTRUN -> [SKIP][262] ([i915#15991] / [i915#1825]) +18 other tests skip
   [262]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-1/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-pwrite.html

  * igt@kms_frontbuffer_tracking@fbchdr-1p-offscreen-pri-shrfb-draw-render:
    - shard-dg2:          [PASS][263] -> [SKIP][264] ([i915#15989])
   [263]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-dg2-10/igt@kms_frontbuffer_tracking@fbchdr-1p-offscreen-pri-shrfb-draw-render.html
   [264]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-5/igt@kms_frontbuffer_tracking@fbchdr-1p-offscreen-pri-shrfb-draw-render.html

  * igt@kms_frontbuffer_tracking@fbchdr-1p-primscrn-pri-indfb-draw-blt:
    - shard-rkl:          [PASS][265] -> [SKIP][266] ([i915#15989]) +5 other tests skip
   [265]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-1/igt@kms_frontbuffer_tracking@fbchdr-1p-primscrn-pri-indfb-draw-blt.html
   [266]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-8/igt@kms_frontbuffer_tracking@fbchdr-1p-primscrn-pri-indfb-draw-blt.html

  * igt@kms_frontbuffer_tracking@fbchdr-1p-primscrn-pri-indfb-draw-mmap-gtt:
    - shard-dg1:          NOTRUN -> [SKIP][267] ([i915#15990]) +10 other tests skip
   [267]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-12/igt@kms_frontbuffer_tracking@fbchdr-1p-primscrn-pri-indfb-draw-mmap-gtt.html

  * igt@kms_frontbuffer_tracking@fbchdr-1p-primscrn-shrfb-plflip-blt:
    - shard-rkl:          NOTRUN -> [SKIP][268] ([i915#15989]) +27 other tests skip
   [268]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-8/igt@kms_frontbuffer_tracking@fbchdr-1p-primscrn-shrfb-plflip-blt.html

  * igt@kms_frontbuffer_tracking@fbchdr-1p-primscrn-spr-indfb-draw-blt:
    - shard-glk:          [PASS][269] -> [SKIP][270] +4 other tests skip
   [269]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-glk8/igt@kms_frontbuffer_tracking@fbchdr-1p-primscrn-spr-indfb-draw-blt.html
   [270]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-glk9/igt@kms_frontbuffer_tracking@fbchdr-1p-primscrn-spr-indfb-draw-blt.html

  * igt@kms_frontbuffer_tracking@fbchdr-2p-primscrn-cur-indfb-draw-pwrite:
    - shard-rkl:          NOTRUN -> [SKIP][271] +124 other tests skip
   [271]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-2/igt@kms_frontbuffer_tracking@fbchdr-2p-primscrn-cur-indfb-draw-pwrite.html

  * igt@kms_frontbuffer_tracking@fbchdr-2p-primscrn-indfb-msflip-blt:
    - shard-mtlp:         NOTRUN -> [SKIP][272] ([i915#15991]) +29 other tests skip
   [272]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-7/igt@kms_frontbuffer_tracking@fbchdr-2p-primscrn-indfb-msflip-blt.html

  * igt@kms_frontbuffer_tracking@fbchdr-rgb101010-draw-blt:
    - shard-dg2:          NOTRUN -> [SKIP][273] ([i915#15989]) +7 other tests skip
   [273]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-6/igt@kms_frontbuffer_tracking@fbchdr-rgb101010-draw-blt.html

  * igt@kms_frontbuffer_tracking@fbchdr-tiling-linear:
    - shard-tglu-1:       NOTRUN -> [SKIP][274] ([i915#15989]) +8 other tests skip
   [274]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-1/igt@kms_frontbuffer_tracking@fbchdr-tiling-linear.html

  * igt@kms_frontbuffer_tracking@fbcpsr-1p-offscreen-pri-indfb-draw-mmap-wc:
    - shard-dg2:          NOTRUN -> [SKIP][275] ([i915#15104] / [i915#15990]) +1 other test skip
   [275]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-1/igt@kms_frontbuffer_tracking@fbcpsr-1p-offscreen-pri-indfb-draw-mmap-wc.html
    - shard-dg1:          NOTRUN -> [SKIP][276] ([i915#15104] / [i915#15990])
   [276]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-17/igt@kms_frontbuffer_tracking@fbcpsr-1p-offscreen-pri-indfb-draw-mmap-wc.html

  * igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-pri-shrfb-draw-mmap-gtt:
    - shard-dg2:          NOTRUN -> [SKIP][277] ([i915#15990] / [i915#8708]) +5 other tests skip
   [277]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-3/igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-pri-shrfb-draw-mmap-gtt.html

  * igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-spr-indfb-draw-mmap-gtt:
    - shard-tglu-1:       NOTRUN -> [SKIP][278] +45 other tests skip
   [278]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-1/igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-spr-indfb-draw-mmap-gtt.html

  * igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-spr-indfb-onoff:
    - shard-dg1:          NOTRUN -> [SKIP][279] +35 other tests skip
   [279]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-19/igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-spr-indfb-onoff.html

  * igt@kms_frontbuffer_tracking@fbcpsr-rgb101010-draw-render:
    - shard-tglu-1:       NOTRUN -> [SKIP][280] ([i915#15102]) +23 other tests skip
   [280]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-1/igt@kms_frontbuffer_tracking@fbcpsr-rgb101010-draw-render.html

  * igt@kms_frontbuffer_tracking@fbcpsrhdr-1p-indfb-fliptrack-mmap-gtt:
    - shard-mtlp:         NOTRUN -> [SKIP][281] ([i915#15990]) +8 other tests skip
   [281]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-7/igt@kms_frontbuffer_tracking@fbcpsrhdr-1p-indfb-fliptrack-mmap-gtt.html

  * igt@kms_frontbuffer_tracking@fbcpsrhdr-1p-offscreen-pri-indfb-draw-mmap-gtt:
    - shard-rkl:          NOTRUN -> [SKIP][282] ([i915#14544] / [i915#15102]) +1 other test skip
   [282]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-6/igt@kms_frontbuffer_tracking@fbcpsrhdr-1p-offscreen-pri-indfb-draw-mmap-gtt.html

  * igt@kms_frontbuffer_tracking@fbcpsrhdr-1p-primscrn-spr-indfb-move:
    - shard-dg2:          NOTRUN -> [SKIP][283] ([i915#15102]) +18 other tests skip
   [283]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-1/igt@kms_frontbuffer_tracking@fbcpsrhdr-1p-primscrn-spr-indfb-move.html

  * igt@kms_frontbuffer_tracking@fbcpsrhdr-2p-primscrn-cur-indfb-draw-mmap-wc:
    - shard-glk10:        NOTRUN -> [SKIP][284] +201 other tests skip
   [284]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-glk10/igt@kms_frontbuffer_tracking@fbcpsrhdr-2p-primscrn-cur-indfb-draw-mmap-wc.html

  * igt@kms_frontbuffer_tracking@fbcpsrhdr-2p-scndscrn-pri-indfb-draw-mmap-wc:
    - shard-dg2:          NOTRUN -> [SKIP][285] ([i915#15990]) +10 other tests skip
   [285]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-8/igt@kms_frontbuffer_tracking@fbcpsrhdr-2p-scndscrn-pri-indfb-draw-mmap-wc.html

  * igt@kms_frontbuffer_tracking@fbcpsrhdr-tiling-4:
    - shard-rkl:          NOTRUN -> [SKIP][286] ([i915#5439])
   [286]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-1/igt@kms_frontbuffer_tracking@fbcpsrhdr-tiling-4.html

  * igt@kms_frontbuffer_tracking@hdr-1p-primscrn-shrfb-pgflip-blt:
    - shard-tglu:         NOTRUN -> [SKIP][287] ([i915#15989]) +14 other tests skip
   [287]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-3/igt@kms_frontbuffer_tracking@hdr-1p-primscrn-shrfb-pgflip-blt.html

  * igt@kms_frontbuffer_tracking@hdr-1p-primscrn-shrfb-plflip-blt:
    - shard-dg1:          NOTRUN -> [SKIP][288] ([i915#15989]) +11 other tests skip
   [288]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-13/igt@kms_frontbuffer_tracking@hdr-1p-primscrn-shrfb-plflip-blt.html

  * igt@kms_frontbuffer_tracking@hdr-2p-scndscrn-cur-indfb-draw-blt:
    - shard-tglu:         NOTRUN -> [SKIP][289] +63 other tests skip
   [289]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-4/igt@kms_frontbuffer_tracking@hdr-2p-scndscrn-cur-indfb-draw-blt.html

  * igt@kms_frontbuffer_tracking@hdr-2p-scndscrn-pri-indfb-draw-mmap-wc:
    - shard-rkl:          NOTRUN -> [SKIP][290] ([i915#14544]) +4 other tests skip
   [290]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-6/igt@kms_frontbuffer_tracking@hdr-2p-scndscrn-pri-indfb-draw-mmap-wc.html

  * igt@kms_frontbuffer_tracking@psr-1p-offscreen-pri-indfb-draw-mmap-cpu:
    - shard-dg1:          NOTRUN -> [SKIP][291] ([i915#15102]) +17 other tests skip
   [291]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-15/igt@kms_frontbuffer_tracking@psr-1p-offscreen-pri-indfb-draw-mmap-cpu.html

  * igt@kms_frontbuffer_tracking@psr-1p-offscreen-pri-shrfb-draw-blt:
    - shard-tglu:         NOTRUN -> [SKIP][292] ([i915#15102]) +23 other tests skip
   [292]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-6/igt@kms_frontbuffer_tracking@psr-1p-offscreen-pri-shrfb-draw-blt.html

  * igt@kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-move:
    - shard-rkl:          NOTRUN -> [SKIP][293] ([i915#15102] / [i915#3023]) +26 other tests skip
   [293]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-8/igt@kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-move.html

  * igt@kms_frontbuffer_tracking@psr-1p-primscrn-pri-indfb-draw-mmap-gtt:
    - shard-mtlp:         NOTRUN -> [SKIP][294] ([i915#15990] / [i915#8708]) +4 other tests skip
   [294]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-3/igt@kms_frontbuffer_tracking@psr-1p-primscrn-pri-indfb-draw-mmap-gtt.html

  * igt@kms_frontbuffer_tracking@psr-2p-primscrn-pri-shrfb-draw-render:
    - shard-dg2:          NOTRUN -> [SKIP][295] ([i915#15991] / [i915#5354]) +16 other tests skip
   [295]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-3/igt@kms_frontbuffer_tracking@psr-2p-primscrn-pri-shrfb-draw-render.html

  * igt@kms_frontbuffer_tracking@psr-rgb101010-draw-pwrite:
    - shard-rkl:          NOTRUN -> [SKIP][296] ([i915#14544] / [i915#15102] / [i915#3023])
   [296]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-6/igt@kms_frontbuffer_tracking@psr-rgb101010-draw-pwrite.html

  * igt@kms_frontbuffer_tracking@psr-rgb565-draw-mmap-wc:
    - shard-dg1:          NOTRUN -> [SKIP][297] ([i915#15990] / [i915#8708]) +5 other tests skip
   [297]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-19/igt@kms_frontbuffer_tracking@psr-rgb565-draw-mmap-wc.html

  * igt@kms_frontbuffer_tracking@psrhdr-1p-primscrn-pri-indfb-draw-render:
    - shard-mtlp:         NOTRUN -> [SKIP][298] ([i915#15989]) +21 other tests skip
   [298]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-7/igt@kms_frontbuffer_tracking@psrhdr-1p-primscrn-pri-indfb-draw-render.html

  * igt@kms_frontbuffer_tracking@psrhdr-1p-primscrn-spr-indfb-move:
    - shard-rkl:          NOTRUN -> [SKIP][299] ([i915#15102]) +44 other tests skip
   [299]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-1/igt@kms_frontbuffer_tracking@psrhdr-1p-primscrn-spr-indfb-move.html

  * igt@kms_frontbuffer_tracking@psrhdr-2p-scndscrn-pri-shrfb-draw-render:
    - shard-dg2:          NOTRUN -> [SKIP][300] ([i915#15991]) +15 other tests skip
   [300]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-4/igt@kms_frontbuffer_tracking@psrhdr-2p-scndscrn-pri-shrfb-draw-render.html

  * igt@kms_hdr@brightness-with-hdr:
    - shard-mtlp:         NOTRUN -> [SKIP][301] ([i915#12713] / [i915#16490])
   [301]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-4/igt@kms_hdr@brightness-with-hdr.html

  * igt@kms_hdr@invalid-hdr:
    - shard-dg2:          NOTRUN -> [SKIP][302] ([i915#16518] / [i915#3555] / [i915#8228])
   [302]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-6/igt@kms_hdr@invalid-hdr.html
    - shard-dg1:          NOTRUN -> [SKIP][303] ([i915#3555] / [i915#8228])
   [303]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-19/igt@kms_hdr@invalid-hdr.html
    - shard-tglu:         NOTRUN -> [SKIP][304] ([i915#3555] / [i915#8228])
   [304]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-10/igt@kms_hdr@invalid-hdr.html

  * igt@kms_hdr@invalid-metadata-sizes:
    - shard-rkl:          NOTRUN -> [SKIP][305] ([i915#3555] / [i915#8228]) +1 other test skip
   [305]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-7/igt@kms_hdr@invalid-metadata-sizes.html

  * igt@kms_joiner@basic-force-big-joiner:
    - shard-tglu-1:       NOTRUN -> [SKIP][306] ([i915#15459])
   [306]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-1/igt@kms_joiner@basic-force-big-joiner.html

  * igt@kms_joiner@basic-force-ultra-joiner:
    - shard-rkl:          NOTRUN -> [SKIP][307] ([i915#15458])
   [307]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-7/igt@kms_joiner@basic-force-ultra-joiner.html

  * igt@kms_joiner@basic-max-non-joiner:
    - shard-rkl:          NOTRUN -> [SKIP][308] ([i915#13688])
   [308]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-2/igt@kms_joiner@basic-max-non-joiner.html

  * igt@kms_joiner@invalid-modeset-force-ultra-joiner:
    - shard-mtlp:         NOTRUN -> [SKIP][309] ([i915#15458])
   [309]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-1/igt@kms_joiner@invalid-modeset-force-ultra-joiner.html

  * igt@kms_panel_fitting@atomic-fastset:
    - shard-tglu:         NOTRUN -> [SKIP][310] ([i915#6301])
   [310]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-9/igt@kms_panel_fitting@atomic-fastset.html

  * igt@kms_pipe_stress@stress-xrgb8888-xtiled:
    - shard-glk11:        NOTRUN -> [DMESG-WARN][311] ([i915#118])
   [311]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-glk11/igt@kms_pipe_stress@stress-xrgb8888-xtiled.html

  * igt@kms_pipe_stress@stress-xrgb8888-yftiled:
    - shard-glk:          NOTRUN -> [DMESG-FAIL][312] ([i915#118] / [i915#16396])
   [312]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-glk4/igt@kms_pipe_stress@stress-xrgb8888-yftiled.html

  * igt@kms_plane@pixel-format-4-tiled-bmg-ccs-modifier:
    - shard-mtlp:         NOTRUN -> [SKIP][313] ([i915#15709]) +2 other tests skip
   [313]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-5/igt@kms_plane@pixel-format-4-tiled-bmg-ccs-modifier.html

  * igt@kms_plane@pixel-format-4-tiled-dg2-rc-ccs-cc-modifier@pipe-a-plane-5:
    - shard-dg2:          NOTRUN -> [SKIP][314] ([i915#16386]) +1 other test skip
   [314]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-8/igt@kms_plane@pixel-format-4-tiled-dg2-rc-ccs-cc-modifier@pipe-a-plane-5.html

  * igt@kms_plane@pixel-format-4-tiled-mtl-mc-ccs-modifier:
    - shard-tglu-1:       NOTRUN -> [SKIP][315] ([i915#15709]) +1 other test skip
   [315]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-1/igt@kms_plane@pixel-format-4-tiled-mtl-mc-ccs-modifier.html

  * igt@kms_plane@pixel-format-4-tiled-mtl-rc-ccs-cc-modifier:
    - shard-dg2:          NOTRUN -> [SKIP][316] ([i915#15709]) +1 other test skip
   [316]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-5/igt@kms_plane@pixel-format-4-tiled-mtl-rc-ccs-cc-modifier.html
    - shard-dg1:          NOTRUN -> [SKIP][317] ([i915#15709]) +1 other test skip
   [317]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-18/igt@kms_plane@pixel-format-4-tiled-mtl-rc-ccs-cc-modifier.html
    - shard-tglu:         NOTRUN -> [SKIP][318] ([i915#15709]) +1 other test skip
   [318]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-9/igt@kms_plane@pixel-format-4-tiled-mtl-rc-ccs-cc-modifier.html

  * igt@kms_plane@pixel-format-4-tiled-mtl-rc-ccs-cc-modifier@pipe-a-plane-5:
    - shard-mtlp:         NOTRUN -> [SKIP][319] ([i915#16386]) +1 other test skip
   [319]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-2/igt@kms_plane@pixel-format-4-tiled-mtl-rc-ccs-cc-modifier@pipe-a-plane-5.html

  * igt@kms_plane@pixel-format-y-tiled-gen12-mc-ccs-modifier:
    - shard-rkl:          NOTRUN -> [SKIP][320] ([i915#15709]) +6 other tests skip
   [320]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-7/igt@kms_plane@pixel-format-y-tiled-gen12-mc-ccs-modifier.html

  * igt@kms_plane@pixel-format-y-tiled-gen12-rc-ccs-cc-modifier@pipe-b-plane-7:
    - shard-dg1:          NOTRUN -> [SKIP][321] ([i915#16386]) +1 other test skip
   [321]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-15/igt@kms_plane@pixel-format-y-tiled-gen12-rc-ccs-cc-modifier@pipe-b-plane-7.html

  * igt@kms_plane@pixel-format-y-tiled-gen12-rc-ccs-modifier@pipe-b-plane-5:
    - shard-rkl:          NOTRUN -> [SKIP][322] ([i915#16386]) +3 other tests skip
   [322]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-7/igt@kms_plane@pixel-format-y-tiled-gen12-rc-ccs-modifier@pipe-b-plane-5.html

  * igt@kms_plane@planar-pixel-format-settings@nv12-tile4-src-y:
    - shard-dg2:          NOTRUN -> [SKIP][323] ([i915#16112])
   [323]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-7/igt@kms_plane@planar-pixel-format-settings@nv12-tile4-src-y.html
    - shard-rkl:          NOTRUN -> [SKIP][324] ([i915#16112])
   [324]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-5/igt@kms_plane@planar-pixel-format-settings@nv12-tile4-src-y.html
    - shard-dg1:          NOTRUN -> [SKIP][325] ([i915#16112])
   [325]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-13/igt@kms_plane@planar-pixel-format-settings@nv12-tile4-src-y.html
    - shard-tglu:         NOTRUN -> [SKIP][326] ([i915#16112])
   [326]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-9/igt@kms_plane@planar-pixel-format-settings@nv12-tile4-src-y.html
    - shard-mtlp:         NOTRUN -> [SKIP][327] ([i915#16112])
   [327]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-3/igt@kms_plane@planar-pixel-format-settings@nv12-tile4-src-y.html

  * igt@kms_plane_lowres@tiling-none@pipe-b-edp-1:
    - shard-mtlp:         NOTRUN -> [SKIP][328] ([i915#10226] / [i915#11614] / [i915#3582]) +2 other tests skip
   [328]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-2/igt@kms_plane_lowres@tiling-none@pipe-b-edp-1.html

  * igt@kms_plane_lowres@tiling-none@pipe-d-edp-1:
    - shard-mtlp:         NOTRUN -> [SKIP][329] ([i915#11614] / [i915#3582]) +1 other test skip
   [329]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-2/igt@kms_plane_lowres@tiling-none@pipe-d-edp-1.html

  * igt@kms_plane_multiple@2x-tiling-y:
    - shard-rkl:          NOTRUN -> [SKIP][330] ([i915#13958]) +1 other test skip
   [330]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-1/igt@kms_plane_multiple@2x-tiling-y.html

  * igt@kms_plane_multiple@2x-tiling-yf:
    - shard-dg1:          NOTRUN -> [SKIP][331] ([i915#13958])
   [331]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-17/igt@kms_plane_multiple@2x-tiling-yf.html
    - shard-tglu:         NOTRUN -> [SKIP][332] ([i915#13958])
   [332]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-10/igt@kms_plane_multiple@2x-tiling-yf.html
    - shard-mtlp:         NOTRUN -> [SKIP][333] ([i915#13958])
   [333]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-2/igt@kms_plane_multiple@2x-tiling-yf.html
    - shard-dg2:          NOTRUN -> [SKIP][334] ([i915#13958])
   [334]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-3/igt@kms_plane_multiple@2x-tiling-yf.html

  * igt@kms_plane_multiple@tiling-4:
    - shard-rkl:          NOTRUN -> [SKIP][335] ([i915#14259])
   [335]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-2/igt@kms_plane_multiple@tiling-4.html
    - shard-dg1:          NOTRUN -> [SKIP][336] ([i915#14259])
   [336]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-14/igt@kms_plane_multiple@tiling-4.html
    - shard-tglu:         NOTRUN -> [SKIP][337] ([i915#14259])
   [337]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-6/igt@kms_plane_multiple@tiling-4.html

  * igt@kms_plane_scaling@plane-downscale-factor-0-75-with-rotation@pipe-a:
    - shard-tglu-1:       NOTRUN -> [SKIP][338] ([i915#15329]) +9 other tests skip
   [338]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-1/igt@kms_plane_scaling@plane-downscale-factor-0-75-with-rotation@pipe-a.html

  * igt@kms_pm_backlight@basic-brightness:
    - shard-dg2:          NOTRUN -> [SKIP][339] ([i915#12343] / [i915#5354])
   [339]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-1/igt@kms_pm_backlight@basic-brightness.html

  * igt@kms_pm_backlight@fade-with-dpms:
    - shard-rkl:          NOTRUN -> [SKIP][340] ([i915#12343] / [i915#5354]) +1 other test skip
   [340]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-8/igt@kms_pm_backlight@fade-with-dpms.html
    - shard-dg1:          NOTRUN -> [SKIP][341] ([i915#12343] / [i915#5354])
   [341]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-15/igt@kms_pm_backlight@fade-with-dpms.html

  * igt@kms_pm_dc@dc5-pageflip-negative:
    - shard-tglu-1:       NOTRUN -> [SKIP][342] ([i915#9685])
   [342]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-1/igt@kms_pm_dc@dc5-pageflip-negative.html

  * igt@kms_pm_dc@dc5-psr:
    - shard-rkl:          NOTRUN -> [SKIP][343] ([i915#15948])
   [343]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-3/igt@kms_pm_dc@dc5-psr.html

  * igt@kms_pm_dc@dc6-dpms:
    - shard-dg2:          NOTRUN -> [SKIP][344] ([i915#15751])
   [344]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-5/igt@kms_pm_dc@dc6-dpms.html
    - shard-rkl:          NOTRUN -> [FAIL][345] ([i915#16479])
   [345]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-7/igt@kms_pm_dc@dc6-dpms.html
    - shard-dg1:          NOTRUN -> [SKIP][346] ([i915#3361])
   [346]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-18/igt@kms_pm_dc@dc6-dpms.html
    - shard-tglu:         NOTRUN -> [FAIL][347] ([i915#16479])
   [347]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-9/igt@kms_pm_dc@dc6-dpms.html

  * igt@kms_pm_lpsp@kms-lpsp:
    - shard-rkl:          NOTRUN -> [SKIP][348] ([i915#9340])
   [348]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-7/igt@kms_pm_lpsp@kms-lpsp.html
    - shard-dg1:          NOTRUN -> [SKIP][349] ([i915#9340])
   [349]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-18/igt@kms_pm_lpsp@kms-lpsp.html
    - shard-tglu:         NOTRUN -> [SKIP][350] ([i915#3828])
   [350]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-2/igt@kms_pm_lpsp@kms-lpsp.html

  * igt@kms_pm_lpsp@screens-disabled:
    - shard-rkl:          NOTRUN -> [SKIP][351] ([i915#8430])
   [351]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-5/igt@kms_pm_lpsp@screens-disabled.html

  * igt@kms_pm_rpm@modeset-lpsp:
    - shard-rkl:          [PASS][352] -> [SKIP][353] ([i915#15073]) +1 other test skip
   [352]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-2/igt@kms_pm_rpm@modeset-lpsp.html
   [353]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-7/igt@kms_pm_rpm@modeset-lpsp.html

  * igt@kms_pm_rpm@modeset-lpsp-stress:
    - shard-dg2:          [PASS][354] -> [SKIP][355] ([i915#15073])
   [354]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-dg2-4/igt@kms_pm_rpm@modeset-lpsp-stress.html
   [355]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-1/igt@kms_pm_rpm@modeset-lpsp-stress.html
    - shard-dg1:          [PASS][356] -> [SKIP][357] ([i915#15073])
   [356]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-dg1-14/igt@kms_pm_rpm@modeset-lpsp-stress.html
   [357]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-17/igt@kms_pm_rpm@modeset-lpsp-stress.html

  * igt@kms_pm_rpm@modeset-lpsp-stress-no-wait:
    - shard-rkl:          [PASS][358] -> [SKIP][359] ([i915#14544] / [i915#15073])
   [358]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-8/igt@kms_pm_rpm@modeset-lpsp-stress-no-wait.html
   [359]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-6/igt@kms_pm_rpm@modeset-lpsp-stress-no-wait.html

  * igt@kms_pm_rpm@system-suspend-idle:
    - shard-dg2:          [PASS][360] -> [INCOMPLETE][361] ([i915#14419])
   [360]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-dg2-8/igt@kms_pm_rpm@system-suspend-idle.html
   [361]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-3/igt@kms_pm_rpm@system-suspend-idle.html

  * igt@kms_prime@basic-modeset-hybrid:
    - shard-rkl:          NOTRUN -> [SKIP][362] ([i915#6524])
   [362]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-1/igt@kms_prime@basic-modeset-hybrid.html

  * igt@kms_psr2_sf@fbc-pr-cursor-plane-move-continuous-exceed-fully-sf:
    - shard-dg2:          NOTRUN -> [SKIP][363] ([i915#11520]) +2 other tests skip
   [363]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-6/igt@kms_psr2_sf@fbc-pr-cursor-plane-move-continuous-exceed-fully-sf.html

  * igt@kms_psr2_sf@fbc-pr-overlay-primary-update-sf-dmg-area:
    - shard-rkl:          NOTRUN -> [SKIP][364] ([i915#11520]) +10 other tests skip
   [364]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-2/igt@kms_psr2_sf@fbc-pr-overlay-primary-update-sf-dmg-area.html

  * igt@kms_psr2_sf@fbc-pr-primary-plane-update-sf-dmg-area:
    - shard-tglu:         NOTRUN -> [SKIP][365] ([i915#11520]) +3 other tests skip
   [365]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-6/igt@kms_psr2_sf@fbc-pr-primary-plane-update-sf-dmg-area.html

  * igt@kms_psr2_sf@fbc-psr2-overlay-plane-move-continuous-exceed-fully-sf:
    - shard-glk10:        NOTRUN -> [SKIP][366] ([i915#11520]) +5 other tests skip
   [366]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-glk10/igt@kms_psr2_sf@fbc-psr2-overlay-plane-move-continuous-exceed-fully-sf.html

  * igt@kms_psr2_sf@fbc-psr2-overlay-primary-update-sf-dmg-area:
    - shard-glk11:        NOTRUN -> [SKIP][367] ([i915#11520]) +6 other tests skip
   [367]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-glk11/igt@kms_psr2_sf@fbc-psr2-overlay-primary-update-sf-dmg-area.html

  * igt@kms_psr2_sf@fbc-psr2-overlay-primary-update-sf-dmg-area@pipe-a-edp-1:
    - shard-mtlp:         NOTRUN -> [SKIP][368] ([i915#9808])
   [368]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-2/igt@kms_psr2_sf@fbc-psr2-overlay-primary-update-sf-dmg-area@pipe-a-edp-1.html

  * igt@kms_psr2_sf@fbc-psr2-primary-plane-update-sf-dmg-area:
    - shard-glk:          NOTRUN -> [SKIP][369] ([i915#11520]) +9 other tests skip
   [369]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-glk6/igt@kms_psr2_sf@fbc-psr2-primary-plane-update-sf-dmg-area.html

  * igt@kms_psr2_sf@pr-overlay-plane-move-continuous-exceed-fully-sf:
    - shard-mtlp:         NOTRUN -> [SKIP][370] ([i915#12316]) +4 other tests skip
   [370]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-4/igt@kms_psr2_sf@pr-overlay-plane-move-continuous-exceed-fully-sf.html

  * igt@kms_psr2_sf@pr-overlay-plane-move-continuous-exceed-sf:
    - shard-snb:          NOTRUN -> [SKIP][371] ([i915#11520]) +2 other tests skip
   [371]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-snb5/igt@kms_psr2_sf@pr-overlay-plane-move-continuous-exceed-sf.html
    - shard-dg1:          NOTRUN -> [SKIP][372] ([i915#11520]) +2 other tests skip
   [372]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-17/igt@kms_psr2_sf@pr-overlay-plane-move-continuous-exceed-sf.html

  * igt@kms_psr2_sf@psr2-overlay-plane-move-continuous-sf:
    - shard-tglu-1:       NOTRUN -> [SKIP][373] ([i915#11520]) +5 other tests skip
   [373]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-1/igt@kms_psr2_sf@psr2-overlay-plane-move-continuous-sf.html

  * igt@kms_psr2_su@page_flip-xrgb8888:
    - shard-rkl:          NOTRUN -> [SKIP][374] ([i915#9683]) +1 other test skip
   [374]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-7/igt@kms_psr2_su@page_flip-xrgb8888.html

  * igt@kms_psr@fbc-pr-basic:
    - shard-mtlp:         NOTRUN -> [SKIP][375] ([i915#9688]) +18 other tests skip
   [375]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-2/igt@kms_psr@fbc-pr-basic.html

  * igt@kms_psr@fbc-psr-no-drrs:
    - shard-tglu:         NOTRUN -> [SKIP][376] ([i915#9732]) +13 other tests skip
   [376]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-5/igt@kms_psr@fbc-psr-no-drrs.html

  * igt@kms_psr@fbc-psr-primary-page-flip:
    - shard-dg2:          NOTRUN -> [SKIP][377] ([i915#1072] / [i915#9732]) +13 other tests skip
   [377]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-3/igt@kms_psr@fbc-psr-primary-page-flip.html

  * igt@kms_psr@fbc-psr2-cursor-mmap-gtt:
    - shard-glk:          NOTRUN -> [SKIP][378] +486 other tests skip
   [378]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-glk9/igt@kms_psr@fbc-psr2-cursor-mmap-gtt.html

  * igt@kms_psr@pr-cursor-plane-onoff:
    - shard-rkl:          NOTRUN -> [SKIP][379] ([i915#1072] / [i915#9732]) +32 other tests skip
   [379]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-5/igt@kms_psr@pr-cursor-plane-onoff.html

  * igt@kms_psr@psr-sprite-render:
    - shard-dg1:          NOTRUN -> [SKIP][380] ([i915#1072] / [i915#9732]) +13 other tests skip
   [380]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-17/igt@kms_psr@psr-sprite-render.html

  * igt@kms_psr@psr2-sprite-mmap-cpu:
    - shard-tglu-1:       NOTRUN -> [SKIP][381] ([i915#9732]) +8 other tests skip
   [381]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-1/igt@kms_psr@psr2-sprite-mmap-cpu.html

  * igt@kms_psr@psr2-sprite-mmap-gtt:
    - shard-mtlp:         NOTRUN -> [SKIP][382] ([i915#4077] / [i915#9688]) +1 other test skip
   [382]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-5/igt@kms_psr@psr2-sprite-mmap-gtt.html

  * igt@kms_psr_stress_test@flip-primary-invalidate-overlay:
    - shard-rkl:          NOTRUN -> [SKIP][383] ([i915#15949]) +1 other test skip
   [383]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-7/igt@kms_psr_stress_test@flip-primary-invalidate-overlay.html

  * igt@kms_rotation_crc@primary-rotation-90:
    - shard-dg2:          NOTRUN -> [SKIP][384] ([i915#12755] / [i915#15867])
   [384]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-6/igt@kms_rotation_crc@primary-rotation-90.html

  * igt@kms_rotation_crc@primary-y-tiled-reflect-x-180:
    - shard-mtlp:         NOTRUN -> [SKIP][385] ([i915#5289])
   [385]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-4/igt@kms_rotation_crc@primary-y-tiled-reflect-x-180.html

  * igt@kms_rotation_crc@primary-yf-tiled-reflect-x-180:
    - shard-rkl:          NOTRUN -> [SKIP][386] ([i915#5289])
   [386]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-4/igt@kms_rotation_crc@primary-yf-tiled-reflect-x-180.html
    - shard-dg1:          NOTRUN -> [SKIP][387] ([i915#5289])
   [387]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-17/igt@kms_rotation_crc@primary-yf-tiled-reflect-x-180.html

  * igt@kms_rotation_crc@sprite-rotation-90:
    - shard-mtlp:         NOTRUN -> [SKIP][388] ([i915#12755] / [i915#15867])
   [388]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-3/igt@kms_rotation_crc@sprite-rotation-90.html

  * igt@kms_tiled_display@basic-test-pattern-with-chamelium:
    - shard-rkl:          NOTRUN -> [SKIP][389] ([i915#8623])
   [389]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-7/igt@kms_tiled_display@basic-test-pattern-with-chamelium.html

  * igt@kms_vrr@flip-basic:
    - shard-rkl:          NOTRUN -> [SKIP][390] ([i915#15243] / [i915#3555]) +1 other test skip
   [390]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-1/igt@kms_vrr@flip-basic.html

  * igt@kms_vrr@flip-basic-fastset:
    - shard-dg2:          NOTRUN -> [SKIP][391] ([i915#9906])
   [391]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-8/igt@kms_vrr@flip-basic-fastset.html
    - shard-rkl:          NOTRUN -> [SKIP][392] ([i915#14544] / [i915#9906])
   [392]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-6/igt@kms_vrr@flip-basic-fastset.html
    - shard-dg1:          NOTRUN -> [SKIP][393] ([i915#9906])
   [393]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-12/igt@kms_vrr@flip-basic-fastset.html
    - shard-tglu:         NOTRUN -> [SKIP][394] ([i915#9906])
   [394]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-4/igt@kms_vrr@flip-basic-fastset.html

  * igt@kms_vrr@flipline:
    - shard-rkl:          NOTRUN -> [SKIP][395] ([i915#14544] / [i915#15243] / [i915#3555])
   [395]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-6/igt@kms_vrr@flipline.html

  * igt@kms_vrr@negative-basic:
    - shard-tglu:         NOTRUN -> [SKIP][396] ([i915#3555] / [i915#9906])
   [396]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-6/igt@kms_vrr@negative-basic.html

  * igt@kms_vrr@seamless-rr-switch-drrs:
    - shard-tglu-1:       NOTRUN -> [SKIP][397] ([i915#9906])
   [397]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-1/igt@kms_vrr@seamless-rr-switch-drrs.html

  * igt@kms_vrr@seamless-rr-switch-vrr:
    - shard-mtlp:         NOTRUN -> [SKIP][398] ([i915#8808] / [i915#9906]) +1 other test skip
   [398]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-7/igt@kms_vrr@seamless-rr-switch-vrr.html

  * igt@perf@mi-rpc:
    - shard-rkl:          NOTRUN -> [SKIP][399] ([i915#2434])
   [399]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-1/igt@perf@mi-rpc.html

  * igt@perf_pmu@busy-double-start@vecs1:
    - shard-dg2:          NOTRUN -> [FAIL][400] ([i915#4349]) +4 other tests fail
   [400]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-4/igt@perf_pmu@busy-double-start@vecs1.html

  * igt@perf_pmu@module-unload:
    - shard-tglu:         NOTRUN -> [ABORT][401] ([i915#15778])
   [401]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-2/igt@perf_pmu@module-unload.html

  * igt@prime_udl@share-import-addfb:
    - shard-rkl:          NOTRUN -> [SKIP][402] ([i915#16420])
   [402]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-8/igt@prime_udl@share-import-addfb.html

  * igt@prime_vgem@basic-fence-read:
    - shard-rkl:          NOTRUN -> [SKIP][403] ([i915#14544] / [i915#3291] / [i915#3708])
   [403]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-6/igt@prime_vgem@basic-fence-read.html

  * igt@prime_vgem@coherency-gtt:
    - shard-rkl:          NOTRUN -> [SKIP][404] ([i915#3708]) +1 other test skip
   [404]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-8/igt@prime_vgem@coherency-gtt.html

  * igt@sriov_basic@enable-vfs-autoprobe-off:
    - shard-rkl:          NOTRUN -> [SKIP][405] ([i915#9917])
   [405]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-7/igt@sriov_basic@enable-vfs-autoprobe-off.html

  * igt@sriov_basic@enable-vfs-bind-unbind-each-numvfs-all:
    - shard-tglu:         NOTRUN -> [SKIP][406] ([i915#16066])
   [406]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-10/igt@sriov_basic@enable-vfs-bind-unbind-each-numvfs-all.html

  
#### Possible fixes ####

  * igt@gem_ccs@suspend-resume@linear-compressed-compfmt0-lmem0-lmem0:
    - shard-dg2:          [INCOMPLETE][407] ([i915#13356] / [i915#16348]) -> [PASS][408]
   [407]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-dg2-1/igt@gem_ccs@suspend-resume@linear-compressed-compfmt0-lmem0-lmem0.html
   [408]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-4/igt@gem_ccs@suspend-resume@linear-compressed-compfmt0-lmem0-lmem0.html

  * igt@gem_ctx_isolation@preservation-s3:
    - shard-rkl:          [INCOMPLETE][409] ([i915#13356]) -> [PASS][410] +1 other test pass
   [409]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-6/igt@gem_ctx_isolation@preservation-s3.html
   [410]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-4/igt@gem_ctx_isolation@preservation-s3.html

  * igt@gem_exec_suspend@basic-s3@smem:
    - shard-snb:          [ABORT][411] ([i915#15840]) -> [PASS][412] +1 other test pass
   [411]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-snb5/igt@gem_exec_suspend@basic-s3@smem.html
   [412]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-snb4/igt@gem_exec_suspend@basic-s3@smem.html

  * igt@gem_mmap_offset@clear-via-pagefault:
    - shard-mtlp:         [INCOMPLETE][413] ([i915#16108] / [i915#16202]) -> [PASS][414] +1 other test pass
   [413]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-mtlp-6/igt@gem_mmap_offset@clear-via-pagefault.html
   [414]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-4/igt@gem_mmap_offset@clear-via-pagefault.html

  * igt@kms_async_flips@alternate-sync-async-flip-atomic@pipe-a-hdmi-a-1:
    - shard-glk:          [FAIL][415] ([i915#14888]) -> [PASS][416] +1 other test pass
   [415]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-glk4/igt@kms_async_flips@alternate-sync-async-flip-atomic@pipe-a-hdmi-a-1.html
   [416]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-glk8/igt@kms_async_flips@alternate-sync-async-flip-atomic@pipe-a-hdmi-a-1.html

  * igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-180:
    - shard-mtlp:         [FAIL][417] ([i915#15733] / [i915#5138]) -> [PASS][418]
   [417]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-mtlp-4/igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-180.html
   [418]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-6/igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-180.html

  * igt@kms_ccs@crc-primary-suspend-y-tiled-gen12-rc-ccs-cc:
    - shard-rkl:          [INCOMPLETE][419] ([i915#14694] / [i915#15582]) -> [PASS][420] +1 other test pass
   [419]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-3/igt@kms_ccs@crc-primary-suspend-y-tiled-gen12-rc-ccs-cc.html
   [420]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-7/igt@kms_ccs@crc-primary-suspend-y-tiled-gen12-rc-ccs-cc.html

  * igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-fullscreen:
    - shard-dg1:          [DMESG-WARN][421] ([i915#4423]) -> [PASS][422]
   [421]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-dg1-14/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-fullscreen.html
   [422]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-19/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-fullscreen.html

  * igt@kms_frontbuffer_tracking@fbchdr-1p-primscrn-indfb-pgflip-blt:
    - shard-rkl:          [SKIP][423] ([i915#15989]) -> [PASS][424] +9 other tests pass
   [423]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-4/igt@kms_frontbuffer_tracking@fbchdr-1p-primscrn-indfb-pgflip-blt.html
   [424]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-1/igt@kms_frontbuffer_tracking@fbchdr-1p-primscrn-indfb-pgflip-blt.html

  * igt@kms_frontbuffer_tracking@fbchdr-modesetfrombusy:
    - shard-dg2:          [SKIP][425] ([i915#15989]) -> [PASS][426] +2 other tests pass
   [425]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-dg2-8/igt@kms_frontbuffer_tracking@fbchdr-modesetfrombusy.html
   [426]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-10/igt@kms_frontbuffer_tracking@fbchdr-modesetfrombusy.html

  * igt@kms_frontbuffer_tracking@hdr-1p-primscrn-pri-shrfb-draw-mmap-wc:
    - shard-glk:          [SKIP][427] -> [PASS][428] +2 other tests pass
   [427]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-glk1/igt@kms_frontbuffer_tracking@hdr-1p-primscrn-pri-shrfb-draw-mmap-wc.html
   [428]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-glk8/igt@kms_frontbuffer_tracking@hdr-1p-primscrn-pri-shrfb-draw-mmap-wc.html

  * igt@kms_pm_rpm@modeset-lpsp:
    - shard-dg2:          [SKIP][429] ([i915#15073]) -> [PASS][430]
   [429]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-dg2-6/igt@kms_pm_rpm@modeset-lpsp.html
   [430]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-4/igt@kms_pm_rpm@modeset-lpsp.html

  * igt@kms_pm_rpm@modeset-lpsp-stress:
    - shard-rkl:          [SKIP][431] ([i915#15073]) -> [PASS][432] +1 other test pass
   [431]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-7/igt@kms_pm_rpm@modeset-lpsp-stress.html
   [432]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-8/igt@kms_pm_rpm@modeset-lpsp-stress.html

  * igt@kms_pm_rpm@modeset-non-lpsp-stress:
    - shard-dg1:          [SKIP][433] ([i915#15073]) -> [PASS][434] +1 other test pass
   [433]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-dg1-15/igt@kms_pm_rpm@modeset-non-lpsp-stress.html
   [434]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-16/igt@kms_pm_rpm@modeset-non-lpsp-stress.html

  * igt@kms_pm_rpm@system-suspend-idle:
    - shard-rkl:          [INCOMPLETE][435] ([i915#14419]) -> [PASS][436]
   [435]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-6/igt@kms_pm_rpm@system-suspend-idle.html
   [436]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-8/igt@kms_pm_rpm@system-suspend-idle.html

  * igt@perf_pmu@most-busy-idle-check-all:
    - shard-rkl:          [FAIL][437] -> [PASS][438] +2 other tests pass
   [437]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-7/igt@perf_pmu@most-busy-idle-check-all.html
   [438]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-3/igt@perf_pmu@most-busy-idle-check-all.html

  
#### Warnings ####

  * igt@gem_ctx_sseu@invalid-sseu:
    - shard-rkl:          [SKIP][439] ([i915#14544] / [i915#280]) -> [SKIP][440] ([i915#280])
   [439]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-6/igt@gem_ctx_sseu@invalid-sseu.html
   [440]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-7/igt@gem_ctx_sseu@invalid-sseu.html

  * igt@gem_exec_big@single:
    - shard-tglu:         [FAIL][441] ([i915#15816]) -> [FAIL][442] ([i915#15944])
   [441]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-tglu-8/igt@gem_exec_big@single.html
   [442]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-4/igt@gem_exec_big@single.html

  * igt@gem_exec_reloc@basic-cpu-gtt-noreloc:
    - shard-rkl:          [SKIP][443] ([i915#3281]) -> [SKIP][444] ([i915#14544] / [i915#3281]) +2 other tests skip
   [443]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-8/igt@gem_exec_reloc@basic-cpu-gtt-noreloc.html
   [444]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-6/igt@gem_exec_reloc@basic-cpu-gtt-noreloc.html

  * igt@gem_lmem_swapping@basic:
    - shard-rkl:          [SKIP][445] ([i915#4613]) -> [SKIP][446] ([i915#14544] / [i915#4613])
   [445]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-2/igt@gem_lmem_swapping@basic.html
   [446]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-6/igt@gem_lmem_swapping@basic.html

  * igt@gem_partial_pwrite_pread@reads-snoop:
    - shard-rkl:          [SKIP][447] ([i915#3282]) -> [SKIP][448] ([i915#14544] / [i915#3282]) +1 other test skip
   [447]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-4/igt@gem_partial_pwrite_pread@reads-snoop.html
   [448]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-6/igt@gem_partial_pwrite_pread@reads-snoop.html

  * igt@gem_userptr_blits@readonly-pwrite-unsync:
    - shard-rkl:          [SKIP][449] ([i915#3297]) -> [SKIP][450] ([i915#14544] / [i915#3297])
   [449]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-7/igt@gem_userptr_blits@readonly-pwrite-unsync.html
   [450]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-6/igt@gem_userptr_blits@readonly-pwrite-unsync.html

  * igt@gem_workarounds@suspend-resume-fd:
    - shard-rkl:          [ABORT][451] ([i915#15152]) -> [INCOMPLETE][452] ([i915#13356])
   [451]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-1/igt@gem_workarounds@suspend-resume-fd.html
   [452]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-6/igt@gem_workarounds@suspend-resume-fd.html

  * igt@gen9_exec_parse@bb-start-param:
    - shard-rkl:          [SKIP][453] ([i915#14544] / [i915#2527]) -> [SKIP][454] ([i915#2527])
   [453]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-6/igt@gen9_exec_parse@bb-start-param.html
   [454]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-7/igt@gen9_exec_parse@bb-start-param.html

  * igt@i915_pm_freq_api@freq-basic-api:
    - shard-rkl:          [SKIP][455] ([i915#14544] / [i915#8399]) -> [SKIP][456] ([i915#8399])
   [455]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-6/igt@i915_pm_freq_api@freq-basic-api.html
   [456]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-4/igt@i915_pm_freq_api@freq-basic-api.html

  * igt@kms_big_fb@y-tiled-64bpp-rotate-270:
    - shard-rkl:          [SKIP][457] ([i915#3638]) -> [SKIP][458] ([i915#14544] / [i915#3638]) +1 other test skip
   [457]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-5/igt@kms_big_fb@y-tiled-64bpp-rotate-270.html
   [458]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-6/igt@kms_big_fb@y-tiled-64bpp-rotate-270.html

  * igt@kms_big_fb@yf-tiled-16bpp-rotate-270:
    - shard-rkl:          [SKIP][459] -> [SKIP][460] ([i915#14544]) +20 other tests skip
   [459]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-8/igt@kms_big_fb@yf-tiled-16bpp-rotate-270.html
   [460]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-6/igt@kms_big_fb@yf-tiled-16bpp-rotate-270.html

  * igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-rc-ccs@pipe-c-hdmi-a-2:
    - shard-rkl:          [SKIP][461] ([i915#14098] / [i915#6095]) -> [SKIP][462] ([i915#14098] / [i915#14544] / [i915#6095]) +4 other tests skip
   [461]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-3/igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-rc-ccs@pipe-c-hdmi-a-2.html
   [462]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-6/igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-rc-ccs@pipe-c-hdmi-a-2.html

  * igt@kms_ccs@crc-primary-suspend-4-tiled-mtl-mc-ccs@pipe-a-hdmi-a-2:
    - shard-rkl:          [SKIP][463] ([i915#6095]) -> [SKIP][464] ([i915#14544] / [i915#6095]) +1 other test skip
   [463]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-4/igt@kms_ccs@crc-primary-suspend-4-tiled-mtl-mc-ccs@pipe-a-hdmi-a-2.html
   [464]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-6/igt@kms_ccs@crc-primary-suspend-4-tiled-mtl-mc-ccs@pipe-a-hdmi-a-2.html

  * igt@kms_ccs@missing-ccs-buffer-4-tiled-mtl-rc-ccs-cc:
    - shard-rkl:          [SKIP][465] ([i915#14098] / [i915#14544] / [i915#6095]) -> [SKIP][466] ([i915#14098] / [i915#6095]) +2 other tests skip
   [465]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-6/igt@kms_ccs@missing-ccs-buffer-4-tiled-mtl-rc-ccs-cc.html
   [466]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-1/igt@kms_ccs@missing-ccs-buffer-4-tiled-mtl-rc-ccs-cc.html

  * igt@kms_ccs@missing-ccs-buffer-4-tiled-mtl-rc-ccs-cc@pipe-a-hdmi-a-2:
    - shard-rkl:          [SKIP][467] ([i915#14544] / [i915#6095]) -> [SKIP][468] ([i915#6095]) +1 other test skip
   [467]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-6/igt@kms_ccs@missing-ccs-buffer-4-tiled-mtl-rc-ccs-cc@pipe-a-hdmi-a-2.html
   [468]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-1/igt@kms_ccs@missing-ccs-buffer-4-tiled-mtl-rc-ccs-cc@pipe-a-hdmi-a-2.html

  * igt@kms_chamelium_color_pipeline@plane-lut1d-pre-ctm3x4:
    - shard-rkl:          [SKIP][469] ([i915#14544] / [i915#16471]) -> [SKIP][470] ([i915#16471])
   [469]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-6/igt@kms_chamelium_color_pipeline@plane-lut1d-pre-ctm3x4.html
   [470]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-4/igt@kms_chamelium_color_pipeline@plane-lut1d-pre-ctm3x4.html

  * igt@kms_chamelium_edid@dp-edid-read:
    - shard-rkl:          [SKIP][471] ([i915#11151] / [i915#14544] / [i915#7828]) -> [SKIP][472] ([i915#11151] / [i915#7828]) +2 other tests skip
   [471]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-6/igt@kms_chamelium_edid@dp-edid-read.html
   [472]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-1/igt@kms_chamelium_edid@dp-edid-read.html

  * igt@kms_chamelium_hpd@vga-hpd-for-each-pipe:
    - shard-rkl:          [SKIP][473] ([i915#11151] / [i915#7828]) -> [SKIP][474] ([i915#11151] / [i915#14544] / [i915#7828])
   [473]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-7/igt@kms_chamelium_hpd@vga-hpd-for-each-pipe.html
   [474]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-6/igt@kms_chamelium_hpd@vga-hpd-for-each-pipe.html

  * igt@kms_content_protection@atomic:
    - shard-rkl:          [SKIP][475] ([i915#14544] / [i915#15865]) -> [SKIP][476] ([i915#15865])
   [475]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-6/igt@kms_content_protection@atomic.html
   [476]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-7/igt@kms_content_protection@atomic.html

  * igt@kms_content_protection@atomic-dpms:
    - shard-dg2:          [FAIL][477] ([i915#7173]) -> [SKIP][478] ([i915#15865])
   [477]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-dg2-10/igt@kms_content_protection@atomic-dpms.html
   [478]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-6/igt@kms_content_protection@atomic-dpms.html

  * igt@kms_content_protection@dp-mst-lic-type-1:
    - shard-rkl:          [SKIP][479] ([i915#15330] / [i915#3116]) -> [SKIP][480] ([i915#14544] / [i915#15330] / [i915#3116])
   [479]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-2/igt@kms_content_protection@dp-mst-lic-type-1.html
   [480]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-6/igt@kms_content_protection@dp-mst-lic-type-1.html

  * igt@kms_cursor_crc@cursor-onscreen-512x512:
    - shard-dg2:          [SKIP][481] ([i915#13049] / [i915#3359]) -> [SKIP][482] ([i915#13049])
   [481]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-dg2-10/igt@kms_cursor_crc@cursor-onscreen-512x512.html
   [482]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-3/igt@kms_cursor_crc@cursor-onscreen-512x512.html

  * igt@kms_cursor_crc@cursor-random-32x32:
    - shard-rkl:          [SKIP][483] ([i915#14544] / [i915#3555]) -> [SKIP][484] ([i915#3555])
   [483]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-6/igt@kms_cursor_crc@cursor-random-32x32.html
   [484]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-1/igt@kms_cursor_crc@cursor-random-32x32.html

  * igt@kms_dsc@dsc-with-bpc-formats:
    - shard-rkl:          [SKIP][485] ([i915#16361]) -> [SKIP][486] ([i915#14544] / [i915#16361])
   [485]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-3/igt@kms_dsc@dsc-with-bpc-formats.html
   [486]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-6/igt@kms_dsc@dsc-with-bpc-formats.html

  * igt@kms_feature_discovery@display-4x:
    - shard-rkl:          [SKIP][487] ([i915#14544] / [i915#16081]) -> [SKIP][488] ([i915#16081])
   [487]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-6/igt@kms_feature_discovery@display-4x.html
   [488]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-7/igt@kms_feature_discovery@display-4x.html

  * igt@kms_flip@2x-flip-vs-dpms:
    - shard-rkl:          [SKIP][489] ([i915#14544] / [i915#9934]) -> [SKIP][490] ([i915#9934])
   [489]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-6/igt@kms_flip@2x-flip-vs-dpms.html
   [490]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-2/igt@kms_flip@2x-flip-vs-dpms.html

  * igt@kms_flip@2x-flip-vs-suspend:
    - shard-glk:          [INCOMPLETE][491] ([i915#12314] / [i915#12745] / [i915#4839] / [i915#6113]) -> [INCOMPLETE][492] ([i915#12745] / [i915#4839])
   [491]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-glk5/igt@kms_flip@2x-flip-vs-suspend.html
   [492]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-glk6/igt@kms_flip@2x-flip-vs-suspend.html

  * igt@kms_flip@2x-flip-vs-suspend@ac-hdmi-a1-hdmi-a2:
    - shard-glk:          [INCOMPLETE][493] ([i915#12314] / [i915#12745]) -> [INCOMPLETE][494] ([i915#12745])
   [493]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-glk5/igt@kms_flip@2x-flip-vs-suspend@ac-hdmi-a1-hdmi-a2.html
   [494]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-glk6/igt@kms_flip@2x-flip-vs-suspend@ac-hdmi-a1-hdmi-a2.html

  * igt@kms_force_connector_basic@force-load-detect:
    - shard-mtlp:         [SKIP][495] -> [SKIP][496] ([i915#15672])
   [495]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-mtlp-6/igt@kms_force_connector_basic@force-load-detect.html
   [496]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-mtlp-1/igt@kms_force_connector_basic@force-load-detect.html

  * igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-draw-mmap-gtt:
    - shard-rkl:          [SKIP][497] ([i915#1825]) -> [SKIP][498] ([i915#14544] / [i915#1825])
   [497]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-7/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-draw-mmap-gtt.html
   [498]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-6/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-draw-mmap-gtt.html

  * igt@kms_frontbuffer_tracking@fbc-2p-primscrn-indfb-plflip-blt:
    - shard-dg1:          [SKIP][499] ([i915#4423]) -> [SKIP][500] +2 other tests skip
   [499]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-dg1-13/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-indfb-plflip-blt.html
   [500]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-16/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-indfb-plflip-blt.html

  * igt@kms_frontbuffer_tracking@fbchdr-2p-primscrn-pri-indfb-draw-blt:
    - shard-rkl:          [SKIP][501] ([i915#14544]) -> [SKIP][502] +19 other tests skip
   [501]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-6/igt@kms_frontbuffer_tracking@fbchdr-2p-primscrn-pri-indfb-draw-blt.html
   [502]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-2/igt@kms_frontbuffer_tracking@fbchdr-2p-primscrn-pri-indfb-draw-blt.html

  * igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-move:
    - shard-rkl:          [SKIP][503] ([i915#15102] / [i915#3023]) -> [SKIP][504] ([i915#14544] / [i915#15102] / [i915#3023]) +3 other tests skip
   [503]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-8/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-move.html
   [504]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-6/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-move.html

  * igt@kms_frontbuffer_tracking@fbcpsr-suspend:
    - shard-rkl:          [SKIP][505] ([i915#14544] / [i915#15102] / [i915#3023]) -> [SKIP][506] ([i915#15102] / [i915#3023]) +2 other tests skip
   [505]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-6/igt@kms_frontbuffer_tracking@fbcpsr-suspend.html
   [506]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-5/igt@kms_frontbuffer_tracking@fbcpsr-suspend.html

  * igt@kms_frontbuffer_tracking@fbcpsrhdr-1p-primscrn-shrfb-pgflip-blt:
    - shard-rkl:          [SKIP][507] ([i915#14544] / [i915#15102]) -> [SKIP][508] ([i915#15102]) +1 other test skip
   [507]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-6/igt@kms_frontbuffer_tracking@fbcpsrhdr-1p-primscrn-shrfb-pgflip-blt.html
   [508]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-4/igt@kms_frontbuffer_tracking@fbcpsrhdr-1p-primscrn-shrfb-pgflip-blt.html

  * igt@kms_frontbuffer_tracking@fbcpsrhdr-tiling-linear:
    - shard-dg1:          [SKIP][509] ([i915#15102]) -> [SKIP][510] ([i915#15102] / [i915#4423])
   [509]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-dg1-14/igt@kms_frontbuffer_tracking@fbcpsrhdr-tiling-linear.html
   [510]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-19/igt@kms_frontbuffer_tracking@fbcpsrhdr-tiling-linear.html

  * igt@kms_frontbuffer_tracking@hdr-suspend:
    - shard-rkl:          [SKIP][511] ([i915#15989]) -> [INCOMPLETE][512] ([i915#16056])
   [511]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-4/igt@kms_frontbuffer_tracking@hdr-suspend.html
   [512]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-6/igt@kms_frontbuffer_tracking@hdr-suspend.html

  * igt@kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-move:
    - shard-dg2:          [SKIP][513] ([i915#15102]) -> [SKIP][514] ([i915#10433] / [i915#15102])
   [513]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-dg2-8/igt@kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-move.html
   [514]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-4/igt@kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-move.html

  * igt@kms_frontbuffer_tracking@psr-2p-scndscrn-pri-shrfb-draw-mmap-wc:
    - shard-rkl:          [SKIP][515] ([i915#14544] / [i915#1825]) -> [SKIP][516] ([i915#1825])
   [515]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-6/igt@kms_frontbuffer_tracking@psr-2p-scndscrn-pri-shrfb-draw-mmap-wc.html
   [516]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-7/igt@kms_frontbuffer_tracking@psr-2p-scndscrn-pri-shrfb-draw-mmap-wc.html

  * igt@kms_frontbuffer_tracking@psr-indfb-scaledprimary:
    - shard-dg2:          [SKIP][517] ([i915#10433] / [i915#15102]) -> [SKIP][518] ([i915#15102]) +2 other tests skip
   [517]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-dg2-4/igt@kms_frontbuffer_tracking@psr-indfb-scaledprimary.html
   [518]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-6/igt@kms_frontbuffer_tracking@psr-indfb-scaledprimary.html

  * igt@kms_frontbuffer_tracking@psrhdr-1p-primscrn-cur-indfb-draw-mmap-gtt:
    - shard-rkl:          [SKIP][519] ([i915#15102]) -> [SKIP][520] ([i915#14544] / [i915#15102]) +3 other tests skip
   [519]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-8/igt@kms_frontbuffer_tracking@psrhdr-1p-primscrn-cur-indfb-draw-mmap-gtt.html
   [520]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-6/igt@kms_frontbuffer_tracking@psrhdr-1p-primscrn-cur-indfb-draw-mmap-gtt.html

  * igt@kms_hdr@brightness-with-hdr:
    - shard-tglu:         [SKIP][521] ([i915#12713]) -> [SKIP][522] ([i915#1187] / [i915#12713])
   [521]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-tglu-8/igt@kms_hdr@brightness-with-hdr.html
   [522]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-tglu-2/igt@kms_hdr@brightness-with-hdr.html

  * igt@kms_joiner@invalid-modeset-force-big-joiner:
    - shard-rkl:          [SKIP][523] ([i915#14544] / [i915#15459]) -> [SKIP][524] ([i915#15459])
   [523]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-6/igt@kms_joiner@invalid-modeset-force-big-joiner.html
   [524]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-8/igt@kms_joiner@invalid-modeset-force-big-joiner.html

  * igt@kms_panel_fitting@legacy:
    - shard-rkl:          [SKIP][525] ([i915#6301]) -> [SKIP][526] ([i915#14544] / [i915#6301])
   [525]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-3/igt@kms_panel_fitting@legacy.html
   [526]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-6/igt@kms_panel_fitting@legacy.html

  * igt@kms_plane@pixel-format-4-tiled-modifier:
    - shard-rkl:          [SKIP][527] ([i915#15709]) -> [SKIP][528] ([i915#14544] / [i915#15709]) +1 other test skip
   [527]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-7/igt@kms_plane@pixel-format-4-tiled-modifier.html
   [528]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-6/igt@kms_plane@pixel-format-4-tiled-modifier.html

  * igt@kms_pm_dc@dc6-psr:
    - shard-rkl:          [SKIP][529] ([i915#15948]) -> [SKIP][530] ([i915#14544] / [i915#15948])
   [529]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-5/igt@kms_pm_dc@dc6-psr.html
   [530]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-6/igt@kms_pm_dc@dc6-psr.html

  * igt@kms_psr2_sf@fbc-psr2-cursor-plane-update-sf:
    - shard-dg1:          [SKIP][531] ([i915#11520] / [i915#4423]) -> [SKIP][532] ([i915#11520])
   [531]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-dg1-18/igt@kms_psr2_sf@fbc-psr2-cursor-plane-update-sf.html
   [532]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-16/igt@kms_psr2_sf@fbc-psr2-cursor-plane-update-sf.html

  * igt@kms_psr2_sf@pr-overlay-plane-move-continuous-sf:
    - shard-rkl:          [SKIP][533] ([i915#11520]) -> [SKIP][534] ([i915#11520] / [i915#14544]) +1 other test skip
   [533]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-5/igt@kms_psr2_sf@pr-overlay-plane-move-continuous-sf.html
   [534]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-6/igt@kms_psr2_sf@pr-overlay-plane-move-continuous-sf.html

  * igt@kms_psr@pr-sprite-plane-onoff:
    - shard-dg1:          [SKIP][535] ([i915#1072] / [i915#9732]) -> [SKIP][536] ([i915#1072] / [i915#4423] / [i915#9732])
   [535]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-dg1-14/igt@kms_psr@pr-sprite-plane-onoff.html
   [536]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg1-17/igt@kms_psr@pr-sprite-plane-onoff.html

  * igt@kms_psr@psr2-cursor-mmap-gtt:
    - shard-rkl:          [SKIP][537] ([i915#1072] / [i915#14544] / [i915#9732]) -> [SKIP][538] ([i915#1072] / [i915#9732]) +2 other tests skip
   [537]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-6/igt@kms_psr@psr2-cursor-mmap-gtt.html
   [538]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-7/igt@kms_psr@psr2-cursor-mmap-gtt.html

  * igt@kms_psr@psr2-primary-mmap-gtt:
    - shard-rkl:          [SKIP][539] ([i915#1072] / [i915#9732]) -> [SKIP][540] ([i915#1072] / [i915#14544] / [i915#9732]) +4 other tests skip
   [539]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-2/igt@kms_psr@psr2-primary-mmap-gtt.html
   [540]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-6/igt@kms_psr@psr2-primary-mmap-gtt.html

  * igt@kms_rotation_crc@primary-yf-tiled-reflect-x-270:
    - shard-rkl:          [SKIP][541] ([i915#14544] / [i915#5289]) -> [SKIP][542] ([i915#5289])
   [541]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-6/igt@kms_rotation_crc@primary-yf-tiled-reflect-x-270.html
   [542]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-7/igt@kms_rotation_crc@primary-yf-tiled-reflect-x-270.html

  * igt@kms_rotation_crc@sprite-rotation-270:
    - shard-dg2:          [SKIP][543] ([i915#15867]) -> [SKIP][544] ([i915#12755] / [i915#15867])
   [543]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-dg2-10/igt@kms_rotation_crc@sprite-rotation-270.html
   [544]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-dg2-5/igt@kms_rotation_crc@sprite-rotation-270.html

  * igt@sriov_basic@enable-vfs-autoprobe-on:
    - shard-rkl:          [SKIP][545] ([i915#14544] / [i915#9917]) -> [SKIP][546] ([i915#9917])
   [545]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9007/shard-rkl-6/igt@sriov_basic@enable-vfs-autoprobe-on.html
   [546]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/shard-rkl-1/igt@sriov_basic@enable-vfs-autoprobe-on.html

  
  [i915#10226]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10226
  [i915#10307]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10307
  [i915#10433]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10433
  [i915#10434]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10434
  [i915#1072]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/1072
  [i915#1099]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/1099
  [i915#11078]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11078
  [i915#11151]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11151
  [i915#11520]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11520
  [i915#11614]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11614
  [i915#11681]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11681
  [i915#118]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/118
  [i915#1187]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/1187
  [i915#12193]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12193
  [i915#12313]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12313
  [i915#12314]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12314
  [i915#12316]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12316
  [i915#12343]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12343
  [i915#12358]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12358
  [i915#12713]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12713
  [i915#12745]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12745
  [i915#12755]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12755
  [i915#12805]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12805
  [i915#12964]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12964
  [i915#13027]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13027
  [i915#13029]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13029
  [i915#13046]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13046
  [i915#13049]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13049
  [i915#13196]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13196
  [i915#13356]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13356
  [i915#13390]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13390
  [i915#13566]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13566
  [i915#13688]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13688
  [i915#13707]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13707
  [i915#13749]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13749
  [i915#13781]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13781
  [i915#13958]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13958
  [i915#14073]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14073
  [i915#14098]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14098
  [i915#14118]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14118
  [i915#14152]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14152
  [i915#14259]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14259
  [i915#14419]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14419
  [i915#14498]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14498
  [i915#14544]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14544
  [i915#14545]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14545
  [i915#14586]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14586
  [i915#14694]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14694
  [i915#14702]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14702
  [i915#14888]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14888
  [i915#15073]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15073
  [i915#15102]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15102
  [i915#15104]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15104
  [i915#15132]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15132
  [i915#15152]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15152
  [i915#15243]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15243
  [i915#15329]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15329
  [i915#15330]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15330
  [i915#15342]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15342
  [i915#15458]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15458
  [i915#15459]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15459
  [i915#15479]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15479
  [i915#15582]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15582
  [i915#15643]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15643
  [i915#15672]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15672
  [i915#15678]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15678
  [i915#15709]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15709
  [i915#15733]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15733
  [i915#15751]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15751
  [i915#15778]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15778
  [i915#15804]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15804
  [i915#15816]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15816
  [i915#15840]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15840
  [i915#15865]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15865
  [i915#15867]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15867
  [i915#15871]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15871
  [i915#15931]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15931
  [i915#15944]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15944
  [i915#15948]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15948
  [i915#15949]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15949
  [i915#15989]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15989
  [i915#15990]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15990
  [i915#15991]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15991
  [i915#16017]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16017
  [i915#16056]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16056
  [i915#16066]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16066
  [i915#16080]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16080
  [i915#16081]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16081
  [i915#16108]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16108
  [i915#16112]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16112
  [i915#16166]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16166
  [i915#16182]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16182
  [i915#16202]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16202
  [i915#16276]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16276
  [i915#16348]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16348
  [i915#16361]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16361
  [i915#16386]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16386
  [i915#16396]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16396
  [i915#16420]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16420
  [i915#16466]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16466
  [i915#16471]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16471
  [i915#16479]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16479
  [i915#16490]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16490
  [i915#16518]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16518
  [i915#16600]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16600
  [i915#1769]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/1769
  [i915#1825]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/1825
  [i915#2434]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2434
  [i915#2527]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2527
  [i915#2658]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2658
  [i915#280]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/280
  [i915#2856]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2856
  [i915#3023]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3023
  [i915#3116]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3116
  [i915#3281]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3281
  [i915#3282]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3282
  [i915#3291]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3291
  [i915#3297]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3297
  [i915#3299]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3299
  [i915#3323]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3323
  [i915#3359]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3359
  [i915#3361]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3361
  [i915#3469]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3469
  [i915#3539]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3539
  [i915#3555]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3555
  [i915#3582]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3582
  [i915#3637]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3637
  [i915#3638]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3638
  [i915#3708]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3708
  [i915#3711]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3711
  [i915#3742]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3742
  [i915#3804]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3804
  [i915#3828]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3828
  [i915#4077]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4077
  [i915#4083]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4083
  [i915#4212]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4212
  [i915#4270]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4270
  [i915#4349]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4349
  [i915#4387]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4387
  [i915#4423]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4423
  [i915#4525]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4525
  [i915#4537]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4537
  [i915#4538]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4538
  [i915#4565]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4565
  [i915#4613]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4613
  [i915#4812]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4812
  [i915#4817]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4817
  [i915#4839]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4839
  [i915#4852]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4852
  [i915#4860]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4860
  [i915#4873]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4873
  [i915#4879]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4879
  [i915#4881]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4881
  [i915#5138]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5138
  [i915#5190]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5190
  [i915#5286]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5286
  [i915#5289]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5289
  [i915#5354]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5354
  [i915#5439]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5439
  [i915#5956]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5956
  [i915#6095]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6095
  [i915#6113]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6113
  [i915#6245]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6245
  [i915#6301]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6301
  [i915#6334]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6334
  [i915#6335]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6335
  [i915#6412]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6412
  [i915#6524]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6524
  [i915#658]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/658
  [i915#6621]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6621
  [i915#7173]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7173
  [i915#7276]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7276
  [i915#7582]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7582
  [i915#7697]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7697
  [i915#7707]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7707
  [i915#7828]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7828
  [i915#7882]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7882
  [i915#7975]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7975
  [i915#8228]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8228
  [i915#8399]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8399
  [i915#8411]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8411
  [i915#8428]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8428
  [i915#8430]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8430
  [i915#8437]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8437
  [i915#8555]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8555
  [i915#8623]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8623
  [i915#8708]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8708
  [i915#8808]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8808
  [i915#8810]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8810
  [i915#8813]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8813
  [i915#8814]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8814
  [i915#9067]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9067
  [i915#9323]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9323
  [i915#9340]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9340
  [i915#9683]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9683
  [i915#9685]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9685
  [i915#9688]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9688
  [i915#9723]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9723
  [i915#9732]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9732
  [i915#9808]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9808
  [i915#9809]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9809
  [i915#9906]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9906
  [i915#9917]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9917
  [i915#9934]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9934


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

  * CI: CI-20190529 -> None
  * IGT: IGT_9007 -> IGTPW_15535

  CI-20190529: 20190529
  CI_DRM_18830: 116ce94f4e028e50e3523c46a8ce1e665ce47cb9 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_15535: 15535
  IGT_9007: 9007

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15535/index.html

[-- Attachment #2: Type: text/html, Size: 184927 bytes --]

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

* Re: [PATCH i-g-t v3 05/31] lib/igt_tools_stub: add stubs needed by tools
  2026-07-15 12:15 ` [PATCH i-g-t v3 05/31] lib/igt_tools_stub: add stubs needed by tools Sebastian Brzezinka
@ 2026-07-16  6:09   ` Krzysztof Karas
  2026-07-16 10:13     ` Kamil Konieczny
  0 siblings, 1 reply; 50+ messages in thread
From: Krzysztof Karas @ 2026-07-16  6:09 UTC (permalink / raw)
  To: Sebastian Brzezinka
  Cc: igt-dev, kamil.konieczny, krzysztof.niemiec, Ashutosh Dixit

Hi Sebastian,

On 2026-07-15 at 14:15:15 +0200, Sebastian Brzezinka wrote:
> Add stubs for functions used by tools when linking without the
> full libigt.so: __igt_skip_check, igt_exit, igt_debugfs_open and
> igt_open_forcewake_handle_for_pcidev.
This patch does more than that: it unifies the comment style in
the file. This is a nit though, so consider it only if you would
prepare another version.

> 
> Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
> Acked-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
> ---
>  lib/igt_tools_stub.c | 83 ++++++++++++++++++++++++++++++++++++++++----
>  1 file changed, 76 insertions(+), 7 deletions(-)
> 
> diff --git a/lib/igt_tools_stub.c b/lib/igt_tools_stub.c
> index 9a0ec6217..21dc53f3f 100644
> --- a/lib/igt_tools_stub.c
> +++ b/lib/igt_tools_stub.c
> @@ -21,12 +21,27 @@
>   * IN THE SOFTWARE.
>   *
>   */
> +#include <fcntl.h>
> +#include <limits.h>
> +#include <stdarg.h>
> +#include <stdio.h>
> +#include <stdlib.h>
> +#include <sys/stat.h>
> +#include <sys/sysmacros.h>
> +#include <unistd.h>
> +
>  #include "igt_core.h"
> +#include "igt_debugfs.h"
>  
> -/* Stub for igt_log, this stub will simply print the msg on stderr device.
> - * Domain and log level are ignored.
> +/*
> + * Forward declaration only - avoids pulling in the heavy igt_gt.h header.
> + * The type is used as an opaque pointer; this stub always returns -1.
>   */
This is a nit, so consider it only if you would prepare another
version of this series:
The comment should be moved right before the function declaration.
> +struct pci_device;
>  
> +int igt_open_forcewake_handle_for_pcidev(const struct pci_device *pci_dev);
> +
> +/* Stub for igt_log: print message to stderr; domain and log level are ignored. */
>  void igt_log(const char *domain, enum igt_log_level level, const char *format, ...)
>  {
>  	va_list args;
> @@ -36,11 +51,7 @@ void igt_log(const char *domain, enum igt_log_level level, const char *format, .
>  	va_end(args);
>  }
>  
> -
> -/* Stub for __igt_fail_assert, this stub will simply print the msg on stderr device and
> - * exit the application, domain and log level are ignored.
> - */
> -
> +/* Stub for __igt_fail_assert: print failed assertion to stderr and exit. */
>  void __igt_fail_assert(const char *domain, const char *file,
>  		       const int line, const char *func, const char *assertion,
>  		       const char *format, ...)
> @@ -49,3 +60,61 @@ void __igt_fail_assert(const char *domain, const char *file,
>  		func, assertion);
>  	exit(1);
>  }
> +
> +/* Stub for __igt_skip_check: print skip reason to stderr and exit with skip code. */
> +void __igt_skip_check(const char *file, const int line,
> +		      const char *func, const char *check, const char *format, ...)
> +{
> +	fprintf(stderr, "%s: %d %s Skipped: %s", file, line, func, check);
> +	if (format) {
> +		va_list args;
> +
> +		fprintf(stderr, ": ");
> +		va_start(args, format);
> +		vfprintf(stderr, format, args);
> +		va_end(args);
> +	}
> +
> +	fprintf(stderr, "\n");
> +	/* IGT_EXIT_SKIP (77) is the exit code igt_core.c uses for skipped tests. */
> +	exit(IGT_EXIT_SKIP);
> +}
> +
> +/* Stub for igt_exit: tools use exit(0) rather than the full igt teardown sequence. */
> +__noreturn void igt_exit(void)
> +{
> +	exit(0);
> +}
> +
> +/*
> + * Stub for igt_debugfs_open: open a debugfs entry for a DRM device directly
> + * by path. device == -1 follows the igt_debugfs_path() convention of
> + * defaulting to the first DRM device (dri/0). When a valid fd is given, the
> + * DRM minor is resolved via fstat() so the correct dri/<minor> directory is
> + * used.
> + */
> +int igt_debugfs_open(int device, const char *filename, int mode)
> +{
> +	char path[PATH_MAX];
> +	int drm_minor = 0;
> +
> +	if (device >= 0) {
> +		struct stat st;
> +
> +		if (fstat(device, &st) == 0 && S_ISCHR(st.st_mode))
> +			drm_minor = minor(st.st_rdev);
> +	}
> +
> +	snprintf(path, sizeof(path),
> +		 "/sys/kernel/debug/dri/%d/%s", drm_minor, filename);
> +	return open(path, mode);
> +}
> +
> +/*
> + * Stub for igt_open_forcewake_handle_for_pcidev: in tool context the driver
> + * keeps the GPU awake; no forcewake handle needed.
> + */
> +int igt_open_forcewake_handle_for_pcidev(const struct pci_device *pci_dev)
> +{
> +	return -1;
> +}
> -- 
> 2.53.0
> 

The code looks good to me:
Reviewed-by: Krzysztof Karas <krzysztof.karas@intel.com>

-- 
Best Regards,
Krzysztof

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

* Re: [PATCH i-g-t v3 06/31] lib/igt_drm_stub: introduce for tools needing driver detection
  2026-07-15 12:15 ` [PATCH i-g-t v3 06/31] lib/igt_drm_stub: introduce for tools needing driver detection Sebastian Brzezinka
@ 2026-07-16  7:28   ` Krzysztof Karas
  0 siblings, 0 replies; 50+ messages in thread
From: Krzysztof Karas @ 2026-07-16  7:28 UTC (permalink / raw)
  To: Sebastian Brzezinka
  Cc: igt-dev, kamil.konieczny, krzysztof.niemiec, Ashutosh Dixit

Hi Sebastian,

On 2026-07-15 at 14:15:16 +0200, Sebastian Brzezinka wrote:
> Add drm/pciaccess-dependent stubs into a new igt_drm_stub.c.  This avoids
> pulling libdrm into tools that only need dep-free logging and exit stubs.
> 
> The new lib_igt_drm_stub static sub-library provides: igt_pci_system_init,
> is_i915_device, is_intel_device, xe_dev_id and __drm_open_driver.
> 
> Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
> Acked-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
> Reviewed-by: Krzysztof Niemiec <krzysztof.niemiec@intel.com>
> ---

Reviewed-by: Krzysztof Karas <krzysztof.karas@intel.com>

-- 
Best Regards,
Krzysztof

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

* Re: [PATCH i-g-t v3 04/31] tools/intel_firmware_decode: link with minimal sub-libraries
  2026-07-15 12:15 ` [PATCH i-g-t v3 04/31] tools/intel_firmware_decode: " Sebastian Brzezinka
@ 2026-07-16  7:29   ` Krzysztof Karas
  0 siblings, 0 replies; 50+ messages in thread
From: Krzysztof Karas @ 2026-07-16  7:29 UTC (permalink / raw)
  To: Sebastian Brzezinka
  Cc: igt-dev, kamil.konieczny, krzysztof.niemiec, Ashutosh Dixit

Hi,

On 2026-07-15 at 14:15:14 +0200, Sebastian Brzezinka wrote:
> intel_firmware_decode only needs the lightweight assert stub used by
> igt_assert(), so the full libigt.so stack is unnecessary.
> 
> Switch to linking against lib_igt_tools_stub only.
> 
> ldd before: 35  (ldd | wc -l)
> ldd after:   3   (ldd | wc -l)
> 
> Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
> Acked-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
> Reviewed-by: Krzysztof Niemiec <krzysztof.niemiec@intel.com>
> ---
>  tools/meson.build | 6 +++++-
>  1 file changed, 5 insertions(+), 1 deletion(-)
> 
> diff --git a/tools/meson.build b/tools/meson.build
> index 286a718c8..4c67dde4f 100644
> --- a/tools/meson.build
> +++ b/tools/meson.build
> @@ -24,7 +24,6 @@ tools_progs = [
>  	'intel_error_decode',
>  	'intel_forcewaked',
>  	'intel_gpu_frequency',
> -	'intel_firmware_decode',
>  	'intel_framebuffer_dump',
>  	'intel_gpu_time',
>  	'intel_gtt',
> @@ -62,6 +61,11 @@ executable('igt_stats', 'igt_stats.c',
>  	   install_rpath : bindir_rpathdir,
>  	   install : true)
>  
> +executable('intel_firmware_decode', 'intel_firmware_decode.c',
> +	   dependencies : [lib_igt_tools_stub],
> +	   install_rpath : bindir_rpathdir,
> +	   install : true)
> +
>  if libudev.found()
>  	intel_dp_compliance_src = [
>  		'intel_dp_compliance.c',
> -- 
> 2.53.0
> 

On patches 1-4:
Reviewed-by: Krzysztof Karas <krzysztof.karas@intel.com>

-- 
Best Regards,
Krzysztof

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

* Re: [PATCH i-g-t v3 07/31] lib/igt_device_scan: wire to use static sub-libraries
  2026-07-15 12:15 ` [PATCH i-g-t v3 07/31] lib/igt_device_scan: wire to use static sub-libraries Sebastian Brzezinka
@ 2026-07-16  7:40   ` Krzysztof Karas
  0 siblings, 0 replies; 50+ messages in thread
From: Krzysztof Karas @ 2026-07-16  7:40 UTC (permalink / raw)
  To: Sebastian Brzezinka
  Cc: igt-dev, kamil.konieczny, krzysztof.niemiec, Ashutosh Dixit

Hi Sebastian,

On 2026-07-15 at 14:15:17 +0200, Sebastian Brzezinka wrote:
> Drop the directly compiled igt_tools_stub.c from lib_igt_device_scan
> and link lib_igt_tools_stub and lib_igt_drm_stub instead. Compiling
> igt_tools_stub.c directly would cause duplicate symbol errors when a
> tool links both lib_igt_device_scan and lib_igt_tools_stub.
> 
> Add libdrm and pciaccess to scan_dep so tools linking lib_igt_device_scan
> pick up the right dependencies.
> 
> Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
> Acked-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
> Reviewed-by: Krzysztof Niemiec <krzysztof.niemiec@intel.com>
> ---
>  lib/meson.build | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/lib/meson.build b/lib/meson.build
> index 484a912d7..2c1fbcd43 100644
> --- a/lib/meson.build
> +++ b/lib/meson.build
> @@ -367,22 +367,24 @@ lib_igt_drm_stub = declare_dependency(link_with : lib_igt_drm_stub_build,
>  
>  scan_dep = [
>  	glib,
> +	libdrm,
>  	libpci,
>  	libudev,
> +	pciaccess,
>  ]
>  
>  lib_igt_device_scan_build = static_library('igt_device_scan',
>  	['igt_device_scan.c',
>  	'igt_list.c',
>  	'igt_map.c',
> -	'igt_tools_stub.c',
>  	'intel_device_info.c',
>  	'intel_cmds_info.c',
>  	],
> -	dependencies : scan_dep,
> +	dependencies : [scan_dep, lib_igt_drm_stub, lib_igt_tools_stub],
>  	include_directories : inc)
>  
>  lib_igt_device_scan = declare_dependency(link_with : lib_igt_device_scan_build,
> +				  dependencies : [libdrm, pciaccess],
>  				  include_directories : inc)
>  
>  lib_igt_drm_clients_build = static_library('igt_drm_clients',
> -- 
> 2.53.0
> 
LGTM:
Reviewed-by: Krzysztof Karas <krzysztof.karas@intel.com>

-- 
Best Regards,
Krzysztof

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

* Re: [PATCH i-g-t v3 08/31] tools/intel_gpu_top: add explicit drm/tools-stub deps
  2026-07-15 12:15 ` [PATCH i-g-t v3 08/31] tools/intel_gpu_top: add explicit drm/tools-stub deps Sebastian Brzezinka
@ 2026-07-16  7:43   ` Krzysztof Karas
  0 siblings, 0 replies; 50+ messages in thread
From: Krzysztof Karas @ 2026-07-16  7:43 UTC (permalink / raw)
  To: Sebastian Brzezinka
  Cc: igt-dev, kamil.konieczny, krzysztof.niemiec, Ashutosh Dixit

Hi Sebastian,

On 2026-07-15 at 14:15:18 +0200, Sebastian Brzezinka wrote:
> Meson does not automatically propagate static library dependencies
> to executables via link_with.  lib_igt_device_scan internally links
> lib_igt_drm_stub and lib_igt_tools_stub but does not reexport them
> through its declare_dependency.  As a result intel_gpu_top must list
> them explicitly, otherwise the linker cannot resolve symbols such as
> is_i915_device and igt_log at final link time.
> 
> Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
> Acked-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
> Reviewed-by: Krzysztof Niemiec <krzysztof.niemiec@intel.com>
> ---
>  tools/meson.build | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/tools/meson.build b/tools/meson.build
> index 4c67dde4f..53aa31056 100644
> --- a/tools/meson.build
> +++ b/tools/meson.build
> @@ -105,7 +105,8 @@ install_subdir('registers', install_dir : datadir)
>  executable('intel_gpu_top', 'intel_gpu_top.c',
>  	   install : true,
>  	   install_rpath : bindir_rpathdir,
> -	   dependencies : [lib_igt_perf,lib_igt_device_scan,lib_igt_drm_clients,lib_igt_drm_fdinfo,math])
> +	   dependencies : [lib_igt_perf,lib_igt_device_scan,lib_igt_drm_clients,lib_igt_drm_fdinfo,
> +	                   lib_igt_drm_stub, lib_igt_tools_stub, math])
>  
>  executable('amd_hdmi_compliance', 'amd_hdmi_compliance.c',
>  	   dependencies : [tool_deps],
> -- 
> 2.53.0
> 

Reviewed-by: Krzysztof Karas <krzysztof.karas@intel.com>

-- 
Best Regards,
Krzysztof

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

* Re: [PATCH i-g-t v3 09/31] lib/igt_halffloat: introduce static sub-library for tools
  2026-07-15 12:15 ` [PATCH i-g-t v3 09/31] lib/igt_halffloat: introduce static sub-library for tools Sebastian Brzezinka
@ 2026-07-16  7:56   ` Krzysztof Karas
  0 siblings, 0 replies; 50+ messages in thread
From: Krzysztof Karas @ 2026-07-16  7:56 UTC (permalink / raw)
  To: Sebastian Brzezinka
  Cc: igt-dev, kamil.konieczny, krzysztof.niemiec, Ashutosh Dixit

Hi Sebastian,

On 2026-07-15 at 14:15:19 +0200, Sebastian Brzezinka wrote:
> Add lib_igt_halffloat backed by igt_halffloat.c with a math dependency.
> Tools that use half-float conversion (e.g. intel_vbt_decode) can link
> this minimal library instead of the full libigt.so.
> 
> Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
> Acked-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
> Reviewed-by: Krzysztof Niemiec <krzysztof.niemiec@intel.com>
> ---
>  lib/meson.build | 8 ++++++++
>  1 file changed, 8 insertions(+)
> 
> diff --git a/lib/meson.build b/lib/meson.build
> index 2c1fbcd43..93db217f8 100644
> --- a/lib/meson.build
> +++ b/lib/meson.build
> @@ -415,6 +415,14 @@ lib_igt_stats_build = static_library('igt_stats_tools',
>  lib_igt_stats = declare_dependency(link_with : lib_igt_stats_build,
>  				   include_directories : inc)
>  
> +lib_igt_halffloat_build = static_library('igt_halffloat',
> +	['igt_halffloat.c'],
> +	include_directories : inc)
> +
> +lib_igt_halffloat = declare_dependency(link_with : lib_igt_halffloat_build,
> +				       dependencies : [math],
> +				       include_directories : inc)
> +
>  i915_perf_files = [
>    'igt_list.c',
>    'i915/perf.c',
> -- 
> 2.53.0
> 

Reviewed-by: Krzysztof Karas <krzysztof.karas@intel.com>

-- 
Best Regards,
Krzysztof

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

* Re: [PATCH i-g-t v3 10/31] lib/i915/intel_decode: replace igt.h with minimal headers
  2026-07-15 12:15 ` [PATCH i-g-t v3 10/31] lib/i915/intel_decode: replace igt.h with minimal headers Sebastian Brzezinka
@ 2026-07-16  8:16   ` Krzysztof Karas
  0 siblings, 0 replies; 50+ messages in thread
From: Krzysztof Karas @ 2026-07-16  8:16 UTC (permalink / raw)
  To: Sebastian Brzezinka
  Cc: igt-dev, kamil.konieczny, krzysztof.niemiec, Ashutosh Dixit

Hi,

On 2026-07-15 at 14:15:20 +0200, Sebastian Brzezinka wrote:
> intel_decode.c only uses two symbols from the IGT: intel_gen()
> and intel_get_device_info(), both provided by intel_chipset.h.
> The DRM_PRINTFLIKE macro used for the instr_out() format attribute is
> provided by xf86drm.h.
> 
> This is a prerequisite for building intel_decode.c into a static
> sub-library (lib_i915_decode) that tools can link without pulling in
> the full libigt.so stack.
> 
> Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
> Acked-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
> Reviewed-by: Krzysztof Niemiec <krzysztof.niemiec@intel.com>
> ---
>  lib/i915/intel_decode.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/lib/i915/intel_decode.c b/lib/i915/intel_decode.c
> index b78993c47..0b404ae53 100644
> --- a/lib/i915/intel_decode.c
> +++ b/lib/i915/intel_decode.c
> @@ -28,8 +28,9 @@
>  #include <stdbool.h>
>  #include <stdarg.h>
>  #include <string.h>
> +#include <xf86drm.h>
>  
> -#include "igt.h"
> +#include "intel_chipset.h"
>  #include "intel_decode.h"
>  
>  /* Struct for tracking intel_decode state. */
> -- 
> 2.53.0
> 

Reviewed-by: Krzysztof Karas <krzysztof.karas@intel.com>

-- 
Best Regards,
Krzysztof

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

* Re: [PATCH i-g-t v3 11/31] lib/i915/intel_decode: introduce static sub-library for tools
  2026-07-15 12:15 ` [PATCH i-g-t v3 11/31] lib/i915/intel_decode: introduce static sub-library for tools Sebastian Brzezinka
@ 2026-07-16  8:26   ` Krzysztof Karas
  0 siblings, 0 replies; 50+ messages in thread
From: Krzysztof Karas @ 2026-07-16  8:26 UTC (permalink / raw)
  To: Sebastian Brzezinka
  Cc: igt-dev, kamil.konieczny, krzysztof.niemiec, Ashutosh Dixit

Hi,

On 2026-07-15 at 14:15:21 +0200, Sebastian Brzezinka wrote:
> Add lib_i915_decode built from i915/intel_decode.c and instdone.c.
> This lets tools like intel_error_decode link only the decode logic
> without pulling in the full libigt.so.
> 
> Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
> Acked-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
> Reviewed-by: Krzysztof Niemiec <krzysztof.niemiec@intel.com>
> ---
>  lib/meson.build | 14 ++++++++++++++
>  1 file changed, 14 insertions(+)
> 
> diff --git a/lib/meson.build b/lib/meson.build
> index 93db217f8..8addc8982 100644
> --- a/lib/meson.build
> +++ b/lib/meson.build
> @@ -423,6 +423,20 @@ lib_igt_halffloat = declare_dependency(link_with : lib_igt_halffloat_build,
>  				       dependencies : [math],
>  				       include_directories : inc)
>  
> +lib_i915_decode_build = static_library('i915_decode',
> +	['i915/intel_decode.c',
> +	 'instdone.c',
> +	],
> +	dependencies : [lib_igt_chipset],
> +	include_directories : inc)
> +
> +lib_i915_decode = declare_dependency(link_with : lib_i915_decode_build,
> +				     dependencies : [lib_igt_chipset,
> +				                     lib_igt_tools_stub,
> +				                     lib_igt_drm_stub,
> +				                     pciaccess],
> +				     include_directories : inc)
> +
>  i915_perf_files = [
>    'igt_list.c',
>    'i915/perf.c',
> -- 
> 2.53.0
> 

Reviewed-by: Krzysztof Karas <krzysztof.karas@intel.com>

-- 
Best Regards,
Krzysztof

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

* Re: [PATCH i-g-t v3 05/31] lib/igt_tools_stub: add stubs needed by tools
  2026-07-16  6:09   ` Krzysztof Karas
@ 2026-07-16 10:13     ` Kamil Konieczny
  2026-07-16 10:25       ` Sebastian Brzezinka
  0 siblings, 1 reply; 50+ messages in thread
From: Kamil Konieczny @ 2026-07-16 10:13 UTC (permalink / raw)
  To: Krzysztof Karas
  Cc: Sebastian Brzezinka, igt-dev, krzysztof.niemiec, Pawel Sikora,
	Ashutosh Dixit

Hi all,
On 2026-07-16 at 06:09:42 +0000, Krzysztof Karas wrote:
> Hi Sebastian,
> 
> On 2026-07-15 at 14:15:15 +0200, Sebastian Brzezinka wrote:
> > Add stubs for functions used by tools when linking without the
> > full libigt.so: __igt_skip_check, igt_exit, igt_debugfs_open and
> > igt_open_forcewake_handle_for_pcidev.
> This patch does more than that: it unifies the comment style in
> the file. This is a nit though, so consider it only if you would
> prepare another version.
> 
> > 
> > Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
> > Acked-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
> > ---
> >  lib/igt_tools_stub.c | 83 ++++++++++++++++++++++++++++++++++++++++----
> >  1 file changed, 76 insertions(+), 7 deletions(-)
> > 
> > diff --git a/lib/igt_tools_stub.c b/lib/igt_tools_stub.c
> > index 9a0ec6217..21dc53f3f 100644
> > --- a/lib/igt_tools_stub.c
> > +++ b/lib/igt_tools_stub.c
> > @@ -21,12 +21,27 @@
> >   * IN THE SOFTWARE.
> >   *
> >   */
> > +#include <fcntl.h>
> > +#include <limits.h>
> > +#include <stdarg.h>
> > +#include <stdio.h>
> > +#include <stdlib.h>
> > +#include <sys/stat.h>
> > +#include <sys/sysmacros.h>
> > +#include <unistd.h>
> > +
> >  #include "igt_core.h"
> > +#include "igt_debugfs.h"
> >  
> > -/* Stub for igt_log, this stub will simply print the msg on stderr device.
> > - * Domain and log level are ignored.
> > +/*
> > + * Forward declaration only - avoids pulling in the heavy igt_gt.h header.
> > + * The type is used as an opaque pointer; this stub always returns -1.
> >   */
> This is a nit, so consider it only if you would prepare another
> version of this series:
> The comment should be moved right before the function declaration.
> > +struct pci_device;
> >  
> > +int igt_open_forcewake_handle_for_pcidev(const struct pci_device *pci_dev);
> > +
> > +/* Stub for igt_log: print message to stderr; domain and log level are ignored. */
> >  void igt_log(const char *domain, enum igt_log_level level, const char *format, ...)

This will be a second documentation for a function.
Question for Pawel: could it be a problem for our documentation generation?
Do we need an exclusion for stub functions?

+cc Pawel Sikora <pawel.sikora@intel.com>

Regards,
Kamil

> >  {
> >  	va_list args;
> > @@ -36,11 +51,7 @@ void igt_log(const char *domain, enum igt_log_level level, const char *format, .
> >  	va_end(args);
> >  }
> >  
> > -
> > -/* Stub for __igt_fail_assert, this stub will simply print the msg on stderr device and
> > - * exit the application, domain and log level are ignored.
> > - */
> > -
> > +/* Stub for __igt_fail_assert: print failed assertion to stderr and exit. */
> >  void __igt_fail_assert(const char *domain, const char *file,
> >  		       const int line, const char *func, const char *assertion,
> >  		       const char *format, ...)
> > @@ -49,3 +60,61 @@ void __igt_fail_assert(const char *domain, const char *file,
> >  		func, assertion);
> >  	exit(1);
> >  }
> > +
> > +/* Stub for __igt_skip_check: print skip reason to stderr and exit with skip code. */
> > +void __igt_skip_check(const char *file, const int line,
> > +		      const char *func, const char *check, const char *format, ...)
> > +{
> > +	fprintf(stderr, "%s: %d %s Skipped: %s", file, line, func, check);
> > +	if (format) {
> > +		va_list args;
> > +
> > +		fprintf(stderr, ": ");
> > +		va_start(args, format);
> > +		vfprintf(stderr, format, args);
> > +		va_end(args);
> > +	}
> > +
> > +	fprintf(stderr, "\n");
> > +	/* IGT_EXIT_SKIP (77) is the exit code igt_core.c uses for skipped tests. */
> > +	exit(IGT_EXIT_SKIP);
> > +}
> > +
> > +/* Stub for igt_exit: tools use exit(0) rather than the full igt teardown sequence. */
> > +__noreturn void igt_exit(void)
> > +{
> > +	exit(0);
> > +}
> > +
> > +/*
> > + * Stub for igt_debugfs_open: open a debugfs entry for a DRM device directly
> > + * by path. device == -1 follows the igt_debugfs_path() convention of
> > + * defaulting to the first DRM device (dri/0). When a valid fd is given, the
> > + * DRM minor is resolved via fstat() so the correct dri/<minor> directory is
> > + * used.
> > + */
> > +int igt_debugfs_open(int device, const char *filename, int mode)
> > +{
> > +	char path[PATH_MAX];
> > +	int drm_minor = 0;
> > +
> > +	if (device >= 0) {
> > +		struct stat st;
> > +
> > +		if (fstat(device, &st) == 0 && S_ISCHR(st.st_mode))
> > +			drm_minor = minor(st.st_rdev);
> > +	}
> > +
> > +	snprintf(path, sizeof(path),
> > +		 "/sys/kernel/debug/dri/%d/%s", drm_minor, filename);
> > +	return open(path, mode);
> > +}
> > +
> > +/*
> > + * Stub for igt_open_forcewake_handle_for_pcidev: in tool context the driver
> > + * keeps the GPU awake; no forcewake handle needed.
> > + */
> > +int igt_open_forcewake_handle_for_pcidev(const struct pci_device *pci_dev)
> > +{
> > +	return -1;
> > +}
> > -- 
> > 2.53.0
> > 
> 
> The code looks good to me:
> Reviewed-by: Krzysztof Karas <krzysztof.karas@intel.com>
> 
> -- 
> Best Regards,
> Krzysztof

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

* Re: [PATCH i-g-t v3 05/31] lib/igt_tools_stub: add stubs needed by tools
  2026-07-16 10:13     ` Kamil Konieczny
@ 2026-07-16 10:25       ` Sebastian Brzezinka
  2026-07-16 12:34         ` Kamil Konieczny
  0 siblings, 1 reply; 50+ messages in thread
From: Sebastian Brzezinka @ 2026-07-16 10:25 UTC (permalink / raw)
  To: Kamil Konieczny, Krzysztof Karas
  Cc: Sebastian Brzezinka, igt-dev, krzysztof.niemiec, Pawel Sikora,
	Ashutosh Dixit

Hi Kamil,

On Thu Jul 16, 2026 at 12:13 PM CEST, Kamil Konieczny wrote:
> Hi all,
> On 2026-07-16 at 06:09:42 +0000, Krzysztof Karas wrote:
>> Hi Sebastian,
>> 
>> On 2026-07-15 at 14:15:15 +0200, Sebastian Brzezinka wrote:
>> > Add stubs for functions used by tools when linking without the
>> > full libigt.so: __igt_skip_check, igt_exit, igt_debugfs_open and
>> > igt_open_forcewake_handle_for_pcidev.
>> This patch does more than that: it unifies the comment style in
>> the file. This is a nit though, so consider it only if you would
>> prepare another version.
>> 
>> > 
>> > Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
>> > Acked-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
>> > ---
>> >  lib/igt_tools_stub.c | 83 ++++++++++++++++++++++++++++++++++++++++----
>> >  1 file changed, 76 insertions(+), 7 deletions(-)
>> > 
>> > diff --git a/lib/igt_tools_stub.c b/lib/igt_tools_stub.c
>> > index 9a0ec6217..21dc53f3f 100644
>> > --- a/lib/igt_tools_stub.c
>> > +++ b/lib/igt_tools_stub.c
>> > @@ -21,12 +21,27 @@
>> >   * IN THE SOFTWARE.
>> >   *
>> >   */
>> > +#include <fcntl.h>
>> > +#include <limits.h>
>> > +#include <stdarg.h>
>> > +#include <stdio.h>
>> > +#include <stdlib.h>
>> > +#include <sys/stat.h>
>> > +#include <sys/sysmacros.h>
>> > +#include <unistd.h>
>> > +
>> >  #include "igt_core.h"
>> > +#include "igt_debugfs.h"
>> >  
>> > -/* Stub for igt_log, this stub will simply print the msg on stderr device.
>> > - * Domain and log level are ignored.
>> > +/*
>> > + * Forward declaration only - avoids pulling in the heavy igt_gt.h header.
>> > + * The type is used as an opaque pointer; this stub always returns -1.
>> >   */
>> This is a nit, so consider it only if you would prepare another
>> version of this series:
>> The comment should be moved right before the function declaration.
>> > +struct pci_device;
>> >  
>> > +int igt_open_forcewake_handle_for_pcidev(const struct pci_device *pci_dev);
>> > +
>> > +/* Stub for igt_log: print message to stderr; domain and log level are ignored. */
>> >  void igt_log(const char *domain, enum igt_log_level level, const char *format, ...)
>
> This will be a second documentation for a function.
> Question for Pawel: could it be a problem for our documentation generation?
> Do we need an exclusion for stub functions?
For what it's worth, this documentation style was already there. It's
not my invention, so it should be ok, as long as the previous comments
don't break the docs build.

-- 
Best regards,
Sebastian


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

* Re: [PATCH i-g-t v3 05/31] lib/igt_tools_stub: add stubs needed by tools
  2026-07-16 10:25       ` Sebastian Brzezinka
@ 2026-07-16 12:34         ` Kamil Konieczny
  0 siblings, 0 replies; 50+ messages in thread
From: Kamil Konieczny @ 2026-07-16 12:34 UTC (permalink / raw)
  To: Sebastian Brzezinka
  Cc: Krzysztof Karas, igt-dev, krzysztof.niemiec, Pawel Sikora,
	Ashutosh Dixit

Hi Sebastian,
On 2026-07-16 at 12:25:17 +0200, Sebastian Brzezinka wrote:
> Hi Kamil,
> 
> On Thu Jul 16, 2026 at 12:13 PM CEST, Kamil Konieczny wrote:
> > Hi all,
> > On 2026-07-16 at 06:09:42 +0000, Krzysztof Karas wrote:
> >> Hi Sebastian,
> >> 
> >> On 2026-07-15 at 14:15:15 +0200, Sebastian Brzezinka wrote:
> >> > Add stubs for functions used by tools when linking without the
> >> > full libigt.so: __igt_skip_check, igt_exit, igt_debugfs_open and
> >> > igt_open_forcewake_handle_for_pcidev.
> >> This patch does more than that: it unifies the comment style in
> >> the file. This is a nit though, so consider it only if you would
> >> prepare another version.
> >> 
> >> > 
> >> > Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
> >> > Acked-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
> >> > ---
> >> >  lib/igt_tools_stub.c | 83 ++++++++++++++++++++++++++++++++++++++++----
> >> >  1 file changed, 76 insertions(+), 7 deletions(-)
> >> > 
> >> > diff --git a/lib/igt_tools_stub.c b/lib/igt_tools_stub.c
> >> > index 9a0ec6217..21dc53f3f 100644
> >> > --- a/lib/igt_tools_stub.c
> >> > +++ b/lib/igt_tools_stub.c
> >> > @@ -21,12 +21,27 @@
> >> >   * IN THE SOFTWARE.
> >> >   *
> >> >   */
> >> > +#include <fcntl.h>
> >> > +#include <limits.h>
> >> > +#include <stdarg.h>
> >> > +#include <stdio.h>
> >> > +#include <stdlib.h>
> >> > +#include <sys/stat.h>
> >> > +#include <sys/sysmacros.h>
> >> > +#include <unistd.h>
> >> > +
> >> >  #include "igt_core.h"
> >> > +#include "igt_debugfs.h"
> >> >  
> >> > -/* Stub for igt_log, this stub will simply print the msg on stderr device.
> >> > - * Domain and log level are ignored.
> >> > +/*
> >> > + * Forward declaration only - avoids pulling in the heavy igt_gt.h header.
> >> > + * The type is used as an opaque pointer; this stub always returns -1.
> >> >   */
> >> This is a nit, so consider it only if you would prepare another
> >> version of this series:
> >> The comment should be moved right before the function declaration.
> >> > +struct pci_device;
> >> >  
> >> > +int igt_open_forcewake_handle_for_pcidev(const struct pci_device *pci_dev);
> >> > +
> >> > +/* Stub for igt_log: print message to stderr; domain and log level are ignored. */
> >> >  void igt_log(const char *domain, enum igt_log_level level, const char *format, ...)
> >
> > This will be a second documentation for a function.
> > Question for Pawel: could it be a problem for our documentation generation?
> > Do we need an exclusion for stub functions?
> For what it's worth, this documentation style was already there. It's
> not my invention, so it should be ok, as long as the previous comments
> don't break the docs build.
> 

Yes, it is not a blocker, I just wanted to point out that doc
generation could need some adjustments.

Regards,
Kamil


> -- 
> Best regards,
> Sebastian
> 

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

* Re: [PATCH i-g-t v3 12/31] lib/intel_mmio: introduce lib_igt_reg_tools static sub-library for tools
  2026-07-15 12:15 ` [PATCH i-g-t v3 12/31] lib/intel_mmio: introduce lib_igt_reg_tools " Sebastian Brzezinka
@ 2026-07-16 13:27   ` Krzysztof Karas
  0 siblings, 0 replies; 50+ messages in thread
From: Krzysztof Karas @ 2026-07-16 13:27 UTC (permalink / raw)
  To: Sebastian Brzezinka
  Cc: igt-dev, kamil.konieczny, krzysztof.niemiec, Ashutosh Dixit

Hi Sebastian,

On 2026-07-15 at 14:15:22 +0200, Sebastian Brzezinka wrote:
> Add lib_igt_reg_tools built from intel_mmio.c, intel_reg_map.c and
> intel_iosf.c.  Tools that need register access (e.g. intel_reg) can link
> this library without pulling in the full libigt.so.
> 
> Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
> Acked-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
> Reviewed-by: Krzysztof Niemiec <krzysztof.niemiec@intel.com>
> ---
>  lib/meson.build | 15 +++++++++++++++
>  1 file changed, 15 insertions(+)
> 
> diff --git a/lib/meson.build b/lib/meson.build
> index 8addc8982..aa8eae68b 100644
> --- a/lib/meson.build
> +++ b/lib/meson.build
> @@ -437,6 +437,21 @@ lib_i915_decode = declare_dependency(link_with : lib_i915_decode_build,
>  				                     pciaccess],
>  				     include_directories : inc)
>  
> +lib_igt_reg_tools_build = static_library('igt_reg_tools',
> +	['intel_mmio.c',
> +	 'intel_reg_map.c',
> +	 'intel_iosf.c',
> +	],
> +	dependencies : [pciaccess, libdrm],
> +	include_directories : inc)
> +
> +lib_igt_reg_tools = declare_dependency(link_with : lib_igt_reg_tools_build,
> +				       dependencies : [lib_igt_chipset,
> +				                       lib_igt_tools_stub,
> +				                       lib_igt_drm_stub,
> +				                       pciaccess, libdrm],
> +				       include_directories : inc)
> +
>  i915_perf_files = [
>    'igt_list.c',
>    'i915/perf.c',
> -- 
> 2.53.0
> 

Reviewed-by: Krzysztof Karas <krzysztof.karas@intel.com>

-- 
Best Regards,
Krzysztof

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

* Re: [PATCH i-g-t v3 13/31] tools/intel_gpu_frequency: link with minimal sub-libraries
  2026-07-15 12:15 ` [PATCH i-g-t v3 13/31] tools/intel_gpu_frequency: link with minimal sub-libraries Sebastian Brzezinka
@ 2026-07-16 13:34   ` Krzysztof Karas
  0 siblings, 0 replies; 50+ messages in thread
From: Krzysztof Karas @ 2026-07-16 13:34 UTC (permalink / raw)
  To: Sebastian Brzezinka
  Cc: igt-dev, kamil.konieczny, krzysztof.niemiec, Ashutosh Dixit

Hi Sebastian,

On 2026-07-15 at 14:15:23 +0200, Sebastian Brzezinka wrote:
> intel_gpu_frequency needs only intel_gen/devid helpers and a DRM device
> opener to query the GPU frequency.  Link it against lib_igt_chipset for
> the devid helpers and lib_igt_drm_stub for driver detection and device
> opening, instead of the full libigt.so stack.
> 
> ldd before: 35  (ldd intel_gpu_frequency | wc -l)
> ldd after:   5  (ldd intel_gpu_frequency | wc -l)
> 
> Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
> Acked-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
> Reviewed-by: Krzysztof Niemiec <krzysztof.niemiec@intel.com>
> ---
>  tools/meson.build | 6 +++++-
>  1 file changed, 5 insertions(+), 1 deletion(-)
> 
> diff --git a/tools/meson.build b/tools/meson.build
> index 53aa31056..01400f53e 100644
> --- a/tools/meson.build
> +++ b/tools/meson.build
> @@ -23,7 +23,6 @@ tools_progs = [
>  	'intel_dump_decode',
>  	'intel_error_decode',
>  	'intel_forcewaked',
> -	'intel_gpu_frequency',
>  	'intel_framebuffer_dump',
>  	'intel_gpu_time',
>  	'intel_gtt',
> @@ -66,6 +65,11 @@ executable('intel_firmware_decode', 'intel_firmware_decode.c',
>  	   install_rpath : bindir_rpathdir,
>  	   install : true)
>  
> +executable('intel_gpu_frequency', 'intel_gpu_frequency.c',
> +	   dependencies : [lib_igt_chipset, lib_igt_tools_stub, lib_igt_drm_stub],
> +	   install_rpath : bindir_rpathdir,
> +	   install : true)
> +
>  if libudev.found()
>  	intel_dp_compliance_src = [
>  		'intel_dp_compliance.c',
> -- 
> 2.53.0
> 

Reviewed-by: Krzysztof Karas <krzysztof.karas@intel.com>

-- 
Best Regards,
Krzysztof

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

* Re: [PATCH i-g-t v3 30/31] lib/igt_core: move igt_load_igtrc to igt_device_scan
  2026-07-15 12:15 ` [PATCH i-g-t v3 30/31] lib/igt_core: move igt_load_igtrc to igt_device_scan Sebastian Brzezinka
@ 2026-07-16 14:08   ` Kamil Konieczny
  0 siblings, 0 replies; 50+ messages in thread
From: Kamil Konieczny @ 2026-07-16 14:08 UTC (permalink / raw)
  To: Sebastian Brzezinka
  Cc: igt-dev, krzysztof.karas, krzysztof.niemiec, Mark Yacoub,
	Ashutosh Dixit

Hi Sebastian,
On 2026-07-15 at 14:15:40 +0200, Sebastian Brzezinka wrote:
> igt_load_igtrc() is used exclusively by igt_device_scan internals to read
> per-device configuration from the igtrc file.  Moving it from igt_core.c
> to igt_device_scan.c co-locates the function with its primary user and
> makes it possible for lsgpu to link against lib_igt_device_scan without
> needing the rest of libigt.
> 
> Update the declaration accordingly: remove from igt_core.h and add to
> igt_device_scan.h where the implementation now lives.
> 
> Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
> Acked-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
> ---
>  lib/igt_core.c        | 47 ------------------------------------------
>  lib/igt_core.h        |  2 --
>  lib/igt_device_scan.c | 48 +++++++++++++++++++++++++++++++++++++++++++
>  lib/igt_device_scan.h |  2 ++
>  runner/executor.c     |  1 +

If this is used by igt_runner, maybe more proper solution
would be to move it to separate lib/igt_igtrc.[c|h]?

Look also into https://patchwork.freedesktop.org/series/170509/
with reimplementation of reading INI files

+cc Mark Yacoub <markyacoub@google.com>

Regards,
Kamil

>  5 files changed, 51 insertions(+), 49 deletions(-)
> 
> diff --git a/lib/igt_core.c b/lib/igt_core.c
> index a7c097d9e..2f737b01a 100644
> --- a/lib/igt_core.c
> +++ b/lib/igt_core.c
> @@ -972,53 +972,6 @@ static void oom_adjust_for_doom(void)
>  
>  }
>  
> -/**
> - * load_igtrc:
> - *
> - * Load .igtrc from the path pointed to by #IGT_CONFIG_PATH or from
> - * home directory if that is not set. The returned keyfile needs to be
> - * deallocated using g_key_file_free().
> - *
> - * Returns: Pointer to the keyfile, NULL on error.
> - */
> -GKeyFile *igt_load_igtrc(void)
> -{
> -	char *key_file_env = NULL;
> -	char *key_file_loc = NULL;
> -	GError *error = NULL;
> -	GKeyFile *file;
> -	int ret;
> -
> -	/* Determine igt config path */
> -	key_file_env = getenv("IGT_CONFIG_PATH");
> -	if (key_file_env) {
> -		key_file_loc = key_file_env;
> -	} else {
> -		key_file_loc = malloc(100);
> -		snprintf(key_file_loc, 100, "%s/.igtrc", g_get_home_dir());
> -	}
> -
> -	/* Load igt config file */
> -	file = g_key_file_new();
> -	ret = g_key_file_load_from_file(file, key_file_loc,
> -					G_KEY_FILE_NONE, &error);
> -	if (!ret) {
> -		g_error_free(error);
> -		g_key_file_free(file);
> -		file = NULL;
> -
> -		goto out;
> -	}
> -
> -	g_clear_error(&error);
> -
> - out:
> -	if (!key_file_env && key_file_loc)
> -		free(key_file_loc);
> -
> -	return file;
> -}
> -
>  static void common_init_config(void)
>  {
>  	GError *error = NULL;
> diff --git a/lib/igt_core.h b/lib/igt_core.h
> index 3337293bc..afaf35aa8 100644
> --- a/lib/igt_core.h
> +++ b/lib/igt_core.h
> @@ -95,8 +95,6 @@ extern const char* __igt_test_description __attribute__((weak));
>  extern bool __igt_plain_output;
>  extern char *igt_frame_dump_path;
>  
> -struct _GKeyFile *igt_load_igtrc(void);
> -
>  /**
>   * IGT_TEST_DESCRIPTION:
>   * @str: description string
> diff --git a/lib/igt_device_scan.c b/lib/igt_device_scan.c
> index 7c7995224..a15a4624e 100644
> --- a/lib/igt_device_scan.c
> +++ b/lib/igt_device_scan.c
> @@ -33,6 +33,7 @@
>  #include <ctype.h>
>  #include <dirent.h>
>  #include <fcntl.h>
> +#include <glib.h>
>  #include <libudev.h>
>  #ifdef __linux__
>  #include <linux/limits.h>
> @@ -2477,3 +2478,50 @@ int igt_device_prepare_filtered_view(const char *vendor)
>  
>  	return gpu_count;
>  }
> +
> +/**
> + * igt_load_igtrc:
> + *
> + * Load .igtrc from the path pointed to by #IGT_CONFIG_PATH or from
> + * home directory if that is not set. The returned keyfile needs to be
> + * deallocated using g_key_file_free().
> + *
> + * Returns: Pointer to the keyfile, NULL on error.
> + */
> +GKeyFile *igt_load_igtrc(void)
> +{
> +	char *key_file_env = NULL;
> +	char *key_file_loc = NULL;
> +	GError *error = NULL;
> +	GKeyFile *file;
> +	int ret;
> +
> +	/* Determine igt config path */
> +	key_file_env = getenv("IGT_CONFIG_PATH");
> +	if (key_file_env) {
> +		key_file_loc = key_file_env;
> +	} else {
> +		key_file_loc = malloc(100);
> +		snprintf(key_file_loc, 100, "%s/.igtrc", g_get_home_dir());
> +	}
> +
> +	/* Load igt config file */
> +	file = g_key_file_new();
> +	ret = g_key_file_load_from_file(file, key_file_loc,
> +					G_KEY_FILE_NONE, &error);
> +	if (!ret) {
> +		g_error_free(error);
> +		g_key_file_free(file);
> +		file = NULL;
> +
> +		goto out;
> +	}
> +
> +	g_clear_error(&error);
> +
> + out:
> +	if (!key_file_env && key_file_loc)
> +		free(key_file_loc);
> +
> +	return file;
> +}
> diff --git a/lib/igt_device_scan.h b/lib/igt_device_scan.h
> index f24a193cd..5b04033e3 100644
> --- a/lib/igt_device_scan.h
> +++ b/lib/igt_device_scan.h
> @@ -103,4 +103,6 @@ int igt_open_render(struct igt_device_card *card);
>  /* Add or use filters to match multiGPU devices */
>  int igt_device_prepare_filtered_view(const char *vendor);
>  
> +struct _GKeyFile *igt_load_igtrc(void);
> +
>  #endif /* __IGT_DEVICE_SCAN_H__ */
> diff --git a/runner/executor.c b/runner/executor.c
> index a8907c575..a2cf517df 100644
> --- a/runner/executor.c
> +++ b/runner/executor.c
> @@ -35,6 +35,7 @@
>  
>  #include "igt_aux.h"
>  #include "igt_core.h"
> +#include "igt_device_scan.h"
>  #include "igt_facts.h"
>  #include "igt_taints.h"
>  #include "igt_vec.h"
> -- 
> 2.53.0
> 

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

end of thread, other threads:[~2026-07-16 14:19 UTC | newest]

Thread overview: 50+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-07-15 12:15 [PATCH i-g-t v3 00/31] tools: remove unnecessary shared library dependencies from standalone tools Sebastian Brzezinka
2026-07-15 12:15 ` [PATCH i-g-t v3 01/31] lib/igt_tools_stub: introduce static sub-library for tools Sebastian Brzezinka
2026-07-15 12:15 ` [PATCH i-g-t v3 02/31] lib/igt_stats: " Sebastian Brzezinka
2026-07-15 12:15 ` [PATCH i-g-t v3 03/31] tools/igt_stats: link with minimal sub-libraries Sebastian Brzezinka
2026-07-15 12:15 ` [PATCH i-g-t v3 04/31] tools/intel_firmware_decode: " Sebastian Brzezinka
2026-07-16  7:29   ` Krzysztof Karas
2026-07-15 12:15 ` [PATCH i-g-t v3 05/31] lib/igt_tools_stub: add stubs needed by tools Sebastian Brzezinka
2026-07-16  6:09   ` Krzysztof Karas
2026-07-16 10:13     ` Kamil Konieczny
2026-07-16 10:25       ` Sebastian Brzezinka
2026-07-16 12:34         ` Kamil Konieczny
2026-07-15 12:15 ` [PATCH i-g-t v3 06/31] lib/igt_drm_stub: introduce for tools needing driver detection Sebastian Brzezinka
2026-07-16  7:28   ` Krzysztof Karas
2026-07-15 12:15 ` [PATCH i-g-t v3 07/31] lib/igt_device_scan: wire to use static sub-libraries Sebastian Brzezinka
2026-07-16  7:40   ` Krzysztof Karas
2026-07-15 12:15 ` [PATCH i-g-t v3 08/31] tools/intel_gpu_top: add explicit drm/tools-stub deps Sebastian Brzezinka
2026-07-16  7:43   ` Krzysztof Karas
2026-07-15 12:15 ` [PATCH i-g-t v3 09/31] lib/igt_halffloat: introduce static sub-library for tools Sebastian Brzezinka
2026-07-16  7:56   ` Krzysztof Karas
2026-07-15 12:15 ` [PATCH i-g-t v3 10/31] lib/i915/intel_decode: replace igt.h with minimal headers Sebastian Brzezinka
2026-07-16  8:16   ` Krzysztof Karas
2026-07-15 12:15 ` [PATCH i-g-t v3 11/31] lib/i915/intel_decode: introduce static sub-library for tools Sebastian Brzezinka
2026-07-16  8:26   ` Krzysztof Karas
2026-07-15 12:15 ` [PATCH i-g-t v3 12/31] lib/intel_mmio: introduce lib_igt_reg_tools " Sebastian Brzezinka
2026-07-16 13:27   ` Krzysztof Karas
2026-07-15 12:15 ` [PATCH i-g-t v3 13/31] tools/intel_gpu_frequency: link with minimal sub-libraries Sebastian Brzezinka
2026-07-16 13:34   ` Krzysztof Karas
2026-07-15 12:15 ` [PATCH i-g-t v3 14/31] tools/intel_stepping: " Sebastian Brzezinka
2026-07-15 12:15 ` [PATCH i-g-t v3 15/31] tools/intel_gtt: " Sebastian Brzezinka
2026-07-15 12:15 ` [PATCH i-g-t v3 16/31] tools/intel_dump_decode: " Sebastian Brzezinka
2026-07-15 12:15 ` [PATCH i-g-t v3 17/31] tools/intel_error_decode: " Sebastian Brzezinka
2026-07-15 12:15 ` [PATCH i-g-t v3 18/31] tools/intel_vbt_decode: " Sebastian Brzezinka
2026-07-15 12:15 ` [PATCH i-g-t v3 19/31] tools/intel_backlight: " Sebastian Brzezinka
2026-07-15 12:15 ` [PATCH i-g-t v3 20/31] tools/intel_lid: " Sebastian Brzezinka
2026-07-15 12:15 ` [PATCH i-g-t v3 21/31] tools/intel_gpu_time: " Sebastian Brzezinka
2026-07-15 12:15 ` [PATCH i-g-t v3 22/31] tools/intel_audio_dump: " Sebastian Brzezinka
2026-07-15 12:15 ` [PATCH i-g-t v3 23/31] tools/intel_forcewaked: " Sebastian Brzezinka
2026-07-15 12:15 ` [PATCH i-g-t v3 24/31] tools/intel_guc_logger: " Sebastian Brzezinka
2026-07-15 12:15 ` [PATCH i-g-t v3 25/31] tools/intel_infoframes: " Sebastian Brzezinka
2026-07-15 12:15 ` [PATCH i-g-t v3 26/31] tools/intel_panel_fitter: " Sebastian Brzezinka
2026-07-15 12:15 ` [PATCH i-g-t v3 27/31] tools/intel_watermark: " Sebastian Brzezinka
2026-07-15 12:15 ` [PATCH i-g-t v3 28/31] tools/intel_display_poller: " Sebastian Brzezinka
2026-07-15 12:15 ` [PATCH i-g-t v3 29/31] tools/intel_gvtg_test: " Sebastian Brzezinka
2026-07-15 12:15 ` [PATCH i-g-t v3 30/31] lib/igt_core: move igt_load_igtrc to igt_device_scan Sebastian Brzezinka
2026-07-16 14:08   ` Kamil Konieczny
2026-07-15 12:15 ` [PATCH i-g-t v3 31/31] tools/lsgpu: link with minimal sub-libraries Sebastian Brzezinka
2026-07-15 16:00 ` ✓ Xe.CI.BAT: success for tools: remove unnecessary shared library dependencies from standalone tools Patchwork
2026-07-15 16:56 ` ✓ i915.CI.BAT: " Patchwork
2026-07-15 19:27 ` ✓ Xe.CI.FULL: " Patchwork
2026-07-15 22:53 ` ✗ i915.CI.Full: failure " Patchwork

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox