* [PATCH i-g-t v10 0/5] Close any open drm device after engine initialization in GPUTOP
@ 2026-04-06 6:04 Soham Purkait
2026-04-06 6:04 ` [PATCH i-g-t v10 1/5] tools: Rename tools/gputop to tools/gputop.src Soham Purkait
` (8 more replies)
0 siblings, 9 replies; 15+ messages in thread
From: Soham Purkait @ 2026-04-06 6:04 UTC (permalink / raw)
To: igt-dev, riana.tauro, badal.nilawar, kamil.konieczny,
vinay.belgaumkar
Cc: anshuman.gupta, soham.purkait, tvrtko.ursulin, tursulin,
lucas.de.marchi
During engine initialization for a specific device, the helper
functions require an open card_fd to query engines and configurations
needed to compute engine busyness via PMU. However, KMS tests require
that no other DRM client be active, and keeping card_fd open causes
gputop to appear as a DRM client. Therefore, card_fd is closed immediately
after discovery.
Additionally, this patch removes the lib/xe/* dependency and perform
engine discovery using direct ioctl calls, simplifying the implementation
and reducing external dependencies, while also providing a fallback to
report only client busyness when engine busyness counters are not
accessible to non-root users.
GPUTOP engine busyness is also capable of running without superuser
access through setting CAP_PERFMON or an appropriate perf_event_paranoid
setting, Otherwise user could continue with only GPU client busyness if
required.
Steps to enable engine busyness to run without root (using CAP_PERFMON):
$ cd /path/to/igt-gpu-tools/
$ sudo setcap cap_perfmon=+ep $(pwd)/build/tools/gputop
$ sudo sh -c "echo $(pwd)/build/lib > /etc/ld.so.conf.d/lib-igt.conf"
$ sudo ldconfig
Steps to revert once done:
$ sudo setcap cap_perfmon=-ep $(pwd)/build/tools/gputop
$ sudo rm /etc/ld.so.conf.d/lib-igt.conf
$ sudo ldconfig
Steps to enable engine busyness to run without root (using perf_event_paranoid):
# Save current value
$ orig_val=$(sysctl -n kernel.perf_event_paranoid)
# Set the value to allow running GPUTOP without root privileges
$ sudo sysctl -w kernel.perf_event_paranoid=-1
Steps to revert once done:
$ sudo sysctl -w kernel.perf_event_paranoid=$orig_val
Cc: Tvrtko Ursulin <tvrtko.ursulin@igalia.com>
Cc: Tvrtko Ursulin <tursulin@ursulin.net>
Cc: Kamil Konieczny <kamil.konieczny@intel.com>
Cc: Vinay Belgaumkar <vinay.belgaumkar@intel.com>
Cc: Lucas De Marchi <lucas.de.marchi@gmail.com>
Soham Purkait (5):
tools: Rename tools/gputop to tools/gputop.src
tools/gputop.src/utils: Add clamp macro to remove dependency on
lib/xe/*
tools/gputop.src/xe_gputop: Use direct ioctls with card_fd cleanup
tools/gputop.src/gputop: Add support for per-engine busyness
monitoring
tools/gputop.src/gputop: Add command line option for device filter
tools/{ => gputop.src}/gputop.c | 311 ++++++++++++++++++++---
tools/gputop.src/meson.build | 1 +
tools/{gputop => gputop.src}/utils.c | 0
tools/{gputop => gputop.src}/utils.h | 15 +-
tools/{gputop => gputop.src}/xe_gputop.c | 150 ++++++++---
tools/{gputop => gputop.src}/xe_gputop.h | 8 +-
tools/meson.build | 12 +-
7 files changed, 407 insertions(+), 90 deletions(-)
rename tools/{ => gputop.src}/gputop.c (65%)
create mode 100644 tools/gputop.src/meson.build
rename tools/{gputop => gputop.src}/utils.c (100%)
rename tools/{gputop => gputop.src}/utils.h (84%)
rename tools/{gputop => gputop.src}/xe_gputop.c (74%)
rename tools/{gputop => gputop.src}/xe_gputop.h (86%)
--
2.34.1
^ permalink raw reply [flat|nested] 15+ messages in thread
* [PATCH i-g-t v10 1/5] tools: Rename tools/gputop to tools/gputop.src
2026-04-06 6:04 [PATCH i-g-t v10 0/5] Close any open drm device after engine initialization in GPUTOP Soham Purkait
@ 2026-04-06 6:04 ` Soham Purkait
2026-04-07 7:45 ` Jani Nikula
2026-04-06 6:04 ` [PATCH i-g-t v10 2/5] tools/gputop.src/utils: Add clamp macro to remove dependency on lib/xe/* Soham Purkait
` (7 subsequent siblings)
8 siblings, 1 reply; 15+ messages in thread
From: Soham Purkait @ 2026-04-06 6:04 UTC (permalink / raw)
To: igt-dev, riana.tauro, badal.nilawar, kamil.konieczny,
vinay.belgaumkar
Cc: anshuman.gupta, soham.purkait, tvrtko.ursulin, tursulin,
lucas.de.marchi
The GPUTOP source directory is renamed to gputop.src
under tools/ path.
v1:
- Add meson build files accordingly to generate
the binary under tools. (Kamil)
Signed-off-by: Soham Purkait <soham.purkait@intel.com>
Reviewed-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>
---
tools/{ => gputop.src}/gputop.c | 0
tools/gputop.src/meson.build | 1 +
tools/{gputop => gputop.src}/utils.c | 0
tools/{gputop => gputop.src}/utils.h | 0
tools/{gputop => gputop.src}/xe_gputop.c | 0
tools/{gputop => gputop.src}/xe_gputop.h | 0
tools/meson.build | 11 ++++++-----
7 files changed, 7 insertions(+), 5 deletions(-)
rename tools/{ => gputop.src}/gputop.c (100%)
create mode 100644 tools/gputop.src/meson.build
rename tools/{gputop => gputop.src}/utils.c (100%)
rename tools/{gputop => gputop.src}/utils.h (100%)
rename tools/{gputop => gputop.src}/xe_gputop.c (100%)
rename tools/{gputop => gputop.src}/xe_gputop.h (100%)
diff --git a/tools/gputop.c b/tools/gputop.src/gputop.c
similarity index 100%
rename from tools/gputop.c
rename to tools/gputop.src/gputop.c
diff --git a/tools/gputop.src/meson.build b/tools/gputop.src/meson.build
new file mode 100644
index 000000000..ec39f4c7a
--- /dev/null
+++ b/tools/gputop.src/meson.build
@@ -0,0 +1 @@
+gputop_src = files('gputop.c')
diff --git a/tools/gputop/utils.c b/tools/gputop.src/utils.c
similarity index 100%
rename from tools/gputop/utils.c
rename to tools/gputop.src/utils.c
diff --git a/tools/gputop/utils.h b/tools/gputop.src/utils.h
similarity index 100%
rename from tools/gputop/utils.h
rename to tools/gputop.src/utils.h
diff --git a/tools/gputop/xe_gputop.c b/tools/gputop.src/xe_gputop.c
similarity index 100%
rename from tools/gputop/xe_gputop.c
rename to tools/gputop.src/xe_gputop.c
diff --git a/tools/gputop/xe_gputop.h b/tools/gputop.src/xe_gputop.h
similarity index 100%
rename from tools/gputop/xe_gputop.h
rename to tools/gputop.src/xe_gputop.h
diff --git a/tools/meson.build b/tools/meson.build
index 8185ba160..521607a4c 100644
--- a/tools/meson.build
+++ b/tools/meson.build
@@ -70,11 +70,6 @@ if libudev.found()
install : true)
endif
-executable('gputop', 'gputop.c',
- install : true,
- install_rpath : bindir_rpathdir,
- dependencies : [lib_igt_drm_clients,lib_igt_drm_fdinfo,lib_igt_profiling,math])
-
intel_l3_parity_src = [ 'intel_l3_parity.c', 'intel_l3_udev_listener.c' ]
executable('intel_l3_parity', sources : intel_l3_parity_src,
dependencies : tool_deps,
@@ -123,3 +118,9 @@ endif
subdir('i915-perf')
subdir('xe-perf')
subdir('null_state_gen')
+
+subdir('gputop.src')
+executable('gputop', sources : gputop_src,
+ install : true,
+ install_rpath : bindir_rpathdir,
+ dependencies : [lib_igt_drm_clients,lib_igt_drm_fdinfo,lib_igt_profiling,math],)
--
2.34.1
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH i-g-t v10 2/5] tools/gputop.src/utils: Add clamp macro to remove dependency on lib/xe/*
2026-04-06 6:04 [PATCH i-g-t v10 0/5] Close any open drm device after engine initialization in GPUTOP Soham Purkait
2026-04-06 6:04 ` [PATCH i-g-t v10 1/5] tools: Rename tools/gputop to tools/gputop.src Soham Purkait
@ 2026-04-06 6:04 ` Soham Purkait
2026-04-06 6:04 ` [PATCH i-g-t v10 3/5] tools/gputop.src/xe_gputop: Use direct ioctls with card_fd cleanup Soham Purkait
` (6 subsequent siblings)
8 siblings, 0 replies; 15+ messages in thread
From: Soham Purkait @ 2026-04-06 6:04 UTC (permalink / raw)
To: igt-dev, riana.tauro, badal.nilawar, kamil.konieczny,
vinay.belgaumkar
Cc: anshuman.gupta, soham.purkait, tvrtko.ursulin, tursulin,
lucas.de.marchi
Add clamp helper macro to utils.h to remove dependency on lib/xe/*
Signed-off-by: Soham Purkait <soham.purkait@intel.com>
Reviewed-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>
---
tools/gputop.src/utils.h | 15 ++++++++++++---
1 file changed, 12 insertions(+), 3 deletions(-)
diff --git a/tools/gputop.src/utils.h b/tools/gputop.src/utils.h
index 00befed56..981c23bb0 100644
--- a/tools/gputop.src/utils.h
+++ b/tools/gputop.src/utils.h
@@ -1,12 +1,11 @@
/* SPDX-License-Identifier: MIT */
/*
- * Copyright © 2025 Intel Corporation
+ * Copyright © 2025-2026 Intel Corporation
*/
#ifndef COMMON_GPUTOP_H
#define COMMON_GPUTOP_H
-#include <glib.h>
#include <math.h>
#include <stdbool.h>
#include <stdio.h>
@@ -19,6 +18,16 @@
#define PERCLIENT_ENGINE_WIDTH 8
+#ifndef clamp
+#define clamp(val, lo, hi) \
+({ \
+ __typeof__(val) _v = (val); \
+ __typeof__(lo) _lo = (lo); \
+ __typeof__(hi) _hi = (hi); \
+ _v < _lo ? _lo : (_v > _hi ? _hi : _v); \
+})
+#endif
+
/**
* struct gputop_driver
*
@@ -50,7 +59,7 @@ struct device_operations {
struct igt_device_card *card);
void *(*init_engines)(const void *obj, int index);
int (*pmu_init)(const void *obj, int index);
- void (*pmu_sample)(const void *obj, int index);
+ int (*pmu_sample)(const void *obj, int index);
int (*print_engines)(const void *obj, int index, int lines,
int w, int h);
void (*clean_up)(void *obj, int len);
--
2.34.1
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH i-g-t v10 3/5] tools/gputop.src/xe_gputop: Use direct ioctls with card_fd cleanup
2026-04-06 6:04 [PATCH i-g-t v10 0/5] Close any open drm device after engine initialization in GPUTOP Soham Purkait
2026-04-06 6:04 ` [PATCH i-g-t v10 1/5] tools: Rename tools/gputop to tools/gputop.src Soham Purkait
2026-04-06 6:04 ` [PATCH i-g-t v10 2/5] tools/gputop.src/utils: Add clamp macro to remove dependency on lib/xe/* Soham Purkait
@ 2026-04-06 6:04 ` Soham Purkait
2026-04-06 6:04 ` [PATCH i-g-t v10 4/5] tools/gputop.src/gputop: Add support for per-engine busyness monitoring Soham Purkait
` (5 subsequent siblings)
8 siblings, 0 replies; 15+ messages in thread
From: Soham Purkait @ 2026-04-06 6:04 UTC (permalink / raw)
To: igt-dev, riana.tauro, badal.nilawar, kamil.konieczny,
vinay.belgaumkar
Cc: anshuman.gupta, soham.purkait, tvrtko.ursulin, tursulin,
lucas.de.marchi
During xe engine initialization, card_fd is needed to query engines
and obtain PMU busyness configuration, but keeping it open makes the
process appear as a DRM client, which conflicts with KMS test
requirements. To avoid this, close card_fd once engine discovery is
complete and replace the lib/xe/* dependency with direct ioctl calls,
simplifying the implementation and reducing IGT test library dependencies.
v1:
- Initialize pmu_device_obj to null.
v2:
- Remove dependency on lib/xe/* libraries. (Kamil)
v3:
- Refactor ioctl failure check. (Vinay)
- Check q.size only once. (Vinay)
- Add num_bytes for asprintf return value. (Vinay)
v4:
- Replace malloc/memset with calloc. (Vinay)
- Refactor the commit message to make it concise. (Kamil)
Fixes: c8106465683f ("tools/gputop/xe_gputop: Add gputop support for xe specific devices")
Signed-off-by: Soham Purkait <soham.purkait@intel.com>
Reviewed-by: Vinay Belgaumkar <vinay.belgaumkar@intel.com>
---
tools/gputop.src/xe_gputop.c | 150 ++++++++++++++++++++++++++---------
tools/gputop.src/xe_gputop.h | 8 +-
2 files changed, 115 insertions(+), 43 deletions(-)
diff --git a/tools/gputop.src/xe_gputop.c b/tools/gputop.src/xe_gputop.c
index bb2caa6ea..30f9c593f 100644
--- a/tools/gputop.src/xe_gputop.c
+++ b/tools/gputop.src/xe_gputop.c
@@ -1,8 +1,11 @@
// SPDX-License-Identifier: MIT
/*
- * Copyright © 2025 Intel Corporation
+ * Copyright © 2025-2026 Intel Corporation
*/
+#include <sys/ioctl.h>
+
+#include "igt_perf.h"
#include "xe_gputop.h"
#define engine_ptr(pmu_device, n) (&(pmu_device)->engine + (n))
@@ -65,7 +68,7 @@ void xe_clean_up(void *obj, int len)
}
if (gputop_dev[i].pmu_device_obj->device)
free(gputop_dev[i].pmu_device_obj->device);
- free(gputop_dev->pmu_device_obj);
+ free(gputop_dev[i].pmu_device_obj);
}
}
}
@@ -92,6 +95,7 @@ void xe_gputop_init(void *ptr, int index,
obj = ((struct xe_gputop *)ptr) + index;
obj->card = card;
+ obj->pmu_device_obj = NULL;
}
static int pmu_format_shift(int xe, const char *name)
@@ -121,20 +125,50 @@ static int engine_cmp(const void *__a, const void *__b)
return a->drm_xe_engine.engine_instance - b->drm_xe_engine.engine_instance;
}
+static int engine_query(int fd, struct drm_xe_query_engines **engine_q)
+{
+ struct drm_xe_device_query q;
+ int ret = 0, num_eng;
+
+ memset(&q, 0, sizeof(q));
+ q.query = DRM_XE_DEVICE_QUERY_ENGINES;
+
+ ret = ioctl(fd, DRM_IOCTL_XE_DEVICE_QUERY, &q);
+ if (ret != 0 || q.size == 0)
+ return 0;
+
+ num_eng = (int)((q.size - sizeof(struct drm_xe_query_engines)) /
+ sizeof(struct drm_xe_engine_class_instance));
+
+ *engine_q = (struct drm_xe_query_engines *)calloc(1, q.size);
+ if (!*engine_q)
+ return -1;
+
+ q.data = (uintptr_t)(*engine_q);
+
+ ret = ioctl(fd, DRM_IOCTL_XE_DEVICE_QUERY, &q);
+ if (ret != 0) {
+ free(*engine_q);
+ return -1;
+ }
+
+ return num_eng;
+}
+
void *xe_populate_engines(const void *obj, int index)
{
struct xe_gputop *ptr = ((struct xe_gputop *)obj) + index;
struct igt_device_card *card = ptr->card;
uint64_t engine_active_config, engine_total_config;
uint64_t engine_class, engine_instance, gt_shift;
- struct drm_xe_engine_class_instance *hwe;
- struct xe_pmu_device *engines;
+ struct drm_xe_query_engines *engine_q = NULL;
+ struct xe_pmu_device *engines = NULL;
char device[30];
- int ret = 0;
- int card_fd;
+ int ret = 0, num_eng;
+ int card_fd = -1;
- if (!card || !strlen(card->card) || !strlen(card->render))
- return NULL;
+ if (!card || (!strlen(card->card) && !strlen(card->render)))
+ goto err;
if (strlen(card->card)) {
card_fd = igt_open_card(card);
@@ -142,39 +176,53 @@ void *xe_populate_engines(const void *obj, int index)
card_fd = igt_open_render(card);
} else {
fprintf(stderr, "Failed to detect device!\n");
- return NULL;
+ goto err;
+ }
+
+ num_eng = engine_query(card_fd, &engine_q);
+ if (num_eng <= 0) {
+ fprintf(stderr, "Engine query failed!\n");
+ goto err;
}
- xe_device_get(card_fd);
- engines = malloc(sizeof(struct xe_pmu_device) +
- xe_number_engines(card_fd) * sizeof(struct xe_engine));
- if (!engines)
- return NULL;
- memset(engines, 0, sizeof(struct xe_pmu_device) +
- xe_number_engines(card_fd) * sizeof(struct xe_engine));
+ engines = calloc(1, sizeof(struct xe_pmu_device) +
+ num_eng * sizeof(struct xe_engine));
+ if (!engines)
+ goto err;
engines->num_engines = 0;
gt_shift = pmu_format_shift(card_fd, "gt");
engine_class = pmu_format_shift(card_fd, "engine_class");
engine_instance = pmu_format_shift(card_fd, "engine_instance");
xe_perf_device(card_fd, device, sizeof(device));
+ close(card_fd);
+ card_fd = -1;
+
engines->device = strdup(device);
+ if (!engines->device) {
+ errno = ENOMEM;
+ goto err;
+ }
ret = perf_event_config(device, "engine-active-ticks", &engine_active_config);
if (ret < 0)
- return NULL;
+ goto err;
ret = perf_event_config(device, "engine-total-ticks", &engine_total_config);
if (ret < 0)
- return NULL;
+ goto err;
- xe_for_each_engine(card_fd, hwe) {
+ while (engines->num_engines < engine_q->num_engines) {
+ int num_bytes = 0;
uint64_t param_config;
struct xe_engine *engine;
+ struct drm_xe_engine_class_instance hwe;
+
+ hwe = engine_q->engines[engines->num_engines].instance;
engine = engine_ptr(engines, engines->num_engines);
- param_config = (uint64_t)hwe->gt_id << gt_shift | hwe->engine_class << engine_class
- | hwe->engine_instance << engine_instance;
- engine->drm_xe_engine = *hwe;
+ param_config = (uint64_t)hwe.gt_id << gt_shift | hwe.engine_class << engine_class
+ | hwe.engine_instance << engine_instance;
+ engine->drm_xe_engine = hwe;
engine->engine_active_ticks.config = engine_active_config | param_config;
engine->engine_total_ticks.config = engine_total_config | param_config;
@@ -184,12 +232,12 @@ void *xe_populate_engines(const void *obj, int index)
break;
}
- ret = asprintf(&engine->display_name, "GT:%u %s/%u",
- hwe->gt_id,
- class_display_name(engine->drm_xe_engine.engine_class),
- engine->drm_xe_engine.engine_instance);
+ num_bytes = asprintf(&engine->display_name, "GT:%u %s/%u",
+ hwe.gt_id,
+ class_display_name(engine->drm_xe_engine.engine_class),
+ engine->drm_xe_engine.engine_instance);
- if (ret <= 0) {
+ if (num_bytes <= 0) {
ret = errno;
break;
}
@@ -197,9 +245,12 @@ void *xe_populate_engines(const void *obj, int index)
engines->num_engines++;
}
- if (!ret) {
+ free(engine_q);
+ engine_q = NULL;
+
+ if (ret) {
errno = ret;
- return NULL;
+ goto err;
}
qsort(engine_ptr(engines, 0), engines->num_engines,
@@ -208,9 +259,26 @@ void *xe_populate_engines(const void *obj, int index)
ptr->pmu_device_obj = engines;
return engines;
+
+err:
+ if (card_fd >= 0)
+ close(card_fd);
+ if (engines) {
+ for (unsigned int i = 0; i < engines->num_engines; i++) {
+ struct xe_engine *engine = engine_ptr(engines, i);
+
+ free(engine->display_name);
+ }
+ if (engines->device)
+ free(engines->device);
+ free(engines);
+ }
+ if (engine_q)
+ free(engine_q);
+ return NULL;
}
-static uint64_t pmu_read_multi(int fd, unsigned int num, uint64_t *val)
+static int pmu_read_multi(int fd, unsigned int num, uint64_t *val)
{
uint64_t buf[2 + num];
unsigned int i;
@@ -219,15 +287,16 @@ static uint64_t pmu_read_multi(int fd, unsigned int num, uint64_t *val)
memset(buf, 0, sizeof(buf));
len = read(fd, buf, sizeof(buf));
- assert(len == sizeof(buf));
+ if (len != sizeof(buf))
+ return -1;
for (i = 0; i < num; i++)
val[i] = buf[2 + i];
- return buf[1];
+ return 0;
}
-void xe_pmu_sample(const void *obj, int index)
+int xe_pmu_sample(const void *obj, int index)
{
struct xe_gputop *ptr = ((struct xe_gputop *)obj) + index;
struct xe_pmu_device *engines = ptr->pmu_device_obj;
@@ -235,7 +304,8 @@ void xe_pmu_sample(const void *obj, int index)
uint64_t val[2 + num_val];
unsigned int i;
- pmu_read_multi(engines->fd, num_val, val);
+ if (pmu_read_multi(engines->fd, num_val, val) < 0)
+ return -1;
for (i = 0; i < engines->num_engines; i++) {
struct xe_engine *engine = engine_ptr(engines, i);
@@ -243,6 +313,8 @@ void xe_pmu_sample(const void *obj, int index)
update_sample(&engine->engine_active_ticks, val);
update_sample(&engine->engine_total_ticks, val);
}
+
+ return 0;
}
int xe_pmu_init(const void *obj, int index)
@@ -263,11 +335,11 @@ int xe_pmu_init(const void *obj, int index)
fd = _open_pmu(type, &engines->num_counters, &engine->engine_active_ticks,
&engines->fd);
if (fd < 0)
- return -1;
+ return fd;
fd = _open_pmu(type, &engines->num_counters, &engine->engine_total_ticks,
&engines->fd);
if (fd < 0)
- return -1;
+ return fd;
}
return 0;
}
@@ -280,7 +352,10 @@ static double pmu_active_percentage(struct xe_engine *engine)
engine->engine_total_ticks.val.prev;
double percentage;
- percentage = (pmu_active_ticks * 100) / pmu_total_ticks;
+ if (pmu_total_ticks)
+ percentage = (pmu_active_ticks * 100) / pmu_total_ticks;
+ else
+ percentage = 0.0;
return clamp(percentage, 0., 100.);
}
@@ -359,4 +434,3 @@ int xe_print_engines(const void *obj, int index, int lines, int w, int h)
return lines;
}
-
diff --git a/tools/gputop.src/xe_gputop.h b/tools/gputop.src/xe_gputop.h
index 1e3856071..d89db400c 100644
--- a/tools/gputop.src/xe_gputop.h
+++ b/tools/gputop.src/xe_gputop.h
@@ -1,17 +1,15 @@
/* SPDX-License-Identifier: MIT */
/*
- * Copyright © 2025 Intel Corporation
+ * Copyright © 2025-2026 Intel Corporation
*/
#ifndef __XE_GPUTOP_H__
#define __XE_GPUTOP_H__
#include <dirent.h>
+#include <xe_drm.h>
-#include "igt_device_scan.h"
-#include "igt_perf.h"
#include "utils.h"
-#include "xe/xe_query.h"
struct xe_pmu_pair {
uint64_t cur;
@@ -52,7 +50,7 @@ struct xe_gputop {
void xe_gputop_init(void *ptr, int index, struct igt_device_card *card);
void *xe_populate_engines(const void *obj, int index);
int xe_pmu_init(const void *obj, int index);
-void xe_pmu_sample(const void *obj, int index);
+int xe_pmu_sample(const void *obj, int index);
int xe_print_engines(const void *obj, int index, int lines, int w, int h);
void xe_clean_up(void *obj, int len);
--
2.34.1
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH i-g-t v10 4/5] tools/gputop.src/gputop: Add support for per-engine busyness monitoring
2026-04-06 6:04 [PATCH i-g-t v10 0/5] Close any open drm device after engine initialization in GPUTOP Soham Purkait
` (2 preceding siblings ...)
2026-04-06 6:04 ` [PATCH i-g-t v10 3/5] tools/gputop.src/xe_gputop: Use direct ioctls with card_fd cleanup Soham Purkait
@ 2026-04-06 6:04 ` Soham Purkait
2026-04-06 9:04 ` Tvrtko Ursulin
2026-04-06 6:04 ` [PATCH i-g-t v10 5/5] tools/gputop.src/gputop: Add command line option for device filter Soham Purkait
` (4 subsequent siblings)
8 siblings, 1 reply; 15+ messages in thread
From: Soham Purkait @ 2026-04-06 6:04 UTC (permalink / raw)
To: igt-dev, riana.tauro, badal.nilawar, kamil.konieczny,
vinay.belgaumkar
Cc: anshuman.gupta, soham.purkait, tvrtko.ursulin, tursulin,
lucas.de.marchi
This introduce support for monitoring per-engine busyness in gputop,
extending existing per-client monitoring to handle multiple GPUs, when
present, including support for multi-engine instances, enabling
finer-grained engine busyness reporting.
v1:
- Refactor GPUTOP into a vendor-agnostic tool. (Lucas)
v2:
- Cosmetic changes. (Riana)
- Avoid three level indentation. (Riana)
v3:
- Add device filter to populate the array of cards for
all supported drivers. (Zbigniew)
v4:
- Add user message for running without root privileges. (Kamil)
- Add support for GPU client-only busyness on unsupported
drivers as a fallback mechanism. (Kamil)
- Remove unused dependencies and headers. (Kamil)
v5:
- Replace hardcoded values with Enum for driver number. (Vinay)
- Rename driver_no to driver_num for better readability. (Vinay)
Signed-off-by: Soham Purkait <soham.purkait@intel.com>
---
tools/gputop.src/gputop.c | 305 ++++++++++++++++++++++++++++++-----
tools/gputop.src/meson.build | 2 +-
tools/meson.build | 3 +-
3 files changed, 268 insertions(+), 42 deletions(-)
diff --git a/tools/gputop.src/gputop.c b/tools/gputop.src/gputop.c
index 9b2e8cb6f..479897f40 100644
--- a/tools/gputop.src/gputop.c
+++ b/tools/gputop.src/gputop.c
@@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT
/*
- * Copyright © 2023 Intel Corporation
+ * Copyright © 2023-2026 Intel Corporation
*/
#include <assert.h>
@@ -14,22 +14,71 @@
#include <math.h>
#include <poll.h>
#include <signal.h>
+#include <stdbool.h>
#include <stdint.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/ioctl.h>
#include <sys/stat.h>
+#include <sys/sysmacros.h>
#include <sys/types.h>
-#include <unistd.h>
#include <termios.h>
-#include <sys/sysmacros.h>
-#include <stdbool.h>
+#include <unistd.h>
#include "igt_core.h"
#include "igt_drm_clients.h"
#include "igt_drm_fdinfo.h"
#include "igt_profiling.h"
+#include "xe_gputop.h"
+
+/**
+ * Supported Drivers
+ *
+ * Adhere to the following requirements when implementing support for the
+ * new driver:
+ * @drivers: Update drivers[] with new driver string and so the enum drivers
+ * with the new driver entry.
+ * @sizeof_gputop_obj: Update this function as per new driver support included.
+ * @operations: Update the respective operations of the new driver:
+ * gputop_init,
+ * discover_engines,
+ * pmu_init,
+ * pmu_sample,
+ * print_engines,
+ * clean_up
+ * @per_driver_contexts: Update per_driver_contexts[] array of type "struct gputop_driver" with the
+ * initial values.
+ */
+static const char * const drivers[] = {
+ "xe",
+ /* Keep the last one as NULL */
+ NULL
+};
+
+/**
+ * Supported operations on driver instances. Update the ops[] array for
+ * each individual driver specific function. Maintain the sequence as per
+ * drivers[] array.
+ */
+struct device_operations ops[] = {
+ {
+ xe_gputop_init,
+ xe_populate_engines,
+ xe_pmu_init,
+ xe_pmu_sample,
+ xe_print_engines,
+ xe_clean_up
+ }
+};
+
+/*
+ * per_driver_contexts[] array of type struct gputop_driver which keeps track of the devices
+ * and related info discovered per driver.
+ */
+struct gputop_driver per_driver_contexts[] = {
+ {false, 0, NULL}
+};
enum utilization_type {
UTILIZATION_TYPE_ENGINE_TIME,
@@ -37,50 +86,84 @@ enum utilization_type {
};
enum intel_driver_type {
- INTEL_DRIVER_I915,
INTEL_DRIVER_XE,
+ INTEL_DRIVER_I915,
INTEL_DRIVER_UNKNOWN,
};
#define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]))
-static const char *bars[] = { " ", "▏", "▎", "▍", "▌", "▋", "▊", "▉", "█" };
-
-#define ANSI_HEADER "\033[7m"
-#define ANSI_RESET "\033[0m"
-
-static void n_spaces(const unsigned int n)
+static size_t sizeof_gputop_obj(int driver_num)
{
- unsigned int i;
-
- for (i = 0; i < n; i++)
- putchar(' ');
+ switch (driver_num) {
+ case INTEL_DRIVER_XE:
+ return sizeof(struct xe_gputop);
+ default:
+ fprintf(stderr,
+ "Driver object size does not exist.\n");
+ exit(EXIT_FAILURE);
+ }
}
-static void print_percentage_bar(double percent, int max_len)
+static void gputop_clean_up(void)
{
- int bar_len, i, len = max_len - 1;
- const int w = 8;
-
- len -= printf("|%5.1f%% ", percent);
-
- /* no space left for bars, do what we can */
- if (len < 0)
- len = 0;
+ for (int i = 0; drivers[i]; i++) {
+ ops[i].clean_up(per_driver_contexts[i].instances, per_driver_contexts[i].len);
+ free(per_driver_contexts[i].instances);
+ per_driver_contexts[i].device_present = false;
+ per_driver_contexts[i].len = 0;
+ }
+}
- bar_len = ceil(w * percent * len / 100.0);
- if (bar_len > w * len)
- bar_len = w * len;
+static int find_driver(struct igt_device_card *card)
+{
+ for (int i = 0; drivers[i]; i++) {
+ if (strcmp(drivers[i], card->driver) == 0)
+ return i;
+ }
+ return -1;
+}
- for (i = bar_len; i >= w; i -= w)
- printf("%s", bars[w]);
- if (i)
- printf("%s", bars[i]);
+static int populate_device_instances(const char *filter)
+{
+ struct igt_device_card *cards = NULL;
+ struct igt_device_card *card_inplace = NULL;
+ struct gputop_driver *driver_entry = NULL;
+ int driver_num;
+ int count, final_count = 0;
+
+ count = igt_device_card_match_all(filter, &cards);
+ for (int j = 0; j < count; j++) {
+ if (strcmp(cards[j].subsystem, "pci") != 0)
+ continue;
- len -= (bar_len + (w - 1)) / w;
- n_spaces(len);
+ driver_num = find_driver(&cards[j]);
+ if (driver_num < 0)
+ continue;
- putchar('|');
+ driver_entry = &per_driver_contexts[driver_num];
+ if (!driver_entry->device_present)
+ driver_entry->device_present = true;
+ driver_entry->len++;
+ driver_entry->instances = realloc(driver_entry->instances,
+ driver_entry->len
+ * sizeof_gputop_obj(driver_num));
+ if (!driver_entry->instances) {
+ fprintf(stderr,
+ "Device instance realloc failed (%s)\n",
+ strerror(errno));
+ exit(EXIT_FAILURE);
+ }
+ card_inplace = (struct igt_device_card *)
+ calloc(1, sizeof(struct igt_device_card));
+ memcpy(card_inplace, &cards[j], sizeof(struct igt_device_card));
+ ops[driver_num].gputop_init(driver_entry->instances, (driver_entry->len - 1),
+ card_inplace);
+ final_count++;
+ }
+ if (count)
+ free(cards);
+ return final_count;
}
/* Get the correct sysfs prefix based on DRM minor number */
@@ -526,8 +609,31 @@ static void clrscr(void)
struct gputop_args {
long n_iter;
unsigned long delay_usec;
+ bool verbose;
};
+static void countdown(const char *msg, const int start_sec)
+{
+ struct pollfd pfd;
+ int i, ret;
+ char ch;
+
+ for (i = start_sec; i > 0; i--) {
+ printf("\r%s%d... second(s)", msg, i);
+ fflush(stdout);
+
+ pfd.fd = STDIN_FILENO;
+ pfd.events = POLLIN;
+
+ ret = poll(&pfd, 1, 1000);
+ if (ret > 0 && (pfd.revents & POLLIN)) {
+ while ((ch = getchar()) != '\n' && ch != EOF)
+ continue;
+ return;
+ }
+ }
+}
+
static void help(char *full_path)
{
const char *short_program_name = strrchr(full_path, '/');
@@ -541,18 +647,47 @@ static void help(char *full_path)
"\t%s [options]\n\n"
"Options:\n"
"\t-h, --help show this help\n"
+ "\t-v, --verbose wait 5 seconds before starting client-only busyness in"
+ " non-root mode if neither CAP_PERFMON is set nor perf_event_paranoid is"
+ " permissive.\n"
"\t-d, --delay =SEC[.TENTHS] iterative delay as SECS [.TENTHS]\n"
- "\t-n, --iterations =NUMBER number of executions\n"
+ "\t-n, --iterations =NUMBER number of executions\n\n"
+ "Running without root:\n"
+ "\tAs a non-root user, CAP_PERFMON or perf_event_paranoid is required to\n"
+ "\taccess engine busyness\n"
+ "\t" ANSI_HEADER "Steps to run without root (using CAP_PERFMON):"
+ ANSI_RESET "\n"
+ "\tcd /path/to/igt-gpu-tools/\n"
+ "\tsudo setcap cap_perfmon=+ep $(pwd)/build/tools/gputop\n"
+ "\tsudo sh -c \"echo $(pwd)/build/lib > /etc/ld.so.conf.d/lib-igt.conf\"\n"
+ "\tsudo ldconfig\n"
+ "\t" ANSI_HEADER "Steps to revert once done:" ANSI_RESET "\n"
+ "\tsudo setcap cap_perfmon=-ep $(pwd)/build/tools/gputop\n"
+ "\tsudo rm /etc/ld.so.conf.d/lib-igt.conf\n"
+ "\tsudo ldconfig\n"
+ "\n"
+ "\t" ANSI_HEADER "Steps to run without root (using perf_event_paranoid):"
+ ANSI_RESET "\n"
+ "\t\033[32m# Save current perf_event_paranoid value\033[0m\n"
+ "\torig_val=$(sysctl -n kernel.perf_event_paranoid)\n"
+ "\tsudo sysctl -w kernel.perf_event_paranoid=-1\n"
+ "\t" ANSI_HEADER "Steps to revert once done:" ANSI_RESET "\n"
+ "\t\033[32m# Restore original value\033[0m\n"
+ "\tsudo sysctl -w kernel.perf_event_paranoid=$orig_val\n\n"
+ "\tFor details, see 'Perf events and tool security':\n"
+ "\thttps://www.kernel.org/doc/html/"
+ "latest/admin-guide/perf-security.html\n\n"
, short_program_name);
}
static int parse_args(int argc, char * const argv[], struct gputop_args *args)
{
- static const char cmdopts_s[] = "hn:d:";
+ static const char cmdopts_s[] = "hvn:d:";
static const struct option cmdopts[] = {
{"help", no_argument, 0, 'h'},
{"delay", required_argument, 0, 'd'},
{"iterations", required_argument, 0, 'n'},
+ {"verbose", no_argument, 0, 'v'},
{ }
};
@@ -560,6 +695,7 @@ static int parse_args(int argc, char * const argv[], struct gputop_args *args)
memset(args, 0, sizeof(*args));
args->n_iter = -1;
args->delay_usec = 2 * USEC_PER_SEC;
+ args->verbose = false;
for (;;) {
int c, idx = 0;
@@ -573,6 +709,9 @@ static int parse_args(int argc, char * const argv[], struct gputop_args *args)
case 'n':
args->n_iter = strtol(optarg, NULL, 10);
break;
+ case 'v':
+ args->verbose = true;
+ break;
case 'd':
args->delay_usec = strtoul(optarg, &end_ptr, 10) * USEC_PER_SEC;
if (*end_ptr == '.')
@@ -610,9 +749,12 @@ int main(int argc, char **argv)
struct igt_profiled_device *profiled_devices = NULL;
struct igt_drm_clients *clients = NULL;
int con_w = -1, con_h = -1;
+ bool is_root;
int ret;
long n;
+ is_root = (geteuid() == 0);
+
ret = parse_args(argc, argv, &args);
if (ret < 0)
return EXIT_FAILURE;
@@ -621,6 +763,62 @@ int main(int argc, char **argv)
n = args.n_iter;
period_us = args.delay_usec;
+ populate_device_instances("device:subsystem=pci,card=all");
+
+ for (int i = 0; drivers[i]; i++) {
+ if (!per_driver_contexts[i].device_present)
+ continue;
+
+ for (int j = 0; j < per_driver_contexts[i].len; j++) {
+ if (!ops[i].init_engines(per_driver_contexts[i].instances, j)) {
+ fprintf(stderr,
+ "Failed to initialize engines! (%s)\n",
+ strerror(errno));
+ gputop_clean_up();
+ return EXIT_FAILURE;
+ }
+ ret = ops[i].pmu_init(per_driver_contexts[i].instances, j);
+
+ if (ret) {
+ if (errno == EACCES && !is_root) {
+ igt_devices_free();
+ gputop_clean_up();
+ if (args.verbose) {
+ fprintf(stderr,
+ "\n"
+ "Running without root privileges.\n"
+ "Engine busyness may not be available "
+ "without root privileges.\n"
+ "See \"--help\" to enable engine "
+ "busyness without root.\n\n");
+ countdown("Resuming with only gpu client "
+ "busyness in ", 5);
+ }
+ } else {
+ fprintf(stderr,
+ "Failed to initialize PMU! (%s)\n",
+ strerror(errno));
+ igt_devices_free();
+ gputop_clean_up();
+ return EXIT_FAILURE;
+ }
+ }
+ }
+ }
+
+ for (int i = 0; drivers[i]; i++) {
+ for (int j = 0;
+ per_driver_contexts[i].device_present && j < per_driver_contexts[i].len;
+ j++)
+ if (ops[i].pmu_sample(per_driver_contexts[i].instances, j)) {
+ fprintf(stderr,
+ "Failed to sample PMU! (%s)\n",
+ strerror(errno));
+ igt_devices_free();
+ gputop_clean_up();
+ return EXIT_FAILURE;
+ }
+ }
clients = igt_drm_clients_init(NULL);
if (!clients)
@@ -642,22 +840,49 @@ int main(int argc, char **argv)
while ((n != 0) && !stop_top) {
struct igt_drm_client *c, *prevc = NULL;
- int i, engine_w = 0, lines = 0;
+ int k, engine_w = 0, lines = 0;
igt_drm_clients_scan(clients, NULL, NULL, 0, NULL, 0);
+
+ for (int i = 0; drivers[i]; i++) {
+ for (int j = 0;
+ per_driver_contexts[i].device_present &&
+ j < per_driver_contexts[i].len;
+ j++)
+ if (ops[i].pmu_sample(per_driver_contexts[i].instances, j)) {
+ fprintf(stderr,
+ "Failed to sample PMU! (%s)\n",
+ strerror(errno));
+ igt_devices_free();
+ gputop_clean_up();
+ return EXIT_FAILURE;
+ }
+ }
+
igt_drm_clients_sort(clients, client_cmp);
update_console_size(&con_w, &con_h);
clrscr();
+ for (int i = 0; drivers[i]; i++) {
+ for (int j = 0;
+ per_driver_contexts[i].device_present &&
+ j < per_driver_contexts[i].len;
+ j++) {
+ lines = ops[i].print_engines(per_driver_contexts[i].instances, j,
+ lines, con_w, con_h);
+ }
+ }
+
if (!clients->num_clients) {
- const char *msg = " (No GPU clients yet. Start workload to see stats)";
+ const char *msg;
+ msg = " (No GPU clients yet. Start workload to see stats)";
printf(ANSI_HEADER "%-*s" ANSI_RESET "\n",
(int)(con_w - strlen(msg) - 1), msg);
}
- igt_for_each_drm_client(clients, c, i) {
+ igt_for_each_drm_client(clients, c, k) {
assert(c->status != IGT_DRM_CLIENT_PROBE);
if (c->status != IGT_DRM_CLIENT_ALIVE)
break; /* Active clients are first in the array. */
@@ -681,11 +906,11 @@ int main(int argc, char **argv)
}
igt_drm_clients_free(clients);
+ gputop_clean_up();
if (profiled_devices != NULL) {
igt_devices_configure_profiling(profiled_devices, false);
igt_devices_free_profiling(profiled_devices);
}
-
return 0;
}
diff --git a/tools/gputop.src/meson.build b/tools/gputop.src/meson.build
index ec39f4c7a..e95657fca 100644
--- a/tools/gputop.src/meson.build
+++ b/tools/gputop.src/meson.build
@@ -1 +1 @@
-gputop_src = files('gputop.c')
+gputop_src = files('gputop.c', 'utils.c', 'xe_gputop.c')
diff --git a/tools/meson.build b/tools/meson.build
index 521607a4c..caca57d0e 100644
--- a/tools/meson.build
+++ b/tools/meson.build
@@ -123,4 +123,5 @@ subdir('gputop.src')
executable('gputop', sources : gputop_src,
install : true,
install_rpath : bindir_rpathdir,
- dependencies : [lib_igt_drm_clients,lib_igt_drm_fdinfo,lib_igt_profiling,math],)
+ dependencies : [lib_igt_perf,lib_igt_device_scan,lib_igt_drm_clients,
+ lib_igt_drm_fdinfo,lib_igt_profiling,math],)
--
2.34.1
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH i-g-t v10 5/5] tools/gputop.src/gputop: Add command line option for device filter
2026-04-06 6:04 [PATCH i-g-t v10 0/5] Close any open drm device after engine initialization in GPUTOP Soham Purkait
` (3 preceding siblings ...)
2026-04-06 6:04 ` [PATCH i-g-t v10 4/5] tools/gputop.src/gputop: Add support for per-engine busyness monitoring Soham Purkait
@ 2026-04-06 6:04 ` Soham Purkait
2026-04-06 8:25 ` ✓ Xe.CI.BAT: success for Close any open drm device after engine initialization in GPUTOP (rev11) Patchwork
` (3 subsequent siblings)
8 siblings, 0 replies; 15+ messages in thread
From: Soham Purkait @ 2026-04-06 6:04 UTC (permalink / raw)
To: igt-dev, riana.tauro, badal.nilawar, kamil.konieczny,
vinay.belgaumkar
Cc: anshuman.gupta, soham.purkait, tvrtko.ursulin, tursulin,
lucas.de.marchi
With a new command-line option for device filtering, the engine
busyness for the specific device could be selected.
Signed-off-by: Soham Purkait <soham.purkait@intel.com>
---
tools/gputop.src/gputop.c | 14 +++++++++++---
1 file changed, 11 insertions(+), 3 deletions(-)
diff --git a/tools/gputop.src/gputop.c b/tools/gputop.src/gputop.c
index 479897f40..a2e3578cc 100644
--- a/tools/gputop.src/gputop.c
+++ b/tools/gputop.src/gputop.c
@@ -610,6 +610,7 @@ struct gputop_args {
long n_iter;
unsigned long delay_usec;
bool verbose;
+ char *device;
};
static void countdown(const char *msg, const int start_sec)
@@ -651,7 +652,8 @@ static void help(char *full_path)
" non-root mode if neither CAP_PERFMON is set nor perf_event_paranoid is"
" permissive.\n"
"\t-d, --delay =SEC[.TENTHS] iterative delay as SECS [.TENTHS]\n"
- "\t-n, --iterations =NUMBER number of executions\n\n"
+ "\t-n, --iterations =NUMBER number of executions\n"
+ "\t-D, --device Device filter\n\n"
"Running without root:\n"
"\tAs a non-root user, CAP_PERFMON or perf_event_paranoid is required to\n"
"\taccess engine busyness\n"
@@ -682,12 +684,13 @@ static void help(char *full_path)
static int parse_args(int argc, char * const argv[], struct gputop_args *args)
{
- static const char cmdopts_s[] = "hvn:d:";
+ static const char cmdopts_s[] = "hvn:d:D:";
static const struct option cmdopts[] = {
{"help", no_argument, 0, 'h'},
{"delay", required_argument, 0, 'd'},
{"iterations", required_argument, 0, 'n'},
{"verbose", no_argument, 0, 'v'},
+ {"device", required_argument, 0, 'D'},
{ }
};
@@ -696,6 +699,7 @@ static int parse_args(int argc, char * const argv[], struct gputop_args *args)
args->n_iter = -1;
args->delay_usec = 2 * USEC_PER_SEC;
args->verbose = false;
+ args->device = NULL;
for (;;) {
int c, idx = 0;
@@ -722,6 +726,9 @@ static int parse_args(int argc, char * const argv[], struct gputop_args *args)
return -1;
}
break;
+ case 'D':
+ args->device = optarg;
+ break;
case 'h':
help(argv[0]);
return 0;
@@ -763,7 +770,8 @@ int main(int argc, char **argv)
n = args.n_iter;
period_us = args.delay_usec;
- populate_device_instances("device:subsystem=pci,card=all");
+ populate_device_instances(args.device ? args.device
+ : "device:subsystem=pci,card=all");
for (int i = 0; drivers[i]; i++) {
if (!per_driver_contexts[i].device_present)
--
2.34.1
^ permalink raw reply related [flat|nested] 15+ messages in thread
* ✓ Xe.CI.BAT: success for Close any open drm device after engine initialization in GPUTOP (rev11)
2026-04-06 6:04 [PATCH i-g-t v10 0/5] Close any open drm device after engine initialization in GPUTOP Soham Purkait
` (4 preceding siblings ...)
2026-04-06 6:04 ` [PATCH i-g-t v10 5/5] tools/gputop.src/gputop: Add command line option for device filter Soham Purkait
@ 2026-04-06 8:25 ` Patchwork
2026-04-06 8:42 ` ✓ i915.CI.BAT: " Patchwork
` (2 subsequent siblings)
8 siblings, 0 replies; 15+ messages in thread
From: Patchwork @ 2026-04-06 8:25 UTC (permalink / raw)
To: Soham Purkait; +Cc: igt-dev
[-- Attachment #1: Type: text/plain, Size: 2128 bytes --]
== Series Details ==
Series: Close any open drm device after engine initialization in GPUTOP (rev11)
URL : https://patchwork.freedesktop.org/series/158161/
State : success
== Summary ==
CI Bug Log - changes from XEIGT_8848_BAT -> XEIGTPW_14929_BAT
====================================================
Summary
-------
**SUCCESS**
No regressions found.
Participating hosts (13 -> 13)
------------------------------
No changes in participating hosts
Known issues
------------
Here are the changes found in XEIGTPW_14929_BAT that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@kms_flip@basic-flip-vs-wf_vblank@d-edp1:
- bat-adlp-7: [PASS][1] -> [DMESG-WARN][2] ([Intel XE#7483])
[1]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8848/bat-adlp-7/igt@kms_flip@basic-flip-vs-wf_vblank@d-edp1.html
[2]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/bat-adlp-7/igt@kms_flip@basic-flip-vs-wf_vblank@d-edp1.html
#### Possible fixes ####
* igt@kms_flip@basic-flip-vs-wf_vblank@c-edp1:
- bat-adlp-7: [DMESG-WARN][3] ([Intel XE#7483]) -> [PASS][4]
[3]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8848/bat-adlp-7/igt@kms_flip@basic-flip-vs-wf_vblank@c-edp1.html
[4]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/bat-adlp-7/igt@kms_flip@basic-flip-vs-wf_vblank@c-edp1.html
* igt@xe_waitfence@engine:
- bat-dg2-oem2: [FAIL][5] ([Intel XE#6519]) -> [PASS][6]
[5]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8848/bat-dg2-oem2/igt@xe_waitfence@engine.html
[6]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/bat-dg2-oem2/igt@xe_waitfence@engine.html
[Intel XE#6519]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6519
[Intel XE#7483]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7483
Build changes
-------------
* IGT: IGT_8848 -> IGTPW_14929
IGTPW_14929: 14929
IGT_8848: 8848
xe-4852-d873f0156bd08a3031097d459e2d3604bfe1b1bf: d873f0156bd08a3031097d459e2d3604bfe1b1bf
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/index.html
[-- Attachment #2: Type: text/html, Size: 2822 bytes --]
^ permalink raw reply [flat|nested] 15+ messages in thread
* ✓ i915.CI.BAT: success for Close any open drm device after engine initialization in GPUTOP (rev11)
2026-04-06 6:04 [PATCH i-g-t v10 0/5] Close any open drm device after engine initialization in GPUTOP Soham Purkait
` (5 preceding siblings ...)
2026-04-06 8:25 ` ✓ Xe.CI.BAT: success for Close any open drm device after engine initialization in GPUTOP (rev11) Patchwork
@ 2026-04-06 8:42 ` Patchwork
2026-04-06 11:21 ` ✗ Xe.CI.FULL: failure " Patchwork
2026-04-06 12:32 ` ✗ i915.CI.Full: " Patchwork
8 siblings, 0 replies; 15+ messages in thread
From: Patchwork @ 2026-04-06 8:42 UTC (permalink / raw)
To: Soham Purkait; +Cc: igt-dev
[-- Attachment #1: Type: text/plain, Size: 3020 bytes --]
== Series Details ==
Series: Close any open drm device after engine initialization in GPUTOP (rev11)
URL : https://patchwork.freedesktop.org/series/158161/
State : success
== Summary ==
CI Bug Log - changes from IGT_8848 -> IGTPW_14929
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/index.html
Participating hosts (40 -> 40)
------------------------------
Additional (1): fi-glk-j4005
Missing (1): bat-dg2-13
Known issues
------------
Here are the changes found in IGTPW_14929 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@gem_huc_copy@huc-copy:
- fi-glk-j4005: NOTRUN -> [SKIP][1] ([i915#2190])
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/fi-glk-j4005/igt@gem_huc_copy@huc-copy.html
* igt@gem_lmem_swapping@parallel-random-engines:
- fi-glk-j4005: NOTRUN -> [SKIP][2] ([i915#4613]) +3 other tests skip
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/fi-glk-j4005/igt@gem_lmem_swapping@parallel-random-engines.html
* igt@i915_selftest@live:
- bat-dg2-8: [PASS][3] -> [DMESG-FAIL][4] ([i915#12061]) +1 other test dmesg-fail
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/bat-dg2-8/igt@i915_selftest@live.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/bat-dg2-8/igt@i915_selftest@live.html
* igt@i915_selftest@live@workarounds:
- bat-dg2-9: [PASS][5] -> [DMESG-FAIL][6] ([i915#12061]) +1 other test dmesg-fail
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/bat-dg2-9/igt@i915_selftest@live@workarounds.html
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/bat-dg2-9/igt@i915_selftest@live@workarounds.html
* igt@kms_psr@psr-primary-page-flip:
- fi-glk-j4005: NOTRUN -> [SKIP][7] +12 other tests skip
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/fi-glk-j4005/igt@kms_psr@psr-primary-page-flip.html
#### Possible fixes ####
* igt@i915_selftest@live@workarounds:
- bat-mtlp-9: [DMESG-FAIL][8] ([i915#12061]) -> [PASS][9] +1 other test pass
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/bat-mtlp-9/igt@i915_selftest@live@workarounds.html
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/bat-mtlp-9/igt@i915_selftest@live@workarounds.html
[i915#12061]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12061
[i915#2190]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2190
[i915#4613]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4613
Build changes
-------------
* CI: CI-20190529 -> None
* IGT: IGT_8848 -> IGTPW_14929
CI-20190529: 20190529
CI_DRM_18281: d873f0156bd08a3031097d459e2d3604bfe1b1bf @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_14929: 14929
IGT_8848: 8848
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/index.html
[-- Attachment #2: Type: text/html, Size: 3917 bytes --]
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH i-g-t v10 4/5] tools/gputop.src/gputop: Add support for per-engine busyness monitoring
2026-04-06 6:04 ` [PATCH i-g-t v10 4/5] tools/gputop.src/gputop: Add support for per-engine busyness monitoring Soham Purkait
@ 2026-04-06 9:04 ` Tvrtko Ursulin
2026-04-08 7:50 ` Purkait, Soham
0 siblings, 1 reply; 15+ messages in thread
From: Tvrtko Ursulin @ 2026-04-06 9:04 UTC (permalink / raw)
To: Soham Purkait, igt-dev, riana.tauro, badal.nilawar,
kamil.konieczny, vinay.belgaumkar
Cc: anshuman.gupta, tursulin, lucas.de.marchi
On 06/04/2026 07:04, Soham Purkait wrote:
> This introduce support for monitoring per-engine busyness in gputop,
> extending existing per-client monitoring to handle multiple GPUs, when
> present, including support for multi-engine instances, enabling
> finer-grained engine busyness reporting.
>
> v1:
> - Refactor GPUTOP into a vendor-agnostic tool. (Lucas)
> v2:
> - Cosmetic changes. (Riana)
> - Avoid three level indentation. (Riana)
> v3:
> - Add device filter to populate the array of cards for
> all supported drivers. (Zbigniew)
> v4:
> - Add user message for running without root privileges. (Kamil)
> - Add support for GPU client-only busyness on unsupported
> drivers as a fallback mechanism. (Kamil)
> - Remove unused dependencies and headers. (Kamil)
> v5:
> - Replace hardcoded values with Enum for driver number. (Vinay)
> - Rename driver_no to driver_num for better readability. (Vinay)
>
> Signed-off-by: Soham Purkait <soham.purkait@intel.com>
> ---
> tools/gputop.src/gputop.c | 305 ++++++++++++++++++++++++++++++-----
> tools/gputop.src/meson.build | 2 +-
> tools/meson.build | 3 +-
> 3 files changed, 268 insertions(+), 42 deletions(-)
>
> diff --git a/tools/gputop.src/gputop.c b/tools/gputop.src/gputop.c
> index 9b2e8cb6f..479897f40 100644
> --- a/tools/gputop.src/gputop.c
> +++ b/tools/gputop.src/gputop.c
> @@ -1,6 +1,6 @@
> // SPDX-License-Identifier: MIT
> /*
> - * Copyright © 2023 Intel Corporation
> + * Copyright © 2023-2026 Intel Corporation
> */
>
> #include <assert.h>
> @@ -14,22 +14,71 @@
> #include <math.h>
> #include <poll.h>
> #include <signal.h>
> +#include <stdbool.h>
> #include <stdint.h>
> #include <stdio.h>
> #include <stdlib.h>
> #include <string.h>
> #include <sys/ioctl.h>
> #include <sys/stat.h>
> +#include <sys/sysmacros.h>
> #include <sys/types.h>
> -#include <unistd.h>
> #include <termios.h>
> -#include <sys/sysmacros.h>
> -#include <stdbool.h>
> +#include <unistd.h>
>
> #include "igt_core.h"
> #include "igt_drm_clients.h"
> #include "igt_drm_fdinfo.h"
> #include "igt_profiling.h"
> +#include "xe_gputop.h"
> +
> +/**
> + * Supported Drivers
> + *
> + * Adhere to the following requirements when implementing support for the
> + * new driver:
> + * @drivers: Update drivers[] with new driver string and so the enum drivers
> + * with the new driver entry.
> + * @sizeof_gputop_obj: Update this function as per new driver support included.
> + * @operations: Update the respective operations of the new driver:
> + * gputop_init,
> + * discover_engines,
> + * pmu_init,
> + * pmu_sample,
> + * print_engines,
> + * clean_up
> + * @per_driver_contexts: Update per_driver_contexts[] array of type "struct gputop_driver" with the
> + * initial values.
> + */
> +static const char * const drivers[] = {
> + "xe",
> + /* Keep the last one as NULL */
> + NULL
> +};
> +
> +/**
> + * Supported operations on driver instances. Update the ops[] array for
> + * each individual driver specific function. Maintain the sequence as per
> + * drivers[] array.
> + */
> +struct device_operations ops[] = {
> + {
> + xe_gputop_init,
> + xe_populate_engines,
> + xe_pmu_init,
> + xe_pmu_sample,
> + xe_print_engines,
> + xe_clean_up
> + }
> +};
> +
> +/*
> + * per_driver_contexts[] array of type struct gputop_driver which keeps track of the devices
> + * and related info discovered per driver.
> + */
> +struct gputop_driver per_driver_contexts[] = {
> + {false, 0, NULL}
> +};
>
> enum utilization_type {
> UTILIZATION_TYPE_ENGINE_TIME,
> @@ -37,50 +86,84 @@ enum utilization_type {
> };
>
> enum intel_driver_type {
> - INTEL_DRIVER_I915,
> INTEL_DRIVER_XE,
> + INTEL_DRIVER_I915,
> INTEL_DRIVER_UNKNOWN,
> };
>
> #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]))
>
> -static const char *bars[] = { " ", "▏", "▎", "▍", "▌", "▋", "▊", "▉", "█" };
> -
> -#define ANSI_HEADER "\033[7m"
> -#define ANSI_RESET "\033[0m"
> -
> -static void n_spaces(const unsigned int n)
> +static size_t sizeof_gputop_obj(int driver_num)
> {
> - unsigned int i;
> -
> - for (i = 0; i < n; i++)
> - putchar(' ');
> + switch (driver_num) {
> + case INTEL_DRIVER_XE:
> + return sizeof(struct xe_gputop);
> + default:
> + fprintf(stderr,
> + "Driver object size does not exist.\n");
> + exit(EXIT_FAILURE);
> + }
> }
>
> -static void print_percentage_bar(double percent, int max_len)
> +static void gputop_clean_up(void)
> {
> - int bar_len, i, len = max_len - 1;
> - const int w = 8;
> -
> - len -= printf("|%5.1f%% ", percent);
> -
> - /* no space left for bars, do what we can */
> - if (len < 0)
> - len = 0;
> + for (int i = 0; drivers[i]; i++) {
> + ops[i].clean_up(per_driver_contexts[i].instances, per_driver_contexts[i].len);
> + free(per_driver_contexts[i].instances);
> + per_driver_contexts[i].device_present = false;
> + per_driver_contexts[i].len = 0;
> + }
> +}
>
> - bar_len = ceil(w * percent * len / 100.0);
> - if (bar_len > w * len)
> - bar_len = w * len;
> +static int find_driver(struct igt_device_card *card)
> +{
> + for (int i = 0; drivers[i]; i++) {
> + if (strcmp(drivers[i], card->driver) == 0)
> + return i;
> + }
> + return -1;
> +}
>
> - for (i = bar_len; i >= w; i -= w)
> - printf("%s", bars[w]);
> - if (i)
> - printf("%s", bars[i]);
> +static int populate_device_instances(const char *filter)
> +{
> + struct igt_device_card *cards = NULL;
> + struct igt_device_card *card_inplace = NULL;
> + struct gputop_driver *driver_entry = NULL;
> + int driver_num;
> + int count, final_count = 0;
> +
> + count = igt_device_card_match_all(filter, &cards);
> + for (int j = 0; j < count; j++) {
> + if (strcmp(cards[j].subsystem, "pci") != 0)
> + continue;
>
> - len -= (bar_len + (w - 1)) / w;
> - n_spaces(len);
> + driver_num = find_driver(&cards[j]);
> + if (driver_num < 0)
> + continue;
>
> - putchar('|');
> + driver_entry = &per_driver_contexts[driver_num];
> + if (!driver_entry->device_present)
> + driver_entry->device_present = true;
> + driver_entry->len++;
> + driver_entry->instances = realloc(driver_entry->instances,
> + driver_entry->len
> + * sizeof_gputop_obj(driver_num));
> + if (!driver_entry->instances) {
> + fprintf(stderr,
> + "Device instance realloc failed (%s)\n",
> + strerror(errno));
> + exit(EXIT_FAILURE);
> + }
> + card_inplace = (struct igt_device_card *)
> + calloc(1, sizeof(struct igt_device_card));
> + memcpy(card_inplace, &cards[j], sizeof(struct igt_device_card));
> + ops[driver_num].gputop_init(driver_entry->instances, (driver_entry->len - 1),
> + card_inplace);
> + final_count++;
> + }
> + if (count)
> + free(cards);
> + return final_count;
> }
>
> /* Get the correct sysfs prefix based on DRM minor number */
> @@ -526,8 +609,31 @@ static void clrscr(void)
> struct gputop_args {
> long n_iter;
> unsigned long delay_usec;
> + bool verbose;
> };
>
> +static void countdown(const char *msg, const int start_sec)
> +{
> + struct pollfd pfd;
> + int i, ret;
> + char ch;
> +
> + for (i = start_sec; i > 0; i--) {
> + printf("\r%s%d... second(s)", msg, i);
> + fflush(stdout);
> +
> + pfd.fd = STDIN_FILENO;
> + pfd.events = POLLIN;
> +
> + ret = poll(&pfd, 1, 1000);
> + if (ret > 0 && (pfd.revents & POLLIN)) {
> + while ((ch = getchar()) != '\n' && ch != EOF)
> + continue;
> + return;
> + }
> + }
> +}
> +
> static void help(char *full_path)
> {
> const char *short_program_name = strrchr(full_path, '/');
> @@ -541,18 +647,47 @@ static void help(char *full_path)
> "\t%s [options]\n\n"
> "Options:\n"
> "\t-h, --help show this help\n"
> + "\t-v, --verbose wait 5 seconds before starting client-only busyness in"
> + " non-root mode if neither CAP_PERFMON is set nor perf_event_paranoid is"
> + " permissive.\n"
> "\t-d, --delay =SEC[.TENTHS] iterative delay as SECS [.TENTHS]\n"
> - "\t-n, --iterations =NUMBER number of executions\n"
> + "\t-n, --iterations =NUMBER number of executions\n\n"
> + "Running without root:\n"
> + "\tAs a non-root user, CAP_PERFMON or perf_event_paranoid is required to\n"
> + "\taccess engine busyness\n"
> + "\t" ANSI_HEADER "Steps to run without root (using CAP_PERFMON):"
> + ANSI_RESET "\n"
> + "\tcd /path/to/igt-gpu-tools/\n"
> + "\tsudo setcap cap_perfmon=+ep $(pwd)/build/tools/gputop\n"
> + "\tsudo sh -c \"echo $(pwd)/build/lib > /etc/ld.so.conf.d/lib-igt.conf\"\n"
> + "\tsudo ldconfig\n"
> + "\t" ANSI_HEADER "Steps to revert once done:" ANSI_RESET "\n"
> + "\tsudo setcap cap_perfmon=-ep $(pwd)/build/tools/gputop\n"
> + "\tsudo rm /etc/ld.so.conf.d/lib-igt.conf\n"
> + "\tsudo ldconfig\n"
> + "\n"
> + "\t" ANSI_HEADER "Steps to run without root (using perf_event_paranoid):"
> + ANSI_RESET "\n"
> + "\t\033[32m# Save current perf_event_paranoid value\033[0m\n"
> + "\torig_val=$(sysctl -n kernel.perf_event_paranoid)\n"
> + "\tsudo sysctl -w kernel.perf_event_paranoid=-1\n"
> + "\t" ANSI_HEADER "Steps to revert once done:" ANSI_RESET "\n"
> + "\t\033[32m# Restore original value\033[0m\n"
> + "\tsudo sysctl -w kernel.perf_event_paranoid=$orig_val\n\n"
> + "\tFor details, see 'Perf events and tool security':\n"
> + "\thttps://www.kernel.org/doc/html/"
> + "latest/admin-guide/perf-security.html\n\n"
> , short_program_name);
> }
>
> static int parse_args(int argc, char * const argv[], struct gputop_args *args)
> {
> - static const char cmdopts_s[] = "hn:d:";
> + static const char cmdopts_s[] = "hvn:d:";
> static const struct option cmdopts[] = {
> {"help", no_argument, 0, 'h'},
> {"delay", required_argument, 0, 'd'},
> {"iterations", required_argument, 0, 'n'},
> + {"verbose", no_argument, 0, 'v'},
> { }
> };
>
> @@ -560,6 +695,7 @@ static int parse_args(int argc, char * const argv[], struct gputop_args *args)
> memset(args, 0, sizeof(*args));
> args->n_iter = -1;
> args->delay_usec = 2 * USEC_PER_SEC;
> + args->verbose = false;
>
> for (;;) {
> int c, idx = 0;
> @@ -573,6 +709,9 @@ static int parse_args(int argc, char * const argv[], struct gputop_args *args)
> case 'n':
> args->n_iter = strtol(optarg, NULL, 10);
> break;
> + case 'v':
> + args->verbose = true;
> + break;
> case 'd':
> args->delay_usec = strtoul(optarg, &end_ptr, 10) * USEC_PER_SEC;
> if (*end_ptr == '.')
> @@ -610,9 +749,12 @@ int main(int argc, char **argv)
> struct igt_profiled_device *profiled_devices = NULL;
> struct igt_drm_clients *clients = NULL;
> int con_w = -1, con_h = -1;
> + bool is_root;
> int ret;
> long n;
>
> + is_root = (geteuid() == 0);
> +
> ret = parse_args(argc, argv, &args);
> if (ret < 0)
> return EXIT_FAILURE;
> @@ -621,6 +763,62 @@ int main(int argc, char **argv)
>
> n = args.n_iter;
> period_us = args.delay_usec;
> + populate_device_instances("device:subsystem=pci,card=all");
> +
> + for (int i = 0; drivers[i]; i++) {
> + if (!per_driver_contexts[i].device_present)
> + continue;
> +
> + for (int j = 0; j < per_driver_contexts[i].len; j++) {
> + if (!ops[i].init_engines(per_driver_contexts[i].instances, j)) {
> + fprintf(stderr,
> + "Failed to initialize engines! (%s)\n",
> + strerror(errno));
> + gputop_clean_up();
> + return EXIT_FAILURE;
> + }
> + ret = ops[i].pmu_init(per_driver_contexts[i].instances, j);
> +
> + if (ret) {
> + if (errno == EACCES && !is_root) {
> + igt_devices_free();
> + gputop_clean_up();
> + if (args.verbose) {
> + fprintf(stderr,
> + "\n"
> + "Running without root privileges.\n"
> + "Engine busyness may not be available "
> + "without root privileges.\n"
> + "See \"--help\" to enable engine "
> + "busyness without root.\n\n");
> + countdown("Resuming with only gpu client "
> + "busyness in ", 5);
> + }
> + } else {
> + fprintf(stderr,
> + "Failed to initialize PMU! (%s)\n",
> + strerror(errno));
> + igt_devices_free();
> + gputop_clean_up();
> + return EXIT_FAILURE;
> + }
> + }
> + }
> + }
> +
> + for (int i = 0; drivers[i]; i++) {
> + for (int j = 0;
> + per_driver_contexts[i].device_present && j < per_driver_contexts[i].len;
> + j++)
> + if (ops[i].pmu_sample(per_driver_contexts[i].instances, j)) {
> + fprintf(stderr,
> + "Failed to sample PMU! (%s)\n",
> + strerror(errno));
> + igt_devices_free();
> + gputop_clean_up();
> + return EXIT_FAILURE;
> + }
> + }
>
> clients = igt_drm_clients_init(NULL);
> if (!clients)
> @@ -642,22 +840,49 @@ int main(int argc, char **argv)
>
> while ((n != 0) && !stop_top) {
> struct igt_drm_client *c, *prevc = NULL;
> - int i, engine_w = 0, lines = 0;
> + int k, engine_w = 0, lines = 0;
>
> igt_drm_clients_scan(clients, NULL, NULL, 0, NULL, 0);
> +
> + for (int i = 0; drivers[i]; i++) {
> + for (int j = 0;
> + per_driver_contexts[i].device_present &&
> + j < per_driver_contexts[i].len;
> + j++)
> + if (ops[i].pmu_sample(per_driver_contexts[i].instances, j)) {
> + fprintf(stderr,
> + "Failed to sample PMU! (%s)\n",
> + strerror(errno));
> + igt_devices_free();
> + gputop_clean_up();
> + return EXIT_FAILURE;
Imagine abstracting this all to a library akin to igt_drm_clients and
then both xe_gputop and intel_gpu_top could use it. Then the step where
latter would work with both i915 and xe could be very near, all the code
would be only in the new library and not duplicated, plus, one day
extending the support to a non-intel driver could be quite plausible.
Regards,
Tvrtko
> + }
> + }
> +
> igt_drm_clients_sort(clients, client_cmp);
>
> update_console_size(&con_w, &con_h);
> clrscr();
>
> + for (int i = 0; drivers[i]; i++) {
> + for (int j = 0;
> + per_driver_contexts[i].device_present &&
> + j < per_driver_contexts[i].len;
> + j++) {
> + lines = ops[i].print_engines(per_driver_contexts[i].instances, j,
> + lines, con_w, con_h);
> + }
> + }
> +
> if (!clients->num_clients) {
> - const char *msg = " (No GPU clients yet. Start workload to see stats)";
> + const char *msg;
>
> + msg = " (No GPU clients yet. Start workload to see stats)";
> printf(ANSI_HEADER "%-*s" ANSI_RESET "\n",
> (int)(con_w - strlen(msg) - 1), msg);
> }
>
> - igt_for_each_drm_client(clients, c, i) {
> + igt_for_each_drm_client(clients, c, k) {
> assert(c->status != IGT_DRM_CLIENT_PROBE);
> if (c->status != IGT_DRM_CLIENT_ALIVE)
> break; /* Active clients are first in the array. */
> @@ -681,11 +906,11 @@ int main(int argc, char **argv)
> }
>
> igt_drm_clients_free(clients);
> + gputop_clean_up();
>
> if (profiled_devices != NULL) {
> igt_devices_configure_profiling(profiled_devices, false);
> igt_devices_free_profiling(profiled_devices);
> }
> -
> return 0;
> }
> diff --git a/tools/gputop.src/meson.build b/tools/gputop.src/meson.build
> index ec39f4c7a..e95657fca 100644
> --- a/tools/gputop.src/meson.build
> +++ b/tools/gputop.src/meson.build
> @@ -1 +1 @@
> -gputop_src = files('gputop.c')
> +gputop_src = files('gputop.c', 'utils.c', 'xe_gputop.c')
> diff --git a/tools/meson.build b/tools/meson.build
> index 521607a4c..caca57d0e 100644
> --- a/tools/meson.build
> +++ b/tools/meson.build
> @@ -123,4 +123,5 @@ subdir('gputop.src')
> executable('gputop', sources : gputop_src,
> install : true,
> install_rpath : bindir_rpathdir,
> - dependencies : [lib_igt_drm_clients,lib_igt_drm_fdinfo,lib_igt_profiling,math],)
> + dependencies : [lib_igt_perf,lib_igt_device_scan,lib_igt_drm_clients,
> + lib_igt_drm_fdinfo,lib_igt_profiling,math],)
^ permalink raw reply [flat|nested] 15+ messages in thread
* ✗ Xe.CI.FULL: failure for Close any open drm device after engine initialization in GPUTOP (rev11)
2026-04-06 6:04 [PATCH i-g-t v10 0/5] Close any open drm device after engine initialization in GPUTOP Soham Purkait
` (6 preceding siblings ...)
2026-04-06 8:42 ` ✓ i915.CI.BAT: " Patchwork
@ 2026-04-06 11:21 ` Patchwork
2026-04-06 12:32 ` ✗ i915.CI.Full: " Patchwork
8 siblings, 0 replies; 15+ messages in thread
From: Patchwork @ 2026-04-06 11:21 UTC (permalink / raw)
To: Soham Purkait; +Cc: igt-dev
[-- Attachment #1: Type: text/plain, Size: 30732 bytes --]
== Series Details ==
Series: Close any open drm device after engine initialization in GPUTOP (rev11)
URL : https://patchwork.freedesktop.org/series/158161/
State : failure
== Summary ==
CI Bug Log - changes from XEIGT_8848_FULL -> XEIGTPW_14929_FULL
====================================================
Summary
-------
**FAILURE**
Serious unknown changes coming with XEIGTPW_14929_FULL absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in XEIGTPW_14929_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.
Participating hosts (2 -> 2)
------------------------------
No changes in participating hosts
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in XEIGTPW_14929_FULL:
### IGT changes ###
#### Possible regressions ####
* igt@xe_exec_system_allocator@fault-benchmark:
- shard-bmg: [PASS][1] -> [FAIL][2]
[1]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8848/shard-bmg-1/igt@xe_exec_system_allocator@fault-benchmark.html
[2]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-9/igt@xe_exec_system_allocator@fault-benchmark.html
* igt@xe_pm@s4-basic:
- shard-bmg: [PASS][3] -> [DMESG-WARN][4]
[3]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8848/shard-bmg-2/igt@xe_pm@s4-basic.html
[4]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-2/igt@xe_pm@s4-basic.html
* igt@xe_pmu@gt-frequency:
- shard-bmg: [PASS][5] -> [WARN][6] +1 other test warn
[5]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8848/shard-bmg-2/igt@xe_pmu@gt-frequency.html
[6]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-7/igt@xe_pmu@gt-frequency.html
Known issues
------------
Here are the changes found in XEIGTPW_14929_FULL that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@core_hotunplug@hotunplug-rescan:
- shard-bmg: [PASS][7] -> [ABORT][8] ([Intel XE#7578])
[7]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8848/shard-bmg-6/igt@core_hotunplug@hotunplug-rescan.html
[8]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-10/igt@core_hotunplug@hotunplug-rescan.html
* igt@intel_hwmon@hwmon-write:
- shard-bmg: [PASS][9] -> [FAIL][10] ([Intel XE#7445])
[9]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8848/shard-bmg-3/igt@intel_hwmon@hwmon-write.html
[10]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-1/igt@intel_hwmon@hwmon-write.html
* igt@kms_big_fb@linear-8bpp-rotate-90:
- shard-bmg: NOTRUN -> [SKIP][11] ([Intel XE#2327]) +3 other tests skip
[11]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-8/igt@kms_big_fb@linear-8bpp-rotate-90.html
* igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-180:
- shard-bmg: NOTRUN -> [SKIP][12] ([Intel XE#1124]) +4 other tests skip
[12]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-8/igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-180.html
* igt@kms_big_fb@yf-tiled-addfb:
- shard-bmg: NOTRUN -> [SKIP][13] ([Intel XE#2328] / [Intel XE#7367])
[13]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-8/igt@kms_big_fb@yf-tiled-addfb.html
* igt@kms_bw@linear-tiling-4-displays-1920x1080p:
- shard-bmg: NOTRUN -> [SKIP][14] ([Intel XE#367] / [Intel XE#7354])
[14]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-5/igt@kms_bw@linear-tiling-4-displays-1920x1080p.html
* igt@kms_ccs@bad-pixel-format-4-tiled-dg2-mc-ccs:
- shard-bmg: NOTRUN -> [SKIP][15] ([Intel XE#2887]) +4 other tests skip
[15]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-2/igt@kms_ccs@bad-pixel-format-4-tiled-dg2-mc-ccs.html
* igt@kms_ccs@crc-primary-suspend-y-tiled-gen12-rc-ccs:
- shard-bmg: NOTRUN -> [SKIP][16] ([Intel XE#3432])
[16]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-3/igt@kms_ccs@crc-primary-suspend-y-tiled-gen12-rc-ccs.html
* igt@kms_chamelium_audio@hdmi-audio:
- shard-bmg: NOTRUN -> [SKIP][17] ([Intel XE#2252]) +1 other test skip
[17]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-3/igt@kms_chamelium_audio@hdmi-audio.html
* igt@kms_chamelium_color@ctm-red-to-blue:
- shard-bmg: NOTRUN -> [SKIP][18] ([Intel XE#2325] / [Intel XE#7358])
[18]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-2/igt@kms_chamelium_color@ctm-red-to-blue.html
* igt@kms_content_protection@atomic-dpms-hdcp14@pipe-a-dp-2:
- shard-bmg: NOTRUN -> [FAIL][19] ([Intel XE#3304] / [Intel XE#7374]) +1 other test fail
[19]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-7/igt@kms_content_protection@atomic-dpms-hdcp14@pipe-a-dp-2.html
* igt@kms_cursor_crc@cursor-onscreen-32x32:
- shard-bmg: NOTRUN -> [SKIP][20] ([Intel XE#2320]) +1 other test skip
[20]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-5/igt@kms_cursor_crc@cursor-onscreen-32x32.html
* igt@kms_dirtyfb@fbc-dirtyfb-ioctl:
- shard-bmg: NOTRUN -> [SKIP][21] ([Intel XE#4210] / [Intel XE#7467])
[21]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-9/igt@kms_dirtyfb@fbc-dirtyfb-ioctl.html
* igt@kms_dsc@dsc-fractional-bpp:
- shard-bmg: NOTRUN -> [SKIP][22] ([Intel XE#2244])
[22]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-2/igt@kms_dsc@dsc-fractional-bpp.html
* igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tiledg2rcccs-downscaling:
- shard-bmg: NOTRUN -> [SKIP][23] ([Intel XE#7178] / [Intel XE#7349])
[23]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-2/igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tiledg2rcccs-downscaling.html
* igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilercccs-downscaling:
- shard-bmg: NOTRUN -> [SKIP][24] ([Intel XE#7178] / [Intel XE#7351])
[24]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-5/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilercccs-downscaling.html
* igt@kms_frontbuffer_tracking@drrs-2p-primscrn-cur-indfb-move:
- shard-bmg: NOTRUN -> [SKIP][25] ([Intel XE#2311]) +18 other tests skip
[25]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-6/igt@kms_frontbuffer_tracking@drrs-2p-primscrn-cur-indfb-move.html
* igt@kms_frontbuffer_tracking@fbc-2p-primscrn-indfb-pgflip-blt:
- shard-bmg: NOTRUN -> [SKIP][26] ([Intel XE#4141]) +7 other tests skip
[26]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-8/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-indfb-pgflip-blt.html
* igt@kms_frontbuffer_tracking@fbc-argb161616f-draw-render:
- shard-bmg: NOTRUN -> [SKIP][27] ([Intel XE#7061] / [Intel XE#7356]) +4 other tests skip
[27]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-1/igt@kms_frontbuffer_tracking@fbc-argb161616f-draw-render.html
* igt@kms_frontbuffer_tracking@fbc-tiling-y:
- shard-bmg: NOTRUN -> [SKIP][28] ([Intel XE#2352] / [Intel XE#7399])
[28]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-3/igt@kms_frontbuffer_tracking@fbc-tiling-y.html
* igt@kms_frontbuffer_tracking@psr-2p-scndscrn-shrfb-pgflip-blt:
- shard-bmg: NOTRUN -> [SKIP][29] ([Intel XE#2313]) +13 other tests skip
[29]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-1/igt@kms_frontbuffer_tracking@psr-2p-scndscrn-shrfb-pgflip-blt.html
* igt@kms_hdmi_inject@inject-audio:
- shard-bmg: [PASS][30] -> [SKIP][31] ([Intel XE#7308])
[30]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8848/shard-bmg-8/igt@kms_hdmi_inject@inject-audio.html
[31]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-8/igt@kms_hdmi_inject@inject-audio.html
* igt@kms_multipipe_modeset@basic-max-pipe-crc-check:
- shard-bmg: NOTRUN -> [SKIP][32] ([Intel XE#7591])
[32]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-3/igt@kms_multipipe_modeset@basic-max-pipe-crc-check.html
* igt@kms_plane@pixel-format-y-tiled-gen12-mc-ccs-modifier-source-clamping:
- shard-bmg: NOTRUN -> [SKIP][33] ([Intel XE#7283]) +3 other tests skip
[33]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-9/igt@kms_plane@pixel-format-y-tiled-gen12-mc-ccs-modifier-source-clamping.html
* igt@kms_pm_backlight@fade-with-dpms:
- shard-bmg: NOTRUN -> [SKIP][34] ([Intel XE#7376] / [Intel XE#870])
[34]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-1/igt@kms_pm_backlight@fade-with-dpms.html
* igt@kms_pm_dc@dc5-retention-flops:
- shard-bmg: NOTRUN -> [SKIP][35] ([Intel XE#3309] / [Intel XE#7368])
[35]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-7/igt@kms_pm_dc@dc5-retention-flops.html
* igt@kms_pm_rpm@dpms-lpsp:
- shard-bmg: NOTRUN -> [SKIP][36] ([Intel XE#1439] / [Intel XE#3141] / [Intel XE#7383] / [Intel XE#836])
[36]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-9/igt@kms_pm_rpm@dpms-lpsp.html
* igt@kms_psr2_sf@fbc-pr-cursor-plane-move-continuous-exceed-fully-sf:
- shard-bmg: NOTRUN -> [SKIP][37] ([Intel XE#1489]) +4 other tests skip
[37]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-1/igt@kms_psr2_sf@fbc-pr-cursor-plane-move-continuous-exceed-fully-sf.html
* igt@kms_psr@fbc-psr2-cursor-plane-move:
- shard-bmg: NOTRUN -> [SKIP][38] ([Intel XE#2234] / [Intel XE#2850]) +5 other tests skip
[38]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-3/igt@kms_psr@fbc-psr2-cursor-plane-move.html
* igt@kms_psr_stress_test@invalidate-primary-flip-overlay:
- shard-bmg: NOTRUN -> [SKIP][39] ([Intel XE#1406] / [Intel XE#2414])
[39]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-6/igt@kms_psr_stress_test@invalidate-primary-flip-overlay.html
* igt@kms_rotation_crc@sprite-rotation-90:
- shard-bmg: NOTRUN -> [SKIP][40] ([Intel XE#3904] / [Intel XE#7342]) +1 other test skip
[40]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-8/igt@kms_rotation_crc@sprite-rotation-90.html
* igt@kms_setmode@basic:
- shard-bmg: [PASS][41] -> [FAIL][42] ([Intel XE#6361]) +4 other tests fail
[41]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8848/shard-bmg-3/igt@kms_setmode@basic.html
[42]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-8/igt@kms_setmode@basic.html
* igt@kms_setmode@basic@pipe-a-edp-1:
- shard-lnl: [PASS][43] -> [FAIL][44] ([Intel XE#6361]) +1 other test fail
[43]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8848/shard-lnl-6/igt@kms_setmode@basic@pipe-a-edp-1.html
[44]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-lnl-3/igt@kms_setmode@basic@pipe-a-edp-1.html
* igt@kms_sharpness_filter@filter-suspend:
- shard-bmg: NOTRUN -> [SKIP][45] ([Intel XE#6503]) +1 other test skip
[45]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-1/igt@kms_sharpness_filter@filter-suspend.html
* igt@xe_compute@ccs-mode-compute-kernel:
- shard-bmg: NOTRUN -> [SKIP][46] ([Intel XE#6599])
[46]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-3/igt@xe_compute@ccs-mode-compute-kernel.html
* igt@xe_eudebug@basic-vm-access-userptr:
- shard-bmg: NOTRUN -> [SKIP][47] ([Intel XE#7636]) +5 other tests skip
[47]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-5/igt@xe_eudebug@basic-vm-access-userptr.html
* igt@xe_exec_basic@many-execqueues-many-vm-bindexecqueue-userptr-invalidate:
- shard-bmg: [PASS][48] -> [INCOMPLETE][49] ([Intel XE#2594])
[48]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8848/shard-bmg-10/igt@xe_exec_basic@many-execqueues-many-vm-bindexecqueue-userptr-invalidate.html
[49]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-3/igt@xe_exec_basic@many-execqueues-many-vm-bindexecqueue-userptr-invalidate.html
* igt@xe_exec_basic@multigpu-once-basic-defer-bind:
- shard-bmg: NOTRUN -> [SKIP][50] ([Intel XE#2322] / [Intel XE#7372]) +6 other tests skip
[50]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-2/igt@xe_exec_basic@multigpu-once-basic-defer-bind.html
* igt@xe_exec_fault_mode@many-multi-queue-userptr-invalidate-imm:
- shard-bmg: NOTRUN -> [SKIP][51] ([Intel XE#7136]) +8 other tests skip
[51]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-2/igt@xe_exec_fault_mode@many-multi-queue-userptr-invalidate-imm.html
* igt@xe_exec_multi_queue@many-execs-preempt-mode-fault-userptr-invalidate:
- shard-bmg: NOTRUN -> [SKIP][52] ([Intel XE#6874]) +18 other tests skip
[52]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-5/igt@xe_exec_multi_queue@many-execs-preempt-mode-fault-userptr-invalidate.html
* igt@xe_exec_threads@threads-multi-queue-mixed-userptr-invalidate-race:
- shard-bmg: NOTRUN -> [SKIP][53] ([Intel XE#7138]) +6 other tests skip
[53]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-5/igt@xe_exec_threads@threads-multi-queue-mixed-userptr-invalidate-race.html
* igt@xe_multigpu_svm@mgpu-concurrent-access-basic:
- shard-bmg: NOTRUN -> [SKIP][54] ([Intel XE#6964]) +1 other test skip
[54]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-8/igt@xe_multigpu_svm@mgpu-concurrent-access-basic.html
* igt@xe_pat@pat-index-xelpg:
- shard-bmg: NOTRUN -> [SKIP][55] ([Intel XE#2236] / [Intel XE#7590])
[55]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-10/igt@xe_pat@pat-index-xelpg.html
* igt@xe_pm@s4-d3cold-basic-exec:
- shard-bmg: NOTRUN -> [SKIP][56] ([Intel XE#2284] / [Intel XE#7370])
[56]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-6/igt@xe_pm@s4-d3cold-basic-exec.html
* igt@xe_pxp@pxp-stale-bo-exec-post-termination-irq:
- shard-bmg: NOTRUN -> [SKIP][57] ([Intel XE#4733] / [Intel XE#7417])
[57]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-5/igt@xe_pxp@pxp-stale-bo-exec-post-termination-irq.html
* igt@xe_query@multigpu-query-uc-fw-version-guc:
- shard-bmg: NOTRUN -> [SKIP][58] ([Intel XE#944])
[58]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-2/igt@xe_query@multigpu-query-uc-fw-version-guc.html
* igt@xe_sriov_flr@flr-vf1-clear:
- shard-bmg: [PASS][59] -> [FAIL][60] ([Intel XE#5937])
[59]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8848/shard-bmg-9/igt@xe_sriov_flr@flr-vf1-clear.html
[60]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-7/igt@xe_sriov_flr@flr-vf1-clear.html
#### Possible fixes ####
* igt@kms_cursor_legacy@flip-vs-cursor-legacy:
- shard-bmg: [FAIL][61] ([Intel XE#7571]) -> [PASS][62]
[61]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8848/shard-bmg-2/igt@kms_cursor_legacy@flip-vs-cursor-legacy.html
[62]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-10/igt@kms_cursor_legacy@flip-vs-cursor-legacy.html
* igt@kms_flip@flip-vs-expired-vblank-interruptible:
- shard-lnl: [FAIL][63] ([Intel XE#301] / [Intel XE#3149]) -> [PASS][64] +1 other test pass
[63]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8848/shard-lnl-1/igt@kms_flip@flip-vs-expired-vblank-interruptible.html
[64]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-lnl-8/igt@kms_flip@flip-vs-expired-vblank-interruptible.html
* igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-modifiers@pipe-d:
- shard-bmg: [DMESG-WARN][65] -> [PASS][66] +3 other tests pass
[65]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8848/shard-bmg-6/igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-modifiers@pipe-d.html
[66]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-8/igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-modifiers@pipe-d.html
* igt@xe_module_load@load:
- shard-bmg: ([PASS][67], [PASS][68], [PASS][69], [PASS][70], [PASS][71], [PASS][72], [PASS][73], [PASS][74], [PASS][75], [PASS][76], [PASS][77], [PASS][78], [PASS][79], [PASS][80], [PASS][81], [PASS][82], [PASS][83], [PASS][84], [PASS][85], [PASS][86], [PASS][87], [SKIP][88], [PASS][89], [PASS][90], [PASS][91]) ([Intel XE#2457] / [Intel XE#7405]) -> ([PASS][92], [PASS][93], [PASS][94], [PASS][95], [PASS][96], [PASS][97], [PASS][98], [PASS][99], [PASS][100], [PASS][101], [PASS][102], [PASS][103], [PASS][104], [PASS][105], [PASS][106], [PASS][107], [PASS][108], [PASS][109], [PASS][110], [PASS][111], [PASS][112], [PASS][113], [PASS][114], [PASS][115], [PASS][116])
[67]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8848/shard-bmg-8/igt@xe_module_load@load.html
[68]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8848/shard-bmg-8/igt@xe_module_load@load.html
[69]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8848/shard-bmg-3/igt@xe_module_load@load.html
[70]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8848/shard-bmg-5/igt@xe_module_load@load.html
[71]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8848/shard-bmg-8/igt@xe_module_load@load.html
[72]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8848/shard-bmg-2/igt@xe_module_load@load.html
[73]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8848/shard-bmg-10/igt@xe_module_load@load.html
[74]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8848/shard-bmg-7/igt@xe_module_load@load.html
[75]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8848/shard-bmg-9/igt@xe_module_load@load.html
[76]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8848/shard-bmg-3/igt@xe_module_load@load.html
[77]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8848/shard-bmg-1/igt@xe_module_load@load.html
[78]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8848/shard-bmg-1/igt@xe_module_load@load.html
[79]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8848/shard-bmg-7/igt@xe_module_load@load.html
[80]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8848/shard-bmg-1/igt@xe_module_load@load.html
[81]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8848/shard-bmg-5/igt@xe_module_load@load.html
[82]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8848/shard-bmg-2/igt@xe_module_load@load.html
[83]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8848/shard-bmg-2/igt@xe_module_load@load.html
[84]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8848/shard-bmg-7/igt@xe_module_load@load.html
[85]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8848/shard-bmg-10/igt@xe_module_load@load.html
[86]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8848/shard-bmg-6/igt@xe_module_load@load.html
[87]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8848/shard-bmg-10/igt@xe_module_load@load.html
[88]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8848/shard-bmg-3/igt@xe_module_load@load.html
[89]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8848/shard-bmg-3/igt@xe_module_load@load.html
[90]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8848/shard-bmg-9/igt@xe_module_load@load.html
[91]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8848/shard-bmg-9/igt@xe_module_load@load.html
[92]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-2/igt@xe_module_load@load.html
[93]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-7/igt@xe_module_load@load.html
[94]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-1/igt@xe_module_load@load.html
[95]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-10/igt@xe_module_load@load.html
[96]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-8/igt@xe_module_load@load.html
[97]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-8/igt@xe_module_load@load.html
[98]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-8/igt@xe_module_load@load.html
[99]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-1/igt@xe_module_load@load.html
[100]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-6/igt@xe_module_load@load.html
[101]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-9/igt@xe_module_load@load.html
[102]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-9/igt@xe_module_load@load.html
[103]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-9/igt@xe_module_load@load.html
[104]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-5/igt@xe_module_load@load.html
[105]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-3/igt@xe_module_load@load.html
[106]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-3/igt@xe_module_load@load.html
[107]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-3/igt@xe_module_load@load.html
[108]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-10/igt@xe_module_load@load.html
[109]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-5/igt@xe_module_load@load.html
[110]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-5/igt@xe_module_load@load.html
[111]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-2/igt@xe_module_load@load.html
[112]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-2/igt@xe_module_load@load.html
[113]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-2/igt@xe_module_load@load.html
[114]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-6/igt@xe_module_load@load.html
[115]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-7/igt@xe_module_load@load.html
[116]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-7/igt@xe_module_load@load.html
* igt@xe_sriov_flr@flr-each-isolation:
- shard-bmg: [FAIL][117] ([Intel XE#6569]) -> [PASS][118]
[117]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8848/shard-bmg-8/igt@xe_sriov_flr@flr-each-isolation.html
[118]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-3/igt@xe_sriov_flr@flr-each-isolation.html
#### Warnings ####
* igt@kms_frontbuffer_tracking@drrs-2p-primscrn-cur-indfb-onoff:
- shard-bmg: [SKIP][119] ([Intel XE#2312]) -> [SKIP][120] ([Intel XE#2311])
[119]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8848/shard-bmg-6/igt@kms_frontbuffer_tracking@drrs-2p-primscrn-cur-indfb-onoff.html
[120]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-9/igt@kms_frontbuffer_tracking@drrs-2p-primscrn-cur-indfb-onoff.html
* igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-indfb-pgflip-blt:
- shard-bmg: [ABORT][121] ([Intel XE#5545]) -> [SKIP][122] ([Intel XE#4141])
[121]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8848/shard-bmg-2/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-indfb-pgflip-blt.html
[122]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-5/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-indfb-pgflip-blt.html
* igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-shrfb-msflip-blt:
- shard-bmg: [SKIP][123] ([Intel XE#2312]) -> [SKIP][124] ([Intel XE#2313])
[123]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8848/shard-bmg-6/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-shrfb-msflip-blt.html
[124]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-2/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-shrfb-msflip-blt.html
* igt@kms_tiled_display@basic-test-pattern-with-chamelium:
- shard-bmg: [SKIP][125] ([Intel XE#2426] / [Intel XE#5848]) -> [SKIP][126] ([Intel XE#2509] / [Intel XE#7437])
[125]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8848/shard-bmg-8/igt@kms_tiled_display@basic-test-pattern-with-chamelium.html
[126]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/shard-bmg-10/igt@kms_tiled_display@basic-test-pattern-with-chamelium.html
[Intel XE#1124]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1124
[Intel XE#1406]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1406
[Intel XE#1439]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1439
[Intel XE#1489]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1489
[Intel XE#2234]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2234
[Intel XE#2236]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2236
[Intel XE#2244]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2244
[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#2312]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2312
[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#2328]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2328
[Intel XE#2352]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2352
[Intel XE#2414]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2414
[Intel XE#2426]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2426
[Intel XE#2457]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2457
[Intel XE#2509]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2509
[Intel XE#2594]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2594
[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#301]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/301
[Intel XE#3141]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3141
[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#3309]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3309
[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#3904]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3904
[Intel XE#4141]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4141
[Intel XE#4210]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4210
[Intel XE#4733]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4733
[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#5937]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5937
[Intel XE#6361]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6361
[Intel XE#6503]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6503
[Intel XE#6569]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6569
[Intel XE#6599]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6599
[Intel XE#6874]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6874
[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#7136]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7136
[Intel XE#7138]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7138
[Intel XE#7178]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7178
[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#7342]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7342
[Intel XE#7349]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7349
[Intel XE#7351]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7351
[Intel XE#7354]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7354
[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#7367]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7367
[Intel XE#7368]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7368
[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#7383]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7383
[Intel XE#7399]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7399
[Intel XE#7405]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7405
[Intel XE#7417]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7417
[Intel XE#7437]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7437
[Intel XE#7445]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7445
[Intel XE#7467]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7467
[Intel XE#7571]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7571
[Intel XE#7578]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7578
[Intel XE#7590]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7590
[Intel XE#7591]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7591
[Intel XE#7636]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7636
[Intel XE#836]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/836
[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_8848 -> IGTPW_14929
IGTPW_14929: 14929
IGT_8848: 8848
xe-4852-d873f0156bd08a3031097d459e2d3604bfe1b1bf: d873f0156bd08a3031097d459e2d3604bfe1b1bf
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_14929/index.html
[-- Attachment #2: Type: text/html, Size: 33205 bytes --]
^ permalink raw reply [flat|nested] 15+ messages in thread
* ✗ i915.CI.Full: failure for Close any open drm device after engine initialization in GPUTOP (rev11)
2026-04-06 6:04 [PATCH i-g-t v10 0/5] Close any open drm device after engine initialization in GPUTOP Soham Purkait
` (7 preceding siblings ...)
2026-04-06 11:21 ` ✗ Xe.CI.FULL: failure " Patchwork
@ 2026-04-06 12:32 ` Patchwork
8 siblings, 0 replies; 15+ messages in thread
From: Patchwork @ 2026-04-06 12:32 UTC (permalink / raw)
To: Soham Purkait; +Cc: igt-dev
[-- Attachment #1: Type: text/plain, Size: 137657 bytes --]
== Series Details ==
Series: Close any open drm device after engine initialization in GPUTOP (rev11)
URL : https://patchwork.freedesktop.org/series/158161/
State : failure
== Summary ==
CI Bug Log - changes from IGT_8848_full -> IGTPW_14929_full
====================================================
Summary
-------
**FAILURE**
Serious unknown changes coming with IGTPW_14929_full absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in IGTPW_14929_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_14929/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_14929_full:
### IGT changes ###
#### Possible regressions ####
* igt@testdisplay:
- shard-snb: [PASS][1] -> [DMESG-WARN][2]
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-snb5/igt@testdisplay.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-snb5/igt@testdisplay.html
Known issues
------------
Here are the changes found in IGTPW_14929_full that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@api_intel_bb@blit-reloc-keep-cache:
- shard-dg1: NOTRUN -> [SKIP][3] ([i915#8411])
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-18/igt@api_intel_bb@blit-reloc-keep-cache.html
* igt@device_reset@cold-reset-bound:
- shard-dg2: NOTRUN -> [SKIP][4] ([i915#11078])
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-3/igt@device_reset@cold-reset-bound.html
* igt@drm_buddy@drm_buddy:
- shard-tglu-1: NOTRUN -> [SKIP][5] ([i915#15678])
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-1/igt@drm_buddy@drm_buddy.html
* igt@gem_basic@multigpu-create-close:
- shard-rkl: NOTRUN -> [SKIP][6] ([i915#7697])
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-4/igt@gem_basic@multigpu-create-close.html
* igt@gem_busy@semaphore:
- shard-dg2: NOTRUN -> [SKIP][7] ([i915#3936])
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-7/igt@gem_busy@semaphore.html
* igt@gem_ccs@ctrl-surf-copy-new-ctx:
- shard-rkl: NOTRUN -> [SKIP][8] ([i915#14544] / [i915#9323])
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@gem_ccs@ctrl-surf-copy-new-ctx.html
* igt@gem_ccs@large-ctrl-surf-copy:
- shard-rkl: NOTRUN -> [SKIP][9] ([i915#13008])
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-5/igt@gem_ccs@large-ctrl-surf-copy.html
- shard-tglu-1: NOTRUN -> [SKIP][10] ([i915#13008])
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-1/igt@gem_ccs@large-ctrl-surf-copy.html
* igt@gem_ccs@suspend-resume@xmajor-compressed-compfmt0-smem-lmem0:
- shard-dg2: NOTRUN -> [INCOMPLETE][11] ([i915#12392] / [i915#13356])
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-6/igt@gem_ccs@suspend-resume@xmajor-compressed-compfmt0-smem-lmem0.html
* igt@gem_close_race@multigpu-basic-threads:
- shard-dg2: NOTRUN -> [SKIP][12] ([i915#7697])
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-1/igt@gem_close_race@multigpu-basic-threads.html
* igt@gem_ctx_isolation@preservation-s3:
- shard-rkl: [PASS][13] -> [INCOMPLETE][14] ([i915#13356]) +3 other tests incomplete
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-7/igt@gem_ctx_isolation@preservation-s3.html
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-3/igt@gem_ctx_isolation@preservation-s3.html
* igt@gem_ctx_persistence@heartbeat-hostile:
- shard-dg2: NOTRUN -> [SKIP][15] ([i915#8555]) +1 other test skip
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-7/igt@gem_ctx_persistence@heartbeat-hostile.html
* igt@gem_ctx_persistence@heartbeat-many:
- shard-dg1: NOTRUN -> [SKIP][16] ([i915#8555])
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-14/igt@gem_ctx_persistence@heartbeat-many.html
- shard-mtlp: NOTRUN -> [SKIP][17] ([i915#8555])
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-mtlp-5/igt@gem_ctx_persistence@heartbeat-many.html
* igt@gem_ctx_sseu@mmap-args:
- shard-rkl: NOTRUN -> [SKIP][18] ([i915#280])
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-1/igt@gem_ctx_sseu@mmap-args.html
* igt@gem_eio@in-flight-suspend:
- shard-rkl: [PASS][19] -> [INCOMPLETE][20] ([i915#13390])
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-6/igt@gem_eio@in-flight-suspend.html
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-3/igt@gem_eio@in-flight-suspend.html
- shard-glk11: NOTRUN -> [INCOMPLETE][21] ([i915#13390])
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-glk11/igt@gem_eio@in-flight-suspend.html
* igt@gem_exec_balancer@invalid-bonds:
- shard-dg2: NOTRUN -> [SKIP][22] ([i915#4036])
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-7/igt@gem_exec_balancer@invalid-bonds.html
* igt@gem_exec_balancer@parallel:
- shard-rkl: NOTRUN -> [SKIP][23] ([i915#4525]) +1 other test skip
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-7/igt@gem_exec_balancer@parallel.html
* igt@gem_exec_balancer@parallel-keep-submit-fence:
- shard-tglu: NOTRUN -> [SKIP][24] ([i915#4525])
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-4/igt@gem_exec_balancer@parallel-keep-submit-fence.html
* igt@gem_exec_capture@capture-invisible:
- shard-glk11: NOTRUN -> [SKIP][25] ([i915#6334]) +1 other test skip
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-glk11/igt@gem_exec_capture@capture-invisible.html
* igt@gem_exec_fence@submit3:
- shard-dg2: NOTRUN -> [SKIP][26] ([i915#4812]) +1 other test skip
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-1/igt@gem_exec_fence@submit3.html
- shard-mtlp: NOTRUN -> [SKIP][27] ([i915#4812]) +1 other test skip
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-mtlp-6/igt@gem_exec_fence@submit3.html
* igt@gem_exec_flush@basic-wb-set-default:
- shard-dg2: NOTRUN -> [SKIP][28] ([i915#3539] / [i915#4852]) +1 other test skip
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-8/igt@gem_exec_flush@basic-wb-set-default.html
* igt@gem_exec_reloc@basic-cpu-read-active:
- shard-rkl: NOTRUN -> [SKIP][29] ([i915#3281]) +8 other tests skip
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-4/igt@gem_exec_reloc@basic-cpu-read-active.html
* igt@gem_exec_reloc@basic-range-active:
- shard-rkl: NOTRUN -> [SKIP][30] ([i915#14544] / [i915#3281]) +1 other test skip
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@gem_exec_reloc@basic-range-active.html
* igt@gem_exec_reloc@basic-write-wc-noreloc:
- shard-dg2: NOTRUN -> [SKIP][31] ([i915#3281]) +5 other tests skip
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-6/igt@gem_exec_reloc@basic-write-wc-noreloc.html
* igt@gem_exec_schedule@reorder-wide:
- shard-dg2: NOTRUN -> [SKIP][32] ([i915#4537] / [i915#4812]) +1 other test skip
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-4/igt@gem_exec_schedule@reorder-wide.html
- shard-dg1: NOTRUN -> [SKIP][33] ([i915#4812]) +3 other tests skip
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-18/igt@gem_exec_schedule@reorder-wide.html
- shard-mtlp: NOTRUN -> [SKIP][34] ([i915#4537] / [i915#4812])
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-mtlp-5/igt@gem_exec_schedule@reorder-wide.html
* igt@gem_exec_suspend@basic-s0:
- shard-rkl: [PASS][35] -> [ABORT][36] ([i915#15131]) +1 other test abort
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-7/igt@gem_exec_suspend@basic-s0.html
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-1/igt@gem_exec_suspend@basic-s0.html
* igt@gem_fenced_exec_thrash@no-spare-fences-interruptible:
- shard-dg1: NOTRUN -> [SKIP][37] ([i915#4860])
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-15/igt@gem_fenced_exec_thrash@no-spare-fences-interruptible.html
* igt@gem_lmem_evict@dontneed-evict-race:
- shard-tglu: NOTRUN -> [SKIP][38] ([i915#4613] / [i915#7582])
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-8/igt@gem_lmem_evict@dontneed-evict-race.html
* igt@gem_lmem_swapping@heavy-random:
- shard-tglu: NOTRUN -> [SKIP][39] ([i915#4613]) +1 other test skip
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-6/igt@gem_lmem_swapping@heavy-random.html
* igt@gem_lmem_swapping@heavy-verify-multi-ccs:
- shard-glk: NOTRUN -> [SKIP][40] ([i915#4613]) +4 other tests skip
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-glk3/igt@gem_lmem_swapping@heavy-verify-multi-ccs.html
* igt@gem_lmem_swapping@parallel-random:
- shard-rkl: NOTRUN -> [SKIP][41] ([i915#4613])
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-3/igt@gem_lmem_swapping@parallel-random.html
- shard-mtlp: NOTRUN -> [SKIP][42] ([i915#4613])
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-mtlp-8/igt@gem_lmem_swapping@parallel-random.html
* igt@gem_lmem_swapping@parallel-random-verify-ccs:
- shard-tglu-1: NOTRUN -> [SKIP][43] ([i915#4613]) +3 other tests skip
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-1/igt@gem_lmem_swapping@parallel-random-verify-ccs.html
* igt@gem_mmap@bad-offset:
- shard-dg2: NOTRUN -> [SKIP][44] ([i915#4083]) +3 other tests skip
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-7/igt@gem_mmap@bad-offset.html
* igt@gem_mmap_gtt@close-race:
- shard-dg1: NOTRUN -> [SKIP][45] ([i915#4077]) +6 other tests skip
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-16/igt@gem_mmap_gtt@close-race.html
- shard-mtlp: NOTRUN -> [SKIP][46] ([i915#4077]) +3 other tests skip
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-mtlp-8/igt@gem_mmap_gtt@close-race.html
* igt@gem_mmap_wc@copy:
- shard-dg1: NOTRUN -> [SKIP][47] ([i915#4083]) +1 other test skip
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-18/igt@gem_mmap_wc@copy.html
* igt@gem_partial_pwrite_pread@write-display:
- shard-rkl: NOTRUN -> [SKIP][48] ([i915#3282]) +2 other tests skip
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-7/igt@gem_partial_pwrite_pread@write-display.html
* igt@gem_partial_pwrite_pread@write-snoop:
- shard-dg2: NOTRUN -> [SKIP][49] ([i915#3282]) +2 other tests skip
[49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-8/igt@gem_partial_pwrite_pread@write-snoop.html
- shard-dg1: NOTRUN -> [SKIP][50] ([i915#3282])
[50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-13/igt@gem_partial_pwrite_pread@write-snoop.html
- shard-mtlp: NOTRUN -> [SKIP][51] ([i915#3282])
[51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-mtlp-8/igt@gem_partial_pwrite_pread@write-snoop.html
* igt@gem_partial_pwrite_pread@writes-after-reads-display:
- shard-rkl: NOTRUN -> [SKIP][52] ([i915#14544] / [i915#3282])
[52]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@gem_partial_pwrite_pread@writes-after-reads-display.html
* igt@gem_pread@exhaustion:
- shard-glk: NOTRUN -> [WARN][53] ([i915#2658])
[53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-glk2/igt@gem_pread@exhaustion.html
- shard-snb: NOTRUN -> [WARN][54] ([i915#2658])
[54]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-snb4/igt@gem_pread@exhaustion.html
* igt@gem_pxp@dmabuf-shared-protected-dst-is-context-refcounted:
- shard-dg1: NOTRUN -> [SKIP][55] ([i915#4270]) +1 other test skip
[55]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-18/igt@gem_pxp@dmabuf-shared-protected-dst-is-context-refcounted.html
* igt@gem_pxp@hw-rejects-pxp-buffer:
- shard-rkl: NOTRUN -> [SKIP][56] ([i915#13717])
[56]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-3/igt@gem_pxp@hw-rejects-pxp-buffer.html
- shard-tglu: NOTRUN -> [SKIP][57] ([i915#13398])
[57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-2/igt@gem_pxp@hw-rejects-pxp-buffer.html
- shard-mtlp: NOTRUN -> [SKIP][58] ([i915#13398])
[58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-mtlp-4/igt@gem_pxp@hw-rejects-pxp-buffer.html
* igt@gem_pxp@regular-baseline-src-copy-readible:
- shard-dg2: NOTRUN -> [SKIP][59] ([i915#4270]) +2 other tests skip
[59]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-1/igt@gem_pxp@regular-baseline-src-copy-readible.html
* igt@gem_render_copy@y-tiled-to-vebox-x-tiled:
- shard-mtlp: NOTRUN -> [SKIP][60] ([i915#8428])
[60]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-mtlp-6/igt@gem_render_copy@y-tiled-to-vebox-x-tiled.html
* igt@gem_render_copy@yf-tiled-ccs-to-y-tiled:
- shard-dg2: NOTRUN -> [SKIP][61] ([i915#5190] / [i915#8428]) +3 other tests skip
[61]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-1/igt@gem_render_copy@yf-tiled-ccs-to-y-tiled.html
* igt@gem_set_tiling_vs_blt@untiled-to-tiled:
- shard-rkl: NOTRUN -> [SKIP][62] ([i915#8411]) +1 other test skip
[62]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-5/igt@gem_set_tiling_vs_blt@untiled-to-tiled.html
* igt@gem_set_tiling_vs_gtt:
- shard-dg1: NOTRUN -> [SKIP][63] ([i915#4079]) +1 other test skip
[63]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-14/igt@gem_set_tiling_vs_gtt.html
- shard-mtlp: NOTRUN -> [SKIP][64] ([i915#4079])
[64]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-mtlp-5/igt@gem_set_tiling_vs_gtt.html
- shard-dg2: NOTRUN -> [SKIP][65] ([i915#4079])
[65]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-4/igt@gem_set_tiling_vs_gtt.html
* igt@gem_softpin@evict-snoop:
- shard-rkl: NOTRUN -> [SKIP][66] ([i915#14544]) +2 other tests skip
[66]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@gem_softpin@evict-snoop.html
- shard-dg1: NOTRUN -> [SKIP][67] ([i915#4885])
[67]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-14/igt@gem_softpin@evict-snoop.html
- shard-mtlp: NOTRUN -> [SKIP][68] ([i915#4885])
[68]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-mtlp-4/igt@gem_softpin@evict-snoop.html
- shard-dg2: NOTRUN -> [SKIP][69] ([i915#4885])
[69]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-8/igt@gem_softpin@evict-snoop.html
* igt@gem_tiled_swapping@non-threaded:
- shard-dg2: NOTRUN -> [SKIP][70] ([i915#4077]) +12 other tests skip
[70]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-3/igt@gem_tiled_swapping@non-threaded.html
* igt@gem_userptr_blits@create-destroy-unsync:
- shard-dg2: NOTRUN -> [SKIP][71] ([i915#3297]) +4 other tests skip
[71]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-4/igt@gem_userptr_blits@create-destroy-unsync.html
- shard-rkl: NOTRUN -> [SKIP][72] ([i915#3297]) +2 other tests skip
[72]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-8/igt@gem_userptr_blits@create-destroy-unsync.html
- shard-dg1: NOTRUN -> [SKIP][73] ([i915#3297]) +3 other tests skip
[73]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-14/igt@gem_userptr_blits@create-destroy-unsync.html
- shard-tglu: NOTRUN -> [SKIP][74] ([i915#3297]) +2 other tests skip
[74]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-8/igt@gem_userptr_blits@create-destroy-unsync.html
- shard-mtlp: NOTRUN -> [SKIP][75] ([i915#3297]) +3 other tests skip
[75]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-mtlp-5/igt@gem_userptr_blits@create-destroy-unsync.html
* igt@gem_userptr_blits@dmabuf-sync:
- shard-glk: NOTRUN -> [SKIP][76] ([i915#3323])
[76]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-glk8/igt@gem_userptr_blits@dmabuf-sync.html
- shard-rkl: NOTRUN -> [SKIP][77] ([i915#14544] / [i915#3297] / [i915#3323])
[77]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@gem_userptr_blits@dmabuf-sync.html
* igt@gen9_exec_parse@bb-start-out:
- shard-dg2: NOTRUN -> [SKIP][78] ([i915#2856]) +2 other tests skip
[78]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-4/igt@gen9_exec_parse@bb-start-out.html
* igt@gen9_exec_parse@secure-batches:
- shard-rkl: NOTRUN -> [SKIP][79] ([i915#2527]) +5 other tests skip
[79]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-3/igt@gen9_exec_parse@secure-batches.html
* igt@gen9_exec_parse@unaligned-access:
- shard-dg1: NOTRUN -> [SKIP][80] ([i915#2527]) +1 other test skip
[80]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-16/igt@gen9_exec_parse@unaligned-access.html
- shard-mtlp: NOTRUN -> [SKIP][81] ([i915#2856])
[81]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-mtlp-6/igt@gen9_exec_parse@unaligned-access.html
* igt@gen9_exec_parse@unaligned-jump:
- shard-tglu: NOTRUN -> [SKIP][82] ([i915#2527] / [i915#2856]) +2 other tests skip
[82]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-7/igt@gen9_exec_parse@unaligned-jump.html
* igt@i915_drm_fdinfo@all-busy-check-all:
- shard-mtlp: NOTRUN -> [SKIP][83] ([i915#14123])
[83]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-mtlp-7/igt@i915_drm_fdinfo@all-busy-check-all.html
- shard-dg2: NOTRUN -> [SKIP][84] ([i915#14123])
[84]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-5/igt@i915_drm_fdinfo@all-busy-check-all.html
* igt@i915_drm_fdinfo@virtual-busy:
- shard-dg2: NOTRUN -> [SKIP][85] ([i915#14118])
[85]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-4/igt@i915_drm_fdinfo@virtual-busy.html
* igt@i915_drm_fdinfo@virtual-busy-idle-all:
- shard-dg1: NOTRUN -> [SKIP][86] ([i915#14118])
[86]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-18/igt@i915_drm_fdinfo@virtual-busy-idle-all.html
* igt@i915_module_load@fault-injection@intel_connector_register:
- shard-mtlp: NOTRUN -> [DMESG-WARN][87] ([i915#15342])
[87]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-mtlp-2/igt@i915_module_load@fault-injection@intel_connector_register.html
* igt@i915_module_load@reload-no-display:
- shard-tglu: [PASS][88] -> [DMESG-WARN][89] ([i915#13029] / [i915#14545])
[88]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-tglu-3/igt@i915_module_load@reload-no-display.html
[89]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-4/igt@i915_module_load@reload-no-display.html
* igt@i915_pm_freq_api@freq-basic-api:
- shard-rkl: NOTRUN -> [SKIP][90] ([i915#14544] / [i915#8399])
[90]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@i915_pm_freq_api@freq-basic-api.html
* igt@i915_pm_freq_api@freq-reset-multiple:
- shard-tglu: NOTRUN -> [SKIP][91] ([i915#8399])
[91]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-6/igt@i915_pm_freq_api@freq-reset-multiple.html
* igt@i915_pm_freq_mult@media-freq@gt0:
- shard-tglu-1: NOTRUN -> [SKIP][92] ([i915#6590]) +1 other test skip
[92]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-1/igt@i915_pm_freq_mult@media-freq@gt0.html
* igt@i915_pm_rpm@system-suspend:
- shard-rkl: [PASS][93] -> [ABORT][94] ([i915#15060])
[93]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-5/igt@i915_pm_rpm@system-suspend.html
[94]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-1/igt@i915_pm_rpm@system-suspend.html
* igt@i915_pm_rpm@system-suspend-devices:
- shard-snb: NOTRUN -> [SKIP][95] +93 other tests skip
[95]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-snb7/igt@i915_pm_rpm@system-suspend-devices.html
* igt@i915_pm_rpm@system-suspend-execbuf:
- shard-glk11: NOTRUN -> [INCOMPLETE][96] ([i915#13356] / [i915#15172])
[96]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-glk11/igt@i915_pm_rpm@system-suspend-execbuf.html
* igt@i915_pm_rps@basic-api:
- shard-dg1: NOTRUN -> [SKIP][97] ([i915#11681] / [i915#6621])
[97]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-17/igt@i915_pm_rps@basic-api.html
- shard-mtlp: NOTRUN -> [SKIP][98] ([i915#11681] / [i915#6621])
[98]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-mtlp-2/igt@i915_pm_rps@basic-api.html
- shard-dg2: NOTRUN -> [SKIP][99] ([i915#11681] / [i915#6621])
[99]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-8/igt@i915_pm_rps@basic-api.html
* igt@i915_pm_rps@thresholds-idle-park:
- shard-dg2: NOTRUN -> [SKIP][100] ([i915#11681])
[100]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-7/igt@i915_pm_rps@thresholds-idle-park.html
- shard-dg1: NOTRUN -> [SKIP][101] ([i915#11681])
[101]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-15/igt@i915_pm_rps@thresholds-idle-park.html
- shard-mtlp: NOTRUN -> [SKIP][102] ([i915#11681])
[102]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-mtlp-3/igt@i915_pm_rps@thresholds-idle-park.html
* igt@i915_power@sanity:
- shard-mtlp: [PASS][103] -> [SKIP][104] ([i915#7984])
[103]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-mtlp-5/igt@i915_power@sanity.html
[104]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-mtlp-4/igt@i915_power@sanity.html
* igt@i915_query@hwconfig_table:
- shard-rkl: NOTRUN -> [SKIP][105] ([i915#14544] / [i915#6245])
[105]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@i915_query@hwconfig_table.html
* igt@i915_suspend@debugfs-reader:
- shard-glk: NOTRUN -> [INCOMPLETE][106] ([i915#4817])
[106]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-glk8/igt@i915_suspend@debugfs-reader.html
- shard-rkl: NOTRUN -> [INCOMPLETE][107] ([i915#4817])
[107]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-4/igt@i915_suspend@debugfs-reader.html
* igt@kms_addfb_basic@framebuffer-vs-set-tiling:
- shard-dg2: NOTRUN -> [SKIP][108] ([i915#4212]) +3 other tests skip
[108]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-6/igt@kms_addfb_basic@framebuffer-vs-set-tiling.html
* igt@kms_addfb_basic@invalid-smem-bo-on-discrete:
- shard-tglu: NOTRUN -> [SKIP][109] ([i915#12454] / [i915#12712])
[109]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-2/igt@kms_addfb_basic@invalid-smem-bo-on-discrete.html
* igt@kms_addfb_basic@tile-pitch-mismatch:
- shard-dg1: NOTRUN -> [SKIP][110] ([i915#4212])
[110]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-14/igt@kms_addfb_basic@tile-pitch-mismatch.html
* igt@kms_async_flips@async-flip-suspend-resume:
- shard-snb: [PASS][111] -> [ABORT][112] ([i915#15840]) +1 other test abort
[111]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-snb5/igt@kms_async_flips@async-flip-suspend-resume.html
[112]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-snb5/igt@kms_async_flips@async-flip-suspend-resume.html
* igt@kms_atomic@plane-primary-overlay-mutable-zpos:
- shard-dg2: NOTRUN -> [SKIP][113] ([i915#9531])
[113]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-1/igt@kms_atomic@plane-primary-overlay-mutable-zpos.html
* igt@kms_atomic_transition@plane-toggle-modeset-transition@pipe-a-hdmi-a-3:
- shard-dg2: [PASS][114] -> [FAIL][115] ([i915#5956]) +1 other test fail
[114]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-dg2-3/igt@kms_atomic_transition@plane-toggle-modeset-transition@pipe-a-hdmi-a-3.html
[115]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-3/igt@kms_atomic_transition@plane-toggle-modeset-transition@pipe-a-hdmi-a-3.html
* igt@kms_big_fb@4-tiled-16bpp-rotate-0:
- shard-tglu-1: NOTRUN -> [SKIP][116] ([i915#5286]) +2 other tests skip
[116]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-1/igt@kms_big_fb@4-tiled-16bpp-rotate-0.html
* igt@kms_big_fb@4-tiled-16bpp-rotate-180:
- shard-dg1: NOTRUN -> [SKIP][117] ([i915#4538] / [i915#5286]) +1 other test skip
[117]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-17/igt@kms_big_fb@4-tiled-16bpp-rotate-180.html
- shard-tglu: NOTRUN -> [SKIP][118] ([i915#5286]) +2 other tests skip
[118]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-3/igt@kms_big_fb@4-tiled-16bpp-rotate-180.html
* igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-0-hflip:
- shard-rkl: NOTRUN -> [SKIP][119] ([i915#5286]) +5 other tests skip
[119]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-2/igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-0-hflip.html
* igt@kms_big_fb@linear-32bpp-rotate-270:
- shard-dg2: NOTRUN -> [SKIP][120] +7 other tests skip
[120]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-7/igt@kms_big_fb@linear-32bpp-rotate-270.html
* igt@kms_big_fb@linear-max-hw-stride-64bpp-rotate-0-hflip:
- shard-dg2: NOTRUN -> [SKIP][121] ([i915#3828])
[121]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-1/igt@kms_big_fb@linear-max-hw-stride-64bpp-rotate-0-hflip.html
* igt@kms_big_fb@linear-max-hw-stride-64bpp-rotate-180-hflip:
- shard-rkl: NOTRUN -> [SKIP][122] ([i915#3828]) +1 other test skip
[122]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-7/igt@kms_big_fb@linear-max-hw-stride-64bpp-rotate-180-hflip.html
* igt@kms_big_fb@x-tiled-64bpp-rotate-90:
- shard-dg1: NOTRUN -> [SKIP][123] ([i915#3638]) +1 other test skip
[123]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-13/igt@kms_big_fb@x-tiled-64bpp-rotate-90.html
* igt@kms_big_fb@x-tiled-8bpp-rotate-270:
- shard-rkl: NOTRUN -> [SKIP][124] ([i915#3638])
[124]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-3/igt@kms_big_fb@x-tiled-8bpp-rotate-270.html
* igt@kms_big_fb@y-tiled-8bpp-rotate-90:
- shard-rkl: NOTRUN -> [SKIP][125] ([i915#14544] / [i915#3638])
[125]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@kms_big_fb@y-tiled-8bpp-rotate-90.html
* igt@kms_big_fb@yf-tiled-16bpp-rotate-270:
- shard-rkl: NOTRUN -> [SKIP][126] +11 other tests skip
[126]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-7/igt@kms_big_fb@yf-tiled-16bpp-rotate-270.html
* igt@kms_big_fb@yf-tiled-8bpp-rotate-0:
- shard-dg2: NOTRUN -> [SKIP][127] ([i915#4538] / [i915#5190]) +8 other tests skip
[127]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-6/igt@kms_big_fb@yf-tiled-8bpp-rotate-0.html
* igt@kms_big_fb@yf-tiled-8bpp-rotate-270:
- shard-mtlp: NOTRUN -> [SKIP][128]
[128]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-mtlp-2/igt@kms_big_fb@yf-tiled-8bpp-rotate-270.html
* igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-180:
- shard-dg1: NOTRUN -> [SKIP][129] ([i915#4538]) +2 other tests skip
[129]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-13/igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-180.html
* igt@kms_ccs@bad-aux-stride-4-tiled-mtl-mc-ccs@pipe-a-hdmi-a-4:
- shard-dg1: NOTRUN -> [SKIP][130] ([i915#6095]) +195 other tests skip
[130]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-18/igt@kms_ccs@bad-aux-stride-4-tiled-mtl-mc-ccs@pipe-a-hdmi-a-4.html
* igt@kms_ccs@bad-aux-stride-y-tiled-gen12-rc-ccs@pipe-d-hdmi-a-1:
- shard-dg2: NOTRUN -> [SKIP][131] ([i915#10307] / [i915#10434] / [i915#6095])
[131]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-4/igt@kms_ccs@bad-aux-stride-y-tiled-gen12-rc-ccs@pipe-d-hdmi-a-1.html
* igt@kms_ccs@bad-rotation-90-4-tiled-dg2-mc-ccs@pipe-d-hdmi-a-3:
- shard-dg2: NOTRUN -> [SKIP][132] ([i915#6095]) +60 other tests skip
[132]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-3/igt@kms_ccs@bad-rotation-90-4-tiled-dg2-mc-ccs@pipe-d-hdmi-a-3.html
* igt@kms_ccs@bad-rotation-90-4-tiled-lnl-ccs:
- shard-rkl: NOTRUN -> [SKIP][133] ([i915#12313] / [i915#14544])
[133]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@kms_ccs@bad-rotation-90-4-tiled-lnl-ccs.html
* igt@kms_ccs@crc-primary-basic-4-tiled-bmg-ccs:
- shard-tglu-1: NOTRUN -> [SKIP][134] ([i915#12313])
[134]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-1/igt@kms_ccs@crc-primary-basic-4-tiled-bmg-ccs.html
* igt@kms_ccs@crc-primary-basic-4-tiled-lnl-ccs:
- shard-rkl: NOTRUN -> [SKIP][135] ([i915#12313]) +1 other test skip
[135]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-7/igt@kms_ccs@crc-primary-basic-4-tiled-lnl-ccs.html
* igt@kms_ccs@crc-primary-basic-y-tiled-gen12-rc-ccs@pipe-a-dp-3:
- shard-dg2: NOTRUN -> [SKIP][136] ([i915#10307] / [i915#6095]) +101 other tests skip
[136]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-10/igt@kms_ccs@crc-primary-basic-y-tiled-gen12-rc-ccs@pipe-a-dp-3.html
* igt@kms_ccs@crc-primary-rotation-180-4-tiled-dg2-rc-ccs-cc:
- shard-tglu: NOTRUN -> [SKIP][137] ([i915#6095]) +39 other tests skip
[137]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-6/igt@kms_ccs@crc-primary-rotation-180-4-tiled-dg2-rc-ccs-cc.html
* igt@kms_ccs@crc-primary-rotation-180-4-tiled-mtl-rc-ccs@pipe-b-hdmi-a-2:
- shard-rkl: NOTRUN -> [SKIP][138] ([i915#6095]) +71 other tests skip
[138]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-4/igt@kms_ccs@crc-primary-rotation-180-4-tiled-mtl-rc-ccs@pipe-b-hdmi-a-2.html
* igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs:
- shard-dg2: NOTRUN -> [SKIP][139] ([i915#12805])
[139]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-8/igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs.html
- shard-rkl: NOTRUN -> [SKIP][140] ([i915#12805] / [i915#14544])
[140]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs.html
- shard-dg1: NOTRUN -> [SKIP][141] ([i915#12805])
[141]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-13/igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs.html
- shard-tglu: NOTRUN -> [SKIP][142] ([i915#12805])
[142]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-7/igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs.html
- shard-mtlp: NOTRUN -> [SKIP][143] ([i915#12805])
[143]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-mtlp-5/igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs.html
* igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-rc-ccs-cc:
- shard-glk: NOTRUN -> [SKIP][144] +422 other tests skip
[144]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-glk5/igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-rc-ccs-cc.html
* igt@kms_ccs@crc-primary-suspend-4-tiled-mtl-rc-ccs-cc@pipe-c-hdmi-a-1:
- shard-tglu-1: NOTRUN -> [SKIP][145] ([i915#6095]) +39 other tests skip
[145]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-1/igt@kms_ccs@crc-primary-suspend-4-tiled-mtl-rc-ccs-cc@pipe-c-hdmi-a-1.html
* igt@kms_ccs@crc-primary-suspend-y-tiled-ccs@pipe-a-hdmi-a-1:
- shard-glk: [PASS][146] -> [INCOMPLETE][147] ([i915#15582])
[146]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-glk6/igt@kms_ccs@crc-primary-suspend-y-tiled-ccs@pipe-a-hdmi-a-1.html
[147]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-glk6/igt@kms_ccs@crc-primary-suspend-y-tiled-ccs@pipe-a-hdmi-a-1.html
* igt@kms_ccs@crc-primary-suspend-y-tiled-gen12-mc-ccs:
- shard-rkl: NOTRUN -> [SKIP][148] ([i915#14098] / [i915#14544] / [i915#6095]) +9 other tests skip
[148]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@kms_ccs@crc-primary-suspend-y-tiled-gen12-mc-ccs.html
* igt@kms_ccs@crc-primary-suspend-yf-tiled-ccs@pipe-a-hdmi-a-1:
- shard-glk: NOTRUN -> [INCOMPLETE][149] ([i915#15582]) +1 other test incomplete
[149]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/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-bmg-ccs:
- shard-tglu: NOTRUN -> [SKIP][150] ([i915#12313]) +1 other test skip
[150]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-9/igt@kms_ccs@crc-sprite-planes-basic-4-tiled-bmg-ccs.html
* igt@kms_ccs@missing-ccs-buffer-y-tiled-gen12-mc-ccs@pipe-a-hdmi-a-2:
- shard-rkl: NOTRUN -> [SKIP][151] ([i915#14544] / [i915#6095]) +13 other tests skip
[151]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@kms_ccs@missing-ccs-buffer-y-tiled-gen12-mc-ccs@pipe-a-hdmi-a-2.html
* igt@kms_ccs@random-ccs-data-4-tiled-bmg-ccs:
- shard-dg2: NOTRUN -> [SKIP][152] ([i915#12313]) +1 other test skip
[152]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-8/igt@kms_ccs@random-ccs-data-4-tiled-bmg-ccs.html
- shard-dg1: NOTRUN -> [SKIP][153] ([i915#12313])
[153]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-17/igt@kms_ccs@random-ccs-data-4-tiled-bmg-ccs.html
- shard-mtlp: NOTRUN -> [SKIP][154] ([i915#12313])
[154]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-mtlp-2/igt@kms_ccs@random-ccs-data-4-tiled-bmg-ccs.html
* igt@kms_ccs@random-ccs-data-4-tiled-dg2-mc-ccs@pipe-b-hdmi-a-2:
- shard-glk11: NOTRUN -> [SKIP][155] +38 other tests skip
[155]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-glk11/igt@kms_ccs@random-ccs-data-4-tiled-dg2-mc-ccs@pipe-b-hdmi-a-2.html
* igt@kms_ccs@random-ccs-data-4-tiled-dg2-mc-ccs@pipe-c-hdmi-a-2:
- shard-rkl: NOTRUN -> [SKIP][156] ([i915#14098] / [i915#6095]) +49 other tests skip
[156]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-3/igt@kms_ccs@random-ccs-data-4-tiled-dg2-mc-ccs@pipe-c-hdmi-a-2.html
* igt@kms_ccs@random-ccs-data-y-tiled-gen12-rc-ccs@pipe-b-edp-1:
- shard-mtlp: NOTRUN -> [SKIP][157] ([i915#6095]) +4 other tests skip
[157]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-mtlp-6/igt@kms_ccs@random-ccs-data-y-tiled-gen12-rc-ccs@pipe-b-edp-1.html
* igt@kms_cdclk@mode-transition-all-outputs:
- shard-dg2: NOTRUN -> [SKIP][158] ([i915#13784])
[158]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-6/igt@kms_cdclk@mode-transition-all-outputs.html
- shard-rkl: NOTRUN -> [SKIP][159] ([i915#3742])
[159]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-3/igt@kms_cdclk@mode-transition-all-outputs.html
- shard-dg1: NOTRUN -> [SKIP][160] ([i915#3742])
[160]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-17/igt@kms_cdclk@mode-transition-all-outputs.html
- shard-tglu: NOTRUN -> [SKIP][161] ([i915#3742])
[161]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-3/igt@kms_cdclk@mode-transition-all-outputs.html
- shard-mtlp: NOTRUN -> [SKIP][162] ([i915#13784])
[162]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-mtlp-4/igt@kms_cdclk@mode-transition-all-outputs.html
* igt@kms_chamelium_edid@hdmi-edid-stress-resolution-non-4k:
- shard-rkl: NOTRUN -> [SKIP][163] ([i915#11151] / [i915#7828]) +8 other tests skip
[163]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-8/igt@kms_chamelium_edid@hdmi-edid-stress-resolution-non-4k.html
* igt@kms_chamelium_frames@dp-crc-single:
- shard-dg1: NOTRUN -> [SKIP][164] ([i915#11151] / [i915#7828]) +2 other tests skip
[164]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-14/igt@kms_chamelium_frames@dp-crc-single.html
- shard-tglu: NOTRUN -> [SKIP][165] ([i915#11151] / [i915#7828]) +4 other tests skip
[165]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-8/igt@kms_chamelium_frames@dp-crc-single.html
- shard-mtlp: NOTRUN -> [SKIP][166] ([i915#11151] / [i915#7828]) +1 other test skip
[166]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-mtlp-4/igt@kms_chamelium_frames@dp-crc-single.html
* igt@kms_chamelium_frames@dp-frame-dump:
- shard-dg2: NOTRUN -> [SKIP][167] ([i915#11151] / [i915#7828]) +6 other tests skip
[167]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-3/igt@kms_chamelium_frames@dp-frame-dump.html
* igt@kms_chamelium_frames@hdmi-crc-fast:
- shard-tglu-1: NOTRUN -> [SKIP][168] ([i915#11151] / [i915#7828]) +3 other tests skip
[168]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-1/igt@kms_chamelium_frames@hdmi-crc-fast.html
* igt@kms_chamelium_hpd@hdmi-hpd-fast:
- shard-rkl: NOTRUN -> [SKIP][169] ([i915#11151] / [i915#14544] / [i915#7828]) +1 other test skip
[169]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@kms_chamelium_hpd@hdmi-hpd-fast.html
* igt@kms_color@deep-color:
- shard-dg2: NOTRUN -> [SKIP][170] ([i915#12655] / [i915#3555])
[170]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-4/igt@kms_color@deep-color.html
- shard-rkl: [PASS][171] -> [SKIP][172] ([i915#12655] / [i915#3555])
[171]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-6/igt@kms_color@deep-color.html
[172]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-8/igt@kms_color@deep-color.html
* igt@kms_content_protection@atomic-dpms:
- shard-dg2: NOTRUN -> [SKIP][173] ([i915#15865]) +1 other test skip
[173]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-7/igt@kms_content_protection@atomic-dpms.html
- shard-tglu-1: NOTRUN -> [SKIP][174] ([i915#15865]) +1 other test skip
[174]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-1/igt@kms_content_protection@atomic-dpms.html
* igt@kms_content_protection@atomic-dpms-hdcp14:
- shard-dg1: NOTRUN -> [SKIP][175] ([i915#15865])
[175]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-15/igt@kms_content_protection@atomic-dpms-hdcp14.html
* igt@kms_content_protection@atomic@pipe-a-dp-3:
- shard-dg2: NOTRUN -> [FAIL][176] ([i915#7173])
[176]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-10/igt@kms_content_protection@atomic@pipe-a-dp-3.html
* igt@kms_content_protection@dp-mst-lic-type-0:
- shard-rkl: NOTRUN -> [SKIP][177] ([i915#14544] / [i915#15330] / [i915#3116])
[177]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@kms_content_protection@dp-mst-lic-type-0.html
* igt@kms_content_protection@dp-mst-lic-type-0-hdcp14:
- shard-dg2: NOTRUN -> [SKIP][178] ([i915#15330])
[178]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-1/igt@kms_content_protection@dp-mst-lic-type-0-hdcp14.html
* igt@kms_content_protection@dp-mst-lic-type-1:
- shard-dg1: NOTRUN -> [SKIP][179] ([i915#15330] / [i915#3299])
[179]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-17/igt@kms_content_protection@dp-mst-lic-type-1.html
- shard-tglu: NOTRUN -> [SKIP][180] ([i915#15330] / [i915#3116] / [i915#3299])
[180]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-7/igt@kms_content_protection@dp-mst-lic-type-1.html
* igt@kms_content_protection@dp-mst-type-0:
- shard-rkl: NOTRUN -> [SKIP][181] ([i915#15330] / [i915#3116])
[181]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-3/igt@kms_content_protection@dp-mst-type-0.html
* igt@kms_content_protection@srm:
- shard-tglu: NOTRUN -> [SKIP][182] ([i915#15865]) +1 other test skip
[182]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-9/igt@kms_content_protection@srm.html
* igt@kms_content_protection@type1:
- shard-rkl: NOTRUN -> [SKIP][183] ([i915#15865]) +1 other test skip
[183]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-5/igt@kms_content_protection@type1.html
* igt@kms_cursor_crc@cursor-onscreen-256x85:
- shard-tglu-1: NOTRUN -> [FAIL][184] ([i915#13566]) +1 other test fail
[184]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-1/igt@kms_cursor_crc@cursor-onscreen-256x85.html
* igt@kms_cursor_crc@cursor-onscreen-32x32:
- shard-tglu: NOTRUN -> [SKIP][185] ([i915#3555]) +1 other test skip
[185]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-6/igt@kms_cursor_crc@cursor-onscreen-32x32.html
* igt@kms_cursor_crc@cursor-onscreen-512x512:
- shard-dg2: NOTRUN -> [SKIP][186] ([i915#13049])
[186]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-7/igt@kms_cursor_crc@cursor-onscreen-512x512.html
- shard-tglu-1: NOTRUN -> [SKIP][187] ([i915#13049]) +1 other test skip
[187]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-1/igt@kms_cursor_crc@cursor-onscreen-512x512.html
* igt@kms_cursor_crc@cursor-onscreen-64x21:
- shard-rkl: [PASS][188] -> [FAIL][189] ([i915#13566]) +1 other test fail
[188]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-2/igt@kms_cursor_crc@cursor-onscreen-64x21.html
[189]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-5/igt@kms_cursor_crc@cursor-onscreen-64x21.html
* igt@kms_cursor_crc@cursor-random-128x42@pipe-a-hdmi-a-1:
- shard-tglu: [PASS][190] -> [FAIL][191] ([i915#13566]) +3 other tests fail
[190]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-tglu-7/igt@kms_cursor_crc@cursor-random-128x42@pipe-a-hdmi-a-1.html
[191]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-3/igt@kms_cursor_crc@cursor-random-128x42@pipe-a-hdmi-a-1.html
* igt@kms_cursor_crc@cursor-random-256x85:
- shard-mtlp: NOTRUN -> [SKIP][192] ([i915#8814])
[192]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-mtlp-7/igt@kms_cursor_crc@cursor-random-256x85.html
* igt@kms_cursor_crc@cursor-random-512x170:
- shard-rkl: NOTRUN -> [SKIP][193] ([i915#13049]) +2 other tests skip
[193]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-2/igt@kms_cursor_crc@cursor-random-512x170.html
* igt@kms_cursor_crc@cursor-rapid-movement-32x10:
- shard-rkl: NOTRUN -> [SKIP][194] ([i915#3555]) +4 other tests skip
[194]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-5/igt@kms_cursor_crc@cursor-rapid-movement-32x10.html
- shard-tglu-1: NOTRUN -> [SKIP][195] ([i915#3555]) +2 other tests skip
[195]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-1/igt@kms_cursor_crc@cursor-rapid-movement-32x10.html
* igt@kms_cursor_legacy@basic-busy-flip-before-cursor-varying-size:
- shard-dg1: NOTRUN -> [SKIP][196] ([i915#4103] / [i915#4213]) +1 other test skip
[196]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-19/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-varying-size.html
- shard-tglu: NOTRUN -> [SKIP][197] ([i915#4103])
[197]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-2/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-varying-size.html
- shard-mtlp: NOTRUN -> [SKIP][198] ([i915#4213])
[198]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-mtlp-4/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-varying-size.html
- shard-dg2: NOTRUN -> [SKIP][199] ([i915#4103] / [i915#4213])
[199]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-3/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-varying-size.html
* igt@kms_cursor_legacy@cursorb-vs-flipb-varying-size:
- shard-dg2: NOTRUN -> [SKIP][200] ([i915#13046] / [i915#5354]) +3 other tests skip
[200]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-3/igt@kms_cursor_legacy@cursorb-vs-flipb-varying-size.html
* igt@kms_cursor_legacy@modeset-atomic-cursor-hotspot:
- shard-tglu: NOTRUN -> [SKIP][201] ([i915#9067])
[201]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-3/igt@kms_cursor_legacy@modeset-atomic-cursor-hotspot.html
* igt@kms_dirtyfb@psr-dirtyfb-ioctl:
- shard-rkl: NOTRUN -> [SKIP][202] ([i915#9723])
[202]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-8/igt@kms_dirtyfb@psr-dirtyfb-ioctl.html
- shard-tglu-1: NOTRUN -> [SKIP][203] ([i915#9723])
[203]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-1/igt@kms_dirtyfb@psr-dirtyfb-ioctl.html
* igt@kms_display_modes@extended-mode-basic:
- shard-dg2: NOTRUN -> [SKIP][204] ([i915#13691])
[204]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-7/igt@kms_display_modes@extended-mode-basic.html
* igt@kms_dp_link_training@non-uhbr-mst:
- shard-rkl: NOTRUN -> [SKIP][205] ([i915#13749]) +1 other test skip
[205]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-1/igt@kms_dp_link_training@non-uhbr-mst.html
* igt@kms_draw_crc@draw-method-mmap-wc:
- shard-dg2: NOTRUN -> [SKIP][206] ([i915#8812])
[206]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-4/igt@kms_draw_crc@draw-method-mmap-wc.html
- shard-dg1: NOTRUN -> [SKIP][207] ([i915#8812])
[207]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-18/igt@kms_draw_crc@draw-method-mmap-wc.html
* igt@kms_dsc@dsc-basic:
- shard-rkl: NOTRUN -> [SKIP][208] ([i915#14544] / [i915#3555] / [i915#3840])
[208]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@kms_dsc@dsc-basic.html
* igt@kms_dsc@dsc-fractional-bpp-with-bpc:
- shard-tglu: NOTRUN -> [SKIP][209] ([i915#3840])
[209]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-2/igt@kms_dsc@dsc-fractional-bpp-with-bpc.html
* igt@kms_dsc@dsc-with-bpc-formats:
- shard-dg1: NOTRUN -> [SKIP][210] ([i915#3555] / [i915#3840])
[210]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-15/igt@kms_dsc@dsc-with-bpc-formats.html
* igt@kms_dsc@dsc-with-output-formats:
- shard-rkl: NOTRUN -> [SKIP][211] ([i915#3555] / [i915#3840])
[211]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-5/igt@kms_dsc@dsc-with-output-formats.html
- shard-tglu-1: NOTRUN -> [SKIP][212] ([i915#3555] / [i915#3840]) +1 other test skip
[212]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-1/igt@kms_dsc@dsc-with-output-formats.html
* igt@kms_dsc@dsc-with-output-formats-with-bpc:
- shard-tglu: NOTRUN -> [SKIP][213] ([i915#3840] / [i915#9053])
[213]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-3/igt@kms_dsc@dsc-with-output-formats-with-bpc.html
* igt@kms_feature_discovery@display-3x:
- shard-dg2: NOTRUN -> [SKIP][214] ([i915#1839])
[214]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-8/igt@kms_feature_discovery@display-3x.html
* igt@kms_feature_discovery@psr2:
- shard-tglu: NOTRUN -> [SKIP][215] ([i915#658])
[215]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-3/igt@kms_feature_discovery@psr2.html
* igt@kms_flip@2x-blocking-wf_vblank:
- shard-dg2: NOTRUN -> [SKIP][216] ([i915#9934]) +2 other tests skip
[216]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-6/igt@kms_flip@2x-blocking-wf_vblank.html
- shard-rkl: NOTRUN -> [SKIP][217] ([i915#9934]) +7 other tests skip
[217]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-1/igt@kms_flip@2x-blocking-wf_vblank.html
- shard-dg1: NOTRUN -> [SKIP][218] ([i915#9934]) +5 other tests skip
[218]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-14/igt@kms_flip@2x-blocking-wf_vblank.html
- shard-mtlp: NOTRUN -> [SKIP][219] ([i915#3637] / [i915#9934]) +1 other test skip
[219]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-mtlp-7/igt@kms_flip@2x-blocking-wf_vblank.html
* igt@kms_flip@2x-dpms-vs-vblank-race:
- shard-rkl: NOTRUN -> [SKIP][220] ([i915#14544] / [i915#9934])
[220]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@kms_flip@2x-dpms-vs-vblank-race.html
* igt@kms_flip@2x-flip-vs-panning:
- shard-tglu-1: NOTRUN -> [SKIP][221] ([i915#3637] / [i915#9934]) +2 other tests skip
[221]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-1/igt@kms_flip@2x-flip-vs-panning.html
* igt@kms_flip@2x-flip-vs-suspend:
- shard-glk: NOTRUN -> [INCOMPLETE][222] ([i915#12745] / [i915#4839] / [i915#6113])
[222]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-glk1/igt@kms_flip@2x-flip-vs-suspend.html
* igt@kms_flip@2x-flip-vs-suspend-interruptible:
- shard-glk: NOTRUN -> [INCOMPLETE][223] ([i915#12745] / [i915#4839])
[223]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-glk4/igt@kms_flip@2x-flip-vs-suspend-interruptible.html
* igt@kms_flip@2x-flip-vs-suspend-interruptible@ab-hdmi-a1-hdmi-a2:
- shard-glk: NOTRUN -> [INCOMPLETE][224] ([i915#4839])
[224]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-glk4/igt@kms_flip@2x-flip-vs-suspend-interruptible@ab-hdmi-a1-hdmi-a2.html
* igt@kms_flip@2x-flip-vs-suspend@ab-hdmi-a1-hdmi-a2:
- shard-glk: NOTRUN -> [INCOMPLETE][225] ([i915#4839] / [i915#6113])
[225]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-glk1/igt@kms_flip@2x-flip-vs-suspend@ab-hdmi-a1-hdmi-a2.html
* igt@kms_flip@2x-plain-flip-interruptible:
- shard-tglu: NOTRUN -> [SKIP][226] ([i915#3637] / [i915#9934]) +8 other tests skip
[226]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-3/igt@kms_flip@2x-plain-flip-interruptible.html
* igt@kms_flip@flip-vs-expired-vblank:
- shard-glk: NOTRUN -> [FAIL][227] ([i915#13027]) +1 other test fail
[227]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-glk3/igt@kms_flip@flip-vs-expired-vblank.html
* igt@kms_flip@flip-vs-fences:
- shard-mtlp: NOTRUN -> [SKIP][228] ([i915#8381])
[228]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-mtlp-5/igt@kms_flip@flip-vs-fences.html
- shard-dg2: NOTRUN -> [SKIP][229] ([i915#8381])
[229]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-4/igt@kms_flip@flip-vs-fences.html
- shard-dg1: NOTRUN -> [SKIP][230] ([i915#8381])
[230]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-18/igt@kms_flip@flip-vs-fences.html
* igt@kms_flip@flip-vs-suspend-interruptible:
- shard-glk10: NOTRUN -> [INCOMPLETE][231] ([i915#12745] / [i915#4839])
[231]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-glk10/igt@kms_flip@flip-vs-suspend-interruptible.html
* igt@kms_flip@flip-vs-suspend-interruptible@a-hdmi-a1:
- shard-glk10: NOTRUN -> [INCOMPLETE][232] ([i915#12745])
[232]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-glk10/igt@kms_flip@flip-vs-suspend-interruptible@a-hdmi-a1.html
* igt@kms_flip_scaled_crc@flip-32bpp-4tile-to-32bpp-4tiledg2rcccs-downscaling:
- shard-dg2: NOTRUN -> [SKIP][233] ([i915#15643]) +4 other tests skip
[233]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-3/igt@kms_flip_scaled_crc@flip-32bpp-4tile-to-32bpp-4tiledg2rcccs-downscaling.html
* igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-16bpp-4tile-upscaling:
- shard-rkl: NOTRUN -> [SKIP][234] ([i915#15643]) +3 other tests skip
[234]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-3/igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-16bpp-4tile-upscaling.html
* igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tile-downscaling:
- shard-tglu-1: NOTRUN -> [SKIP][235] ([i915#15643]) +3 other tests skip
[235]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-1/igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tile-downscaling.html
* igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tile-upscaling:
- shard-tglu: NOTRUN -> [SKIP][236] ([i915#15643]) +1 other test skip
[236]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-5/igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tile-upscaling.html
* igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-16bpp-ytile-downscaling:
- shard-dg2: NOTRUN -> [SKIP][237] ([i915#15643] / [i915#5190])
[237]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-7/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-16bpp-ytile-downscaling.html
- shard-mtlp: NOTRUN -> [SKIP][238] ([i915#15643])
[238]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-mtlp-3/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-16bpp-ytile-downscaling.html
* igt@kms_frontbuffer_tracking@fbc-1p-offscreen-pri-indfb-draw-mmap-gtt:
- shard-dg1: NOTRUN -> [SKIP][239] ([i915#15104])
[239]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-15/igt@kms_frontbuffer_tracking@fbc-1p-offscreen-pri-indfb-draw-mmap-gtt.html
* igt@kms_frontbuffer_tracking@fbc-1p-offscreen-pri-indfb-draw-render:
- shard-dg2: [PASS][240] -> [FAIL][241] ([i915#15389])
[240]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-dg2-7/igt@kms_frontbuffer_tracking@fbc-1p-offscreen-pri-indfb-draw-render.html
[241]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-5/igt@kms_frontbuffer_tracking@fbc-1p-offscreen-pri-indfb-draw-render.html
* igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-blt:
- shard-dg2: [PASS][242] -> [FAIL][243] ([i915#15389] / [i915#6880])
[242]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-dg2-5/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-blt.html
[243]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-5/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-blt.html
* igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-draw-blt:
- shard-dg1: NOTRUN -> [SKIP][244] +10 other tests skip
[244]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-15/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-draw-blt.html
* igt@kms_frontbuffer_tracking@fbc-2p-primscrn-indfb-plflip-blt:
- shard-rkl: NOTRUN -> [SKIP][245] ([i915#1825]) +32 other tests skip
[245]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-2/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-indfb-plflip-blt.html
* igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-indfb-draw-mmap-cpu:
- shard-mtlp: NOTRUN -> [SKIP][246] ([i915#1825]) +3 other tests skip
[246]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-mtlp-7/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-indfb-draw-mmap-cpu.html
* igt@kms_frontbuffer_tracking@fbc-suspend:
- shard-dg2: [PASS][247] -> [ABORT][248] ([i915#15132])
[247]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-dg2-4/igt@kms_frontbuffer_tracking@fbc-suspend.html
[248]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-10/igt@kms_frontbuffer_tracking@fbc-suspend.html
* igt@kms_frontbuffer_tracking@fbc-tiling-4:
- shard-rkl: NOTRUN -> [SKIP][249] ([i915#14544] / [i915#5439])
[249]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@kms_frontbuffer_tracking@fbc-tiling-4.html
* igt@kms_frontbuffer_tracking@fbcpsr-1p-offscreen-pri-indfb-draw-pwrite:
- shard-dg2: NOTRUN -> [SKIP][250] ([i915#15102]) +1 other test skip
[250]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-6/igt@kms_frontbuffer_tracking@fbcpsr-1p-offscreen-pri-indfb-draw-pwrite.html
* igt@kms_frontbuffer_tracking@fbcpsr-1p-offscreen-pri-shrfb-draw-mmap-cpu:
- shard-rkl: NOTRUN -> [SKIP][251] ([i915#15102]) +1 other test skip
[251]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-3/igt@kms_frontbuffer_tracking@fbcpsr-1p-offscreen-pri-shrfb-draw-mmap-cpu.html
* igt@kms_frontbuffer_tracking@fbcpsr-1p-offscreen-pri-shrfb-draw-render:
- shard-dg1: NOTRUN -> [SKIP][252] ([i915#15102]) +1 other test skip
[252]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-18/igt@kms_frontbuffer_tracking@fbcpsr-1p-offscreen-pri-shrfb-draw-render.html
* igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-draw-mmap-cpu:
- shard-dg2: NOTRUN -> [SKIP][253] ([i915#15102] / [i915#3458]) +8 other tests skip
[253]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-6/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-draw-mmap-cpu.html
* igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-draw-render:
- shard-glk10: NOTRUN -> [SKIP][254] +173 other tests skip
[254]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-glk10/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-draw-render.html
* igt@kms_frontbuffer_tracking@fbcpsr-2p-pri-indfb-multidraw:
- shard-tglu-1: NOTRUN -> [SKIP][255] +36 other tests skip
[255]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-1/igt@kms_frontbuffer_tracking@fbcpsr-2p-pri-indfb-multidraw.html
* igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-pri-indfb-draw-mmap-wc:
- shard-rkl: NOTRUN -> [SKIP][256] ([i915#14544] / [i915#1825])
[256]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-pri-indfb-draw-mmap-wc.html
* igt@kms_frontbuffer_tracking@fbcpsr-rgb101010-draw-mmap-wc:
- shard-rkl: NOTRUN -> [SKIP][257] ([i915#15102] / [i915#3023]) +23 other tests skip
[257]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-2/igt@kms_frontbuffer_tracking@fbcpsr-rgb101010-draw-mmap-wc.html
- shard-dg1: NOTRUN -> [SKIP][258] ([i915#8708]) +5 other tests skip
[258]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-14/igt@kms_frontbuffer_tracking@fbcpsr-rgb101010-draw-mmap-wc.html
* igt@kms_frontbuffer_tracking@fbcpsr-tiling-4:
- shard-tglu-1: NOTRUN -> [SKIP][259] ([i915#5439])
[259]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-1/igt@kms_frontbuffer_tracking@fbcpsr-tiling-4.html
* igt@kms_frontbuffer_tracking@psr-1p-offscreen-pri-indfb-draw-pwrite:
- shard-rkl: NOTRUN -> [SKIP][260] ([i915#14544] / [i915#15102])
[260]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@kms_frontbuffer_tracking@psr-1p-offscreen-pri-indfb-draw-pwrite.html
* igt@kms_frontbuffer_tracking@psr-1p-primscrn-pri-indfb-draw-mmap-gtt:
- shard-mtlp: NOTRUN -> [SKIP][261] ([i915#8708]) +2 other tests skip
[261]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-mtlp-2/igt@kms_frontbuffer_tracking@psr-1p-primscrn-pri-indfb-draw-mmap-gtt.html
* igt@kms_frontbuffer_tracking@psr-1p-primscrn-spr-indfb-move:
- shard-tglu: NOTRUN -> [SKIP][262] ([i915#15102]) +15 other tests skip
[262]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-6/igt@kms_frontbuffer_tracking@psr-1p-primscrn-spr-indfb-move.html
* igt@kms_frontbuffer_tracking@psr-2p-primscrn-pri-shrfb-draw-render:
- shard-dg2: NOTRUN -> [SKIP][263] ([i915#5354]) +21 other tests skip
[263]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-1/igt@kms_frontbuffer_tracking@psr-2p-primscrn-pri-shrfb-draw-render.html
* igt@kms_frontbuffer_tracking@psr-2p-scndscrn-pri-shrfb-draw-render:
- shard-tglu: NOTRUN -> [SKIP][264] +43 other tests skip
[264]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-9/igt@kms_frontbuffer_tracking@psr-2p-scndscrn-pri-shrfb-draw-render.html
* igt@kms_frontbuffer_tracking@psr-rgb101010-draw-blt:
- shard-rkl: NOTRUN -> [SKIP][265] ([i915#14544] / [i915#15102] / [i915#3023]) +1 other test skip
[265]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@kms_frontbuffer_tracking@psr-rgb101010-draw-blt.html
* igt@kms_frontbuffer_tracking@psr-rgb101010-draw-mmap-gtt:
- shard-dg2: NOTRUN -> [SKIP][266] ([i915#8708]) +8 other tests skip
[266]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-8/igt@kms_frontbuffer_tracking@psr-rgb101010-draw-mmap-gtt.html
* igt@kms_frontbuffer_tracking@psr-rgb101010-draw-render:
- shard-dg1: NOTRUN -> [SKIP][267] ([i915#15102] / [i915#3458]) +8 other tests skip
[267]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-14/igt@kms_frontbuffer_tracking@psr-rgb101010-draw-render.html
* igt@kms_frontbuffer_tracking@psr-rgb565-draw-mmap-wc:
- shard-tglu-1: NOTRUN -> [SKIP][268] ([i915#15102]) +13 other tests skip
[268]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-1/igt@kms_frontbuffer_tracking@psr-rgb565-draw-mmap-wc.html
* igt@kms_hdr@bpc-switch-dpms:
- shard-rkl: [PASS][269] -> [SKIP][270] ([i915#3555] / [i915#8228])
[269]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-6/igt@kms_hdr@bpc-switch-dpms.html
[270]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-7/igt@kms_hdr@bpc-switch-dpms.html
* igt@kms_hdr@invalid-metadata-sizes:
- shard-rkl: NOTRUN -> [SKIP][271] ([i915#3555] / [i915#8228])
[271]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-3/igt@kms_hdr@invalid-metadata-sizes.html
* igt@kms_hdr@static-toggle-suspend:
- shard-dg2: NOTRUN -> [SKIP][272] ([i915#3555] / [i915#8228]) +1 other test skip
[272]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-7/igt@kms_hdr@static-toggle-suspend.html
- shard-tglu-1: NOTRUN -> [SKIP][273] ([i915#3555] / [i915#8228]) +1 other test skip
[273]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-1/igt@kms_hdr@static-toggle-suspend.html
* igt@kms_joiner@basic-force-big-joiner:
- shard-rkl: NOTRUN -> [SKIP][274] ([i915#14544] / [i915#15459])
[274]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@kms_joiner@basic-force-big-joiner.html
* igt@kms_joiner@basic-ultra-joiner:
- shard-dg2: NOTRUN -> [SKIP][275] ([i915#15458])
[275]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-6/igt@kms_joiner@basic-ultra-joiner.html
- shard-rkl: NOTRUN -> [SKIP][276] ([i915#15458])
[276]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-3/igt@kms_joiner@basic-ultra-joiner.html
- shard-dg1: NOTRUN -> [SKIP][277] ([i915#15458])
[277]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-17/igt@kms_joiner@basic-ultra-joiner.html
- shard-tglu: NOTRUN -> [SKIP][278] ([i915#15458])
[278]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-3/igt@kms_joiner@basic-ultra-joiner.html
- shard-mtlp: NOTRUN -> [SKIP][279] ([i915#15458])
[279]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-mtlp-4/igt@kms_joiner@basic-ultra-joiner.html
* igt@kms_joiner@invalid-modeset-big-joiner:
- shard-rkl: NOTRUN -> [SKIP][280] ([i915#15460])
[280]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-5/igt@kms_joiner@invalid-modeset-big-joiner.html
* igt@kms_multipipe_modeset@basic-max-pipe-crc-check:
- shard-dg2: NOTRUN -> [SKIP][281] ([i915#15815])
[281]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-8/igt@kms_multipipe_modeset@basic-max-pipe-crc-check.html
* igt@kms_panel_fitting@atomic-fastset:
- shard-dg1: NOTRUN -> [SKIP][282] ([i915#6301])
[282]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-12/igt@kms_panel_fitting@atomic-fastset.html
- shard-tglu: NOTRUN -> [SKIP][283] ([i915#6301])
[283]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-2/igt@kms_panel_fitting@atomic-fastset.html
* igt@kms_pipe_stress@stress-xrgb8888-yftiled:
- shard-tglu: NOTRUN -> [SKIP][284] ([i915#14712])
[284]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-3/igt@kms_pipe_stress@stress-xrgb8888-yftiled.html
* igt@kms_plane@pixel-format-4-tiled-dg2-rc-ccs-cc-modifier:
- shard-dg1: NOTRUN -> [SKIP][285] ([i915#15709])
[285]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-14/igt@kms_plane@pixel-format-4-tiled-dg2-rc-ccs-cc-modifier.html
* igt@kms_plane@pixel-format-4-tiled-lnl-ccs-modifier-source-clamping:
- shard-rkl: NOTRUN -> [SKIP][286] ([i915#15709]) +1 other test skip
[286]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-3/igt@kms_plane@pixel-format-4-tiled-lnl-ccs-modifier-source-clamping.html
* igt@kms_plane@pixel-format-4-tiled-modifier:
- shard-rkl: NOTRUN -> [SKIP][287] ([i915#14544] / [i915#15709])
[287]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@kms_plane@pixel-format-4-tiled-modifier.html
* igt@kms_plane@pixel-format-x-tiled-modifier@pipe-a-plane-7:
- shard-tglu: NOTRUN -> [SKIP][288] ([i915#15608]) +1 other test skip
[288]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-9/igt@kms_plane@pixel-format-x-tiled-modifier@pipe-a-plane-7.html
* igt@kms_plane@pixel-format-x-tiled-modifier@pipe-b-plane-7:
- shard-dg1: NOTRUN -> [SKIP][289] ([i915#15608]) +1 other test skip
[289]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-16/igt@kms_plane@pixel-format-x-tiled-modifier@pipe-b-plane-7.html
* igt@kms_plane@pixel-format-y-tiled-gen12-mc-ccs-modifier-source-clamping:
- shard-tglu: NOTRUN -> [SKIP][290] ([i915#15709]) +1 other test skip
[290]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-7/igt@kms_plane@pixel-format-y-tiled-gen12-mc-ccs-modifier-source-clamping.html
* igt@kms_plane@pixel-format-y-tiled-modifier-source-clamping:
- shard-dg2: NOTRUN -> [SKIP][291] ([i915#15709]) +2 other tests skip
[291]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-8/igt@kms_plane@pixel-format-y-tiled-modifier-source-clamping.html
- shard-mtlp: NOTRUN -> [SKIP][292] ([i915#15709])
[292]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-mtlp-4/igt@kms_plane@pixel-format-y-tiled-modifier-source-clamping.html
* igt@kms_plane_alpha_blend@alpha-opaque-fb:
- shard-glk10: NOTRUN -> [FAIL][293] ([i915#10647] / [i915#12169])
[293]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-glk10/igt@kms_plane_alpha_blend@alpha-opaque-fb.html
* igt@kms_plane_alpha_blend@alpha-opaque-fb@pipe-c-hdmi-a-1:
- shard-glk10: NOTRUN -> [FAIL][294] ([i915#10647]) +1 other test fail
[294]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-glk10/igt@kms_plane_alpha_blend@alpha-opaque-fb@pipe-c-hdmi-a-1.html
* igt@kms_plane_lowres@tiling-y:
- shard-dg2: NOTRUN -> [SKIP][295] ([i915#8821])
[295]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-4/igt@kms_plane_lowres@tiling-y.html
* igt@kms_plane_multiple@2x-tiling-none:
- shard-rkl: NOTRUN -> [SKIP][296] ([i915#13958])
[296]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-2/igt@kms_plane_multiple@2x-tiling-none.html
* igt@kms_plane_multiple@2x-tiling-x:
- shard-dg2: NOTRUN -> [SKIP][297] ([i915#13958])
[297]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-7/igt@kms_plane_multiple@2x-tiling-x.html
* igt@kms_plane_multiple@tiling-4:
- shard-rkl: NOTRUN -> [SKIP][298] ([i915#14259])
[298]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-5/igt@kms_plane_multiple@tiling-4.html
- shard-tglu-1: NOTRUN -> [SKIP][299] ([i915#14259])
[299]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-1/igt@kms_plane_multiple@tiling-4.html
* igt@kms_plane_scaling@plane-upscale-20x20-with-rotation@pipe-a:
- shard-rkl: NOTRUN -> [SKIP][300] ([i915#15329]) +3 other tests skip
[300]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-5/igt@kms_plane_scaling@plane-upscale-20x20-with-rotation@pipe-a.html
- shard-dg1: NOTRUN -> [SKIP][301] ([i915#15329]) +4 other tests skip
[301]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-19/igt@kms_plane_scaling@plane-upscale-20x20-with-rotation@pipe-a.html
* igt@kms_plane_scaling@plane-upscale-20x20-with-rotation@pipe-c:
- shard-tglu: NOTRUN -> [SKIP][302] ([i915#15329]) +14 other tests skip
[302]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-4/igt@kms_plane_scaling@plane-upscale-20x20-with-rotation@pipe-c.html
* igt@kms_plane_scaling@planes-downscale-factor-0-5-upscale-20x20@pipe-d:
- shard-mtlp: NOTRUN -> [SKIP][303] ([i915#15329]) +4 other tests skip
[303]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-mtlp-8/igt@kms_plane_scaling@planes-downscale-factor-0-5-upscale-20x20@pipe-d.html
* igt@kms_pm_backlight@bad-brightness:
- shard-tglu-1: NOTRUN -> [SKIP][304] ([i915#9812])
[304]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-1/igt@kms_pm_backlight@bad-brightness.html
* igt@kms_pm_backlight@fade-with-dpms:
- shard-dg1: NOTRUN -> [SKIP][305] ([i915#5354])
[305]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-15/igt@kms_pm_backlight@fade-with-dpms.html
- shard-tglu: NOTRUN -> [SKIP][306] ([i915#9812]) +1 other test skip
[306]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-6/igt@kms_pm_backlight@fade-with-dpms.html
* igt@kms_pm_dc@dc6-dpms:
- shard-tglu: NOTRUN -> [FAIL][307] ([i915#15752])
[307]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-7/igt@kms_pm_dc@dc6-dpms.html
* igt@kms_pm_rpm@dpms-mode-unset-lpsp:
- shard-rkl: NOTRUN -> [SKIP][308] ([i915#14544] / [i915#15073])
[308]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@kms_pm_rpm@dpms-mode-unset-lpsp.html
* igt@kms_pm_rpm@dpms-mode-unset-non-lpsp:
- shard-dg1: [PASS][309] -> [SKIP][310] ([i915#15073]) +1 other test skip
[309]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-dg1-18/igt@kms_pm_rpm@dpms-mode-unset-non-lpsp.html
[310]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-14/igt@kms_pm_rpm@dpms-mode-unset-non-lpsp.html
* igt@kms_pm_rpm@modeset-lpsp:
- shard-dg2: NOTRUN -> [SKIP][311] ([i915#15073])
[311]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-7/igt@kms_pm_rpm@modeset-lpsp.html
* igt@kms_pm_rpm@modeset-lpsp-stress:
- shard-rkl: [PASS][312] -> [SKIP][313] ([i915#15073]) +2 other tests skip
[312]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-2/igt@kms_pm_rpm@modeset-lpsp-stress.html
[313]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-4/igt@kms_pm_rpm@modeset-lpsp-stress.html
* igt@kms_pm_rpm@modeset-non-lpsp-stress:
- shard-dg2: [PASS][314] -> [SKIP][315] ([i915#15073])
[314]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-dg2-5/igt@kms_pm_rpm@modeset-non-lpsp-stress.html
[315]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-4/igt@kms_pm_rpm@modeset-non-lpsp-stress.html
- shard-tglu: NOTRUN -> [SKIP][316] ([i915#15073])
[316]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-8/igt@kms_pm_rpm@modeset-non-lpsp-stress.html
* igt@kms_pm_rpm@modeset-non-lpsp-stress-no-wait:
- shard-rkl: NOTRUN -> [SKIP][317] ([i915#15073]) +1 other test skip
[317]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-2/igt@kms_pm_rpm@modeset-non-lpsp-stress-no-wait.html
* igt@kms_pm_rpm@system-suspend-modeset:
- shard-rkl: [PASS][318] -> [INCOMPLETE][319] ([i915#14419])
[318]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-2/igt@kms_pm_rpm@system-suspend-modeset.html
[319]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@kms_pm_rpm@system-suspend-modeset.html
* igt@kms_psr2_sf@fbc-pr-overlay-plane-move-continuous-exceed-fully-sf:
- shard-tglu: NOTRUN -> [SKIP][320] ([i915#11520]) +5 other tests skip
[320]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-3/igt@kms_psr2_sf@fbc-pr-overlay-plane-move-continuous-exceed-fully-sf.html
- shard-mtlp: NOTRUN -> [SKIP][321] ([i915#12316]) +2 other tests skip
[321]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-mtlp-2/igt@kms_psr2_sf@fbc-pr-overlay-plane-move-continuous-exceed-fully-sf.html
* igt@kms_psr2_sf@fbc-pr-overlay-plane-update-sf-dmg-area:
- shard-glk: NOTRUN -> [SKIP][322] ([i915#11520]) +9 other tests skip
[322]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-glk4/igt@kms_psr2_sf@fbc-pr-overlay-plane-update-sf-dmg-area.html
* igt@kms_psr2_sf@fbc-pr-overlay-primary-update-sf-dmg-area:
- shard-tglu-1: NOTRUN -> [SKIP][323] ([i915#11520]) +3 other tests skip
[323]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-1/igt@kms_psr2_sf@fbc-pr-overlay-primary-update-sf-dmg-area.html
* igt@kms_psr2_sf@fbc-psr2-overlay-plane-update-continuous-sf@pipe-a-edp-1:
- shard-mtlp: NOTRUN -> [SKIP][324] ([i915#9808])
[324]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-mtlp-2/igt@kms_psr2_sf@fbc-psr2-overlay-plane-update-continuous-sf@pipe-a-edp-1.html
* igt@kms_psr2_sf@pr-cursor-plane-move-continuous-exceed-sf:
- shard-glk10: NOTRUN -> [SKIP][325] ([i915#11520]) +7 other tests skip
[325]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-glk10/igt@kms_psr2_sf@pr-cursor-plane-move-continuous-exceed-sf.html
* igt@kms_psr2_sf@pr-cursor-plane-update-sf:
- shard-rkl: NOTRUN -> [SKIP][326] ([i915#11520] / [i915#14544])
[326]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@kms_psr2_sf@pr-cursor-plane-update-sf.html
* igt@kms_psr2_sf@psr2-overlay-plane-update-sf-dmg-area:
- shard-dg2: NOTRUN -> [SKIP][327] ([i915#11520]) +6 other tests skip
[327]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-8/igt@kms_psr2_sf@psr2-overlay-plane-update-sf-dmg-area.html
- shard-rkl: NOTRUN -> [SKIP][328] ([i915#11520]) +6 other tests skip
[328]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-8/igt@kms_psr2_sf@psr2-overlay-plane-update-sf-dmg-area.html
- shard-snb: NOTRUN -> [SKIP][329] ([i915#11520]) +5 other tests skip
[329]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-snb5/igt@kms_psr2_sf@psr2-overlay-plane-update-sf-dmg-area.html
- shard-dg1: NOTRUN -> [SKIP][330] ([i915#11520]) +5 other tests skip
[330]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-17/igt@kms_psr2_sf@psr2-overlay-plane-update-sf-dmg-area.html
* igt@kms_psr2_su@page_flip-nv12:
- shard-dg2: NOTRUN -> [SKIP][331] ([i915#9683])
[331]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-5/igt@kms_psr2_su@page_flip-nv12.html
- shard-rkl: NOTRUN -> [SKIP][332] ([i915#9683])
[332]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-7/igt@kms_psr2_su@page_flip-nv12.html
* igt@kms_psr@fbc-pr-primary-mmap-cpu:
- shard-rkl: NOTRUN -> [SKIP][333] ([i915#1072] / [i915#14544] / [i915#9732]) +1 other test skip
[333]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@kms_psr@fbc-pr-primary-mmap-cpu.html
* igt@kms_psr@fbc-psr-cursor-plane-move:
- shard-dg2: NOTRUN -> [SKIP][334] ([i915#1072] / [i915#9732]) +13 other tests skip
[334]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-5/igt@kms_psr@fbc-psr-cursor-plane-move.html
* igt@kms_psr@fbc-psr-no-drrs:
- shard-tglu: NOTRUN -> [SKIP][335] ([i915#9732]) +11 other tests skip
[335]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-5/igt@kms_psr@fbc-psr-no-drrs.html
- shard-mtlp: NOTRUN -> [SKIP][336] ([i915#9688]) +5 other tests skip
[336]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-mtlp-7/igt@kms_psr@fbc-psr-no-drrs.html
* igt@kms_psr@fbc-psr2-sprite-render:
- shard-rkl: NOTRUN -> [SKIP][337] ([i915#1072] / [i915#9732]) +17 other tests skip
[337]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-5/igt@kms_psr@fbc-psr2-sprite-render.html
* igt@kms_psr@psr-cursor-plane-onoff:
- shard-dg1: NOTRUN -> [SKIP][338] ([i915#1072] / [i915#9732]) +7 other tests skip
[338]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-16/igt@kms_psr@psr-cursor-plane-onoff.html
* igt@kms_psr@psr-suspend:
- shard-tglu-1: NOTRUN -> [SKIP][339] ([i915#9732]) +11 other tests skip
[339]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-1/igt@kms_psr@psr-suspend.html
* igt@kms_psr_stress_test@flip-primary-invalidate-overlay:
- shard-rkl: NOTRUN -> [SKIP][340] ([i915#9685])
[340]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-7/igt@kms_psr_stress_test@flip-primary-invalidate-overlay.html
* igt@kms_rotation_crc@multiplane-rotation-cropping-bottom:
- shard-glk: NOTRUN -> [INCOMPLETE][341] ([i915#15500])
[341]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-glk4/igt@kms_rotation_crc@multiplane-rotation-cropping-bottom.html
* igt@kms_rotation_crc@primary-rotation-90:
- shard-dg2: NOTRUN -> [SKIP][342] ([i915#12755] / [i915#15867])
[342]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-5/igt@kms_rotation_crc@primary-rotation-90.html
* igt@kms_rotation_crc@primary-yf-tiled-reflect-x-0:
- shard-rkl: NOTRUN -> [SKIP][343] ([i915#5289]) +1 other test skip
[343]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-2/igt@kms_rotation_crc@primary-yf-tiled-reflect-x-0.html
* igt@kms_rotation_crc@primary-yf-tiled-reflect-x-180:
- shard-tglu: NOTRUN -> [SKIP][344] ([i915#5289])
[344]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-2/igt@kms_rotation_crc@primary-yf-tiled-reflect-x-180.html
* igt@kms_selftest@drm_framebuffer:
- shard-rkl: NOTRUN -> [ABORT][345] ([i915#13179]) +1 other test abort
[345]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-5/igt@kms_selftest@drm_framebuffer.html
- shard-tglu-1: NOTRUN -> [ABORT][346] ([i915#13179]) +1 other test abort
[346]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-1/igt@kms_selftest@drm_framebuffer.html
* igt@kms_setmode@invalid-clone-exclusive-crtc:
- shard-dg2: NOTRUN -> [SKIP][347] ([i915#3555])
[347]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-6/igt@kms_setmode@invalid-clone-exclusive-crtc.html
* igt@kms_tiled_display@basic-test-pattern:
- shard-tglu: NOTRUN -> [SKIP][348] ([i915#8623])
[348]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-3/igt@kms_tiled_display@basic-test-pattern.html
* igt@kms_vrr@flip-basic:
- shard-dg1: NOTRUN -> [SKIP][349] ([i915#3555]) +1 other test skip
[349]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-19/igt@kms_vrr@flip-basic.html
* igt@kms_vrr@flip-suspend:
- shard-rkl: NOTRUN -> [SKIP][350] ([i915#15243] / [i915#3555])
[350]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-2/igt@kms_vrr@flip-suspend.html
* igt@kms_vrr@lobf:
- shard-dg2: NOTRUN -> [SKIP][351] ([i915#11920])
[351]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-7/igt@kms_vrr@lobf.html
* igt@kms_vrr@negative-basic:
- shard-dg2: NOTRUN -> [SKIP][352] ([i915#3555] / [i915#9906])
[352]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-5/igt@kms_vrr@negative-basic.html
- shard-mtlp: [PASS][353] -> [FAIL][354] ([i915#15420]) +1 other test fail
[353]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-mtlp-6/igt@kms_vrr@negative-basic.html
[354]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-mtlp-7/igt@kms_vrr@negative-basic.html
* igt@kms_vrr@seamless-rr-switch-drrs:
- shard-dg2: NOTRUN -> [SKIP][355] ([i915#9906])
[355]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-7/igt@kms_vrr@seamless-rr-switch-drrs.html
- shard-rkl: NOTRUN -> [SKIP][356] ([i915#9906])
[356]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-8/igt@kms_vrr@seamless-rr-switch-drrs.html
- shard-tglu-1: NOTRUN -> [SKIP][357] ([i915#9906])
[357]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-1/igt@kms_vrr@seamless-rr-switch-drrs.html
- shard-dg1: NOTRUN -> [SKIP][358] ([i915#9906])
[358]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-15/igt@kms_vrr@seamless-rr-switch-drrs.html
- shard-mtlp: NOTRUN -> [SKIP][359] ([i915#8808] / [i915#9906])
[359]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-mtlp-3/igt@kms_vrr@seamless-rr-switch-drrs.html
* igt@perf@gen8-unprivileged-single-ctx-counters:
- shard-rkl: NOTRUN -> [SKIP][360] ([i915#14544] / [i915#2436])
[360]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@perf@gen8-unprivileged-single-ctx-counters.html
* igt@perf@mi-rpc:
- shard-dg2: NOTRUN -> [SKIP][361] ([i915#2434])
[361]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-4/igt@perf@mi-rpc.html
* igt@perf@unprivileged-single-ctx-counters:
- shard-rkl: NOTRUN -> [SKIP][362] ([i915#2433])
[362]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-3/igt@perf@unprivileged-single-ctx-counters.html
* igt@perf_pmu@busy-double-start@bcs0:
- shard-mtlp: [PASS][363] -> [FAIL][364] ([i915#4349]) +1 other test fail
[363]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-mtlp-3/igt@perf_pmu@busy-double-start@bcs0.html
[364]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-mtlp-7/igt@perf_pmu@busy-double-start@bcs0.html
* igt@perf_pmu@module-unload:
- shard-tglu: NOTRUN -> [ABORT][365] ([i915#15778])
[365]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-2/igt@perf_pmu@module-unload.html
* igt@perf_pmu@rc6@other-idle-gt0:
- shard-dg2: NOTRUN -> [SKIP][366] ([i915#8516])
[366]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-4/igt@perf_pmu@rc6@other-idle-gt0.html
* igt@prime_vgem@basic-fence-read:
- shard-rkl: NOTRUN -> [SKIP][367] ([i915#3291] / [i915#3708])
[367]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-5/igt@prime_vgem@basic-fence-read.html
* igt@prime_vgem@coherency-gtt:
- shard-dg2: NOTRUN -> [SKIP][368] ([i915#3708] / [i915#4077])
[368]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-4/igt@prime_vgem@coherency-gtt.html
- shard-rkl: NOTRUN -> [SKIP][369] ([i915#3708])
[369]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-4/igt@prime_vgem@coherency-gtt.html
- shard-dg1: NOTRUN -> [SKIP][370] ([i915#3708] / [i915#4077])
[370]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-18/igt@prime_vgem@coherency-gtt.html
- shard-mtlp: NOTRUN -> [SKIP][371] ([i915#3708] / [i915#4077])
[371]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-mtlp-5/igt@prime_vgem@coherency-gtt.html
* igt@sriov_basic@enable-vfs-bind-unbind-each@numvfs-random:
- shard-tglu: NOTRUN -> [FAIL][372] ([i915#12910]) +8 other tests fail
[372]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-5/igt@sriov_basic@enable-vfs-bind-unbind-each@numvfs-random.html
* igt@tools_test@sysfs_l3_parity:
- shard-dg1: NOTRUN -> [SKIP][373] ([i915#4818])
[373]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-18/igt@tools_test@sysfs_l3_parity.html
#### Possible fixes ####
* igt@gem_ccs@suspend-resume@linear-compressed-compfmt0-smem-lmem0:
- shard-dg2: [INCOMPLETE][374] ([i915#13356]) -> [PASS][375]
[374]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-dg2-5/igt@gem_ccs@suspend-resume@linear-compressed-compfmt0-smem-lmem0.html
[375]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-6/igt@gem_ccs@suspend-resume@linear-compressed-compfmt0-smem-lmem0.html
* igt@gem_exec_big@single:
- shard-mtlp: [DMESG-FAIL][376] ([i915#15478]) -> [PASS][377]
[376]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-mtlp-7/igt@gem_exec_big@single.html
[377]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-mtlp-4/igt@gem_exec_big@single.html
* igt@gem_exec_gttfill@all-engines:
- shard-snb: [INCOMPLETE][378] -> [PASS][379]
[378]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-snb4/igt@gem_exec_gttfill@all-engines.html
[379]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-snb5/igt@gem_exec_gttfill@all-engines.html
* igt@i915_module_load@reload-no-display:
- shard-dg2: [DMESG-WARN][380] ([i915#13029] / [i915#14545]) -> [PASS][381]
[380]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-dg2-6/igt@i915_module_load@reload-no-display.html
[381]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-5/igt@i915_module_load@reload-no-display.html
* igt@i915_pm_rpm@system-suspend-execbuf:
- shard-rkl: [INCOMPLETE][382] ([i915#13356]) -> [PASS][383]
[382]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-3/igt@i915_pm_rpm@system-suspend-execbuf.html
[383]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-3/igt@i915_pm_rpm@system-suspend-execbuf.html
* igt@i915_selftest@live:
- shard-mtlp: [DMESG-FAIL][384] ([i915#12061] / [i915#15560]) -> [PASS][385]
[384]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-mtlp-3/igt@i915_selftest@live.html
[385]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-mtlp-6/igt@i915_selftest@live.html
* igt@i915_selftest@live@workarounds:
- shard-dg2: [DMESG-FAIL][386] ([i915#12061]) -> [PASS][387] +1 other test pass
[386]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-dg2-4/igt@i915_selftest@live@workarounds.html
[387]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-5/igt@i915_selftest@live@workarounds.html
- shard-mtlp: [DMESG-FAIL][388] ([i915#12061]) -> [PASS][389]
[388]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-mtlp-3/igt@i915_selftest@live@workarounds.html
[389]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-mtlp-6/igt@i915_selftest@live@workarounds.html
* igt@i915_suspend@fence-restore-tiled2untiled:
- shard-rkl: [INCOMPLETE][390] ([i915#4817]) -> [PASS][391]
[390]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-6/igt@i915_suspend@fence-restore-tiled2untiled.html
[391]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-5/igt@i915_suspend@fence-restore-tiled2untiled.html
* igt@i915_suspend@sysfs-reader:
- shard-rkl: [ABORT][392] ([i915#15140]) -> [PASS][393]
[392]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-1/igt@i915_suspend@sysfs-reader.html
[393]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-2/igt@i915_suspend@sysfs-reader.html
* igt@kms_ccs@crc-primary-suspend-y-tiled-gen12-rc-ccs-cc:
- shard-rkl: [INCOMPLETE][394] ([i915#14694] / [i915#15582]) -> [PASS][395] +1 other test pass
[394]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-3/igt@kms_ccs@crc-primary-suspend-y-tiled-gen12-rc-ccs-cc.html
[395]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-4/igt@kms_ccs@crc-primary-suspend-y-tiled-gen12-rc-ccs-cc.html
* igt@kms_cursor_crc@cursor-onscreen-128x42:
- shard-tglu: [FAIL][396] ([i915#13566]) -> [PASS][397] +7 other tests pass
[396]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-tglu-6/igt@kms_cursor_crc@cursor-onscreen-128x42.html
[397]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-4/igt@kms_cursor_crc@cursor-onscreen-128x42.html
* igt@kms_cursor_crc@cursor-sliding-256x85:
- shard-rkl: [FAIL][398] ([i915#13566]) -> [PASS][399] +1 other test pass
[398]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-4/igt@kms_cursor_crc@cursor-sliding-256x85.html
[399]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-3/igt@kms_cursor_crc@cursor-sliding-256x85.html
* igt@kms_dither@fb-8bpc-vs-panel-8bpc:
- shard-dg2: [SKIP][400] ([i915#3555]) -> [PASS][401]
[400]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-dg2-5/igt@kms_dither@fb-8bpc-vs-panel-8bpc.html
[401]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-10/igt@kms_dither@fb-8bpc-vs-panel-8bpc.html
* igt@kms_flip@flip-vs-suspend-interruptible@a-hdmi-a2:
- shard-rkl: [INCOMPLETE][402] ([i915#6113]) -> [PASS][403] +1 other test pass
[402]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-4/igt@kms_flip@flip-vs-suspend-interruptible@a-hdmi-a2.html
[403]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-4/igt@kms_flip@flip-vs-suspend-interruptible@a-hdmi-a2.html
* igt@kms_joiner@basic-force-big-joiner:
- shard-dg2: [SKIP][404] ([i915#15459]) -> [PASS][405]
[404]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-dg2-6/igt@kms_joiner@basic-force-big-joiner.html
[405]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-10/igt@kms_joiner@basic-force-big-joiner.html
* igt@kms_lease@lease-unleased-connector:
- shard-dg1: [ABORT][406] ([i915#4423]) -> [PASS][407] +1 other test pass
[406]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-dg1-16/igt@kms_lease@lease-unleased-connector.html
[407]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-18/igt@kms_lease@lease-unleased-connector.html
* igt@kms_lease@lease-unleased-connector@pipe-d-hdmi-a-4:
- shard-dg1: [DMESG-WARN][408] ([i915#4423]) -> [PASS][409] +3 other tests pass
[408]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-dg1-16/igt@kms_lease@lease-unleased-connector@pipe-d-hdmi-a-4.html
[409]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-18/igt@kms_lease@lease-unleased-connector@pipe-d-hdmi-a-4.html
* igt@kms_pm_rpm@modeset-lpsp:
- shard-rkl: [SKIP][410] ([i915#14544] / [i915#15073]) -> [PASS][411]
[410]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-6/igt@kms_pm_rpm@modeset-lpsp.html
[411]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-8/igt@kms_pm_rpm@modeset-lpsp.html
- shard-dg1: [SKIP][412] ([i915#15073]) -> [PASS][413]
[412]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-dg1-12/igt@kms_pm_rpm@modeset-lpsp.html
[413]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-15/igt@kms_pm_rpm@modeset-lpsp.html
* igt@kms_pm_rpm@modeset-lpsp-stress:
- shard-dg2: [SKIP][414] ([i915#15073]) -> [PASS][415] +2 other tests pass
[414]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-dg2-1/igt@kms_pm_rpm@modeset-lpsp-stress.html
[415]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-4/igt@kms_pm_rpm@modeset-lpsp-stress.html
* igt@kms_pm_rpm@modeset-non-lpsp:
- shard-rkl: [SKIP][416] ([i915#15073]) -> [PASS][417] +1 other test pass
[416]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-5/igt@kms_pm_rpm@modeset-non-lpsp.html
[417]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-3/igt@kms_pm_rpm@modeset-non-lpsp.html
* igt@kms_setmode@basic:
- shard-tglu: [FAIL][418] ([i915#15106]) -> [PASS][419] +2 other tests pass
[418]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-tglu-7/igt@kms_setmode@basic.html
[419]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-10/igt@kms_setmode@basic.html
#### Warnings ####
* igt@gem_ccs@block-multicopy-inplace:
- shard-rkl: [SKIP][420] ([i915#3555] / [i915#9323]) -> [SKIP][421] ([i915#14544] / [i915#3555] / [i915#9323])
[420]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-8/igt@gem_ccs@block-multicopy-inplace.html
[421]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@gem_ccs@block-multicopy-inplace.html
* igt@gem_exec_balancer@parallel-dmabuf-import-out-fence:
- shard-rkl: [SKIP][422] ([i915#4525]) -> [SKIP][423] ([i915#14544] / [i915#4525])
[422]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-4/igt@gem_exec_balancer@parallel-dmabuf-import-out-fence.html
[423]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@gem_exec_balancer@parallel-dmabuf-import-out-fence.html
* igt@gem_exec_capture@capture-recoverable:
- shard-rkl: [SKIP][424] ([i915#14544] / [i915#6344]) -> [SKIP][425] ([i915#6344])
[424]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-6/igt@gem_exec_capture@capture-recoverable.html
[425]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-5/igt@gem_exec_capture@capture-recoverable.html
* igt@gem_exec_reloc@basic-concurrent16:
- shard-rkl: [SKIP][426] ([i915#14544] / [i915#3281]) -> [SKIP][427] ([i915#3281]) +1 other test skip
[426]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-6/igt@gem_exec_reloc@basic-concurrent16.html
[427]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-4/igt@gem_exec_reloc@basic-concurrent16.html
* igt@gem_exec_reloc@basic-gtt-wc-noreloc:
- shard-rkl: [SKIP][428] ([i915#3281]) -> [SKIP][429] ([i915#14544] / [i915#3281]) +3 other tests skip
[428]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-7/igt@gem_exec_reloc@basic-gtt-wc-noreloc.html
[429]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@gem_exec_reloc@basic-gtt-wc-noreloc.html
* igt@gem_lmem_swapping@heavy-verify-multi-ccs:
- shard-rkl: [SKIP][430] ([i915#4613]) -> [SKIP][431] ([i915#14544] / [i915#4613])
[430]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-8/igt@gem_lmem_swapping@heavy-verify-multi-ccs.html
[431]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@gem_lmem_swapping@heavy-verify-multi-ccs.html
* igt@gem_lmem_swapping@verify-ccs:
- shard-rkl: [SKIP][432] ([i915#14544] / [i915#4613]) -> [SKIP][433] ([i915#4613])
[432]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-6/igt@gem_lmem_swapping@verify-ccs.html
[433]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-5/igt@gem_lmem_swapping@verify-ccs.html
* igt@gem_partial_pwrite_pread@reads-display:
- shard-rkl: [SKIP][434] ([i915#14544] / [i915#3282]) -> [SKIP][435] ([i915#3282])
[434]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-6/igt@gem_partial_pwrite_pread@reads-display.html
[435]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-5/igt@gem_partial_pwrite_pread@reads-display.html
* igt@gem_tiled_partial_pwrite_pread@writes-after-reads:
- shard-rkl: [SKIP][436] ([i915#3282]) -> [SKIP][437] ([i915#14544] / [i915#3282]) +2 other tests skip
[436]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-8/igt@gem_tiled_partial_pwrite_pread@writes-after-reads.html
[437]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@gem_tiled_partial_pwrite_pread@writes-after-reads.html
* igt@gen9_exec_parse@bb-oversize:
- shard-rkl: [SKIP][438] ([i915#2527]) -> [SKIP][439] ([i915#14544] / [i915#2527]) +1 other test skip
[438]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-5/igt@gen9_exec_parse@bb-oversize.html
[439]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@gen9_exec_parse@bb-oversize.html
* igt@gen9_exec_parse@unaligned-jump:
- shard-rkl: [SKIP][440] ([i915#14544] / [i915#2527]) -> [SKIP][441] ([i915#2527])
[440]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-6/igt@gen9_exec_parse@unaligned-jump.html
[441]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-8/igt@gen9_exec_parse@unaligned-jump.html
* igt@i915_module_load@fault-injection:
- shard-mtlp: [ABORT][442] -> [ABORT][443] ([i915#15342] / [i915#15481])
[442]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-mtlp-6/igt@i915_module_load@fault-injection.html
[443]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-mtlp-2/igt@i915_module_load@fault-injection.html
* igt@i915_module_load@fault-injection@__uc_init:
- shard-mtlp: [ABORT][444] -> [ABORT][445] ([i915#15481])
[444]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-mtlp-6/igt@i915_module_load@fault-injection@__uc_init.html
[445]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-mtlp-2/igt@i915_module_load@fault-injection@__uc_init.html
* igt@i915_pm_freq_mult@media-freq@gt0:
- shard-rkl: [SKIP][446] ([i915#6590]) -> [SKIP][447] ([i915#14544] / [i915#6590]) +1 other test skip
[446]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-5/igt@i915_pm_freq_mult@media-freq@gt0.html
[447]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@i915_pm_freq_mult@media-freq@gt0.html
* igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-180-hflip:
- shard-rkl: [SKIP][448] ([i915#5286]) -> [SKIP][449] ([i915#14544] / [i915#5286]) +1 other test skip
[448]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-7/igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-180-hflip.html
[449]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-180-hflip.html
* igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-180:
- shard-rkl: [SKIP][450] ([i915#14544] / [i915#5286]) -> [SKIP][451] ([i915#5286]) +1 other test skip
[450]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-6/igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-180.html
[451]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-3/igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-180.html
* igt@kms_big_fb@linear-32bpp-rotate-90:
- shard-rkl: [SKIP][452] ([i915#3638]) -> [SKIP][453] ([i915#14544] / [i915#3638]) +1 other test skip
[452]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-4/igt@kms_big_fb@linear-32bpp-rotate-90.html
[453]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@kms_big_fb@linear-32bpp-rotate-90.html
* igt@kms_big_fb@linear-max-hw-stride-32bpp-rotate-180-hflip:
- shard-rkl: [SKIP][454] ([i915#3828]) -> [SKIP][455] ([i915#14544] / [i915#3828])
[454]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-8/igt@kms_big_fb@linear-max-hw-stride-32bpp-rotate-180-hflip.html
[455]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@kms_big_fb@linear-max-hw-stride-32bpp-rotate-180-hflip.html
* igt@kms_big_fb@x-tiled-64bpp-rotate-90:
- shard-rkl: [SKIP][456] ([i915#14544] / [i915#3638]) -> [SKIP][457] ([i915#3638])
[456]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-6/igt@kms_big_fb@x-tiled-64bpp-rotate-90.html
[457]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-2/igt@kms_big_fb@x-tiled-64bpp-rotate-90.html
* igt@kms_big_fb@yf-tiled-64bpp-rotate-90:
- shard-rkl: [SKIP][458] -> [SKIP][459] ([i915#14544]) +8 other tests skip
[458]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-7/igt@kms_big_fb@yf-tiled-64bpp-rotate-90.html
[459]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@kms_big_fb@yf-tiled-64bpp-rotate-90.html
* igt@kms_big_fb@yf-tiled-addfb-size-overflow:
- shard-rkl: [SKIP][460] ([i915#14544]) -> [SKIP][461] +8 other tests skip
[460]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-6/igt@kms_big_fb@yf-tiled-addfb-size-overflow.html
[461]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-5/igt@kms_big_fb@yf-tiled-addfb-size-overflow.html
* igt@kms_ccs@crc-primary-basic-y-tiled-ccs@pipe-b-hdmi-a-2:
- shard-rkl: [SKIP][462] ([i915#6095]) -> [SKIP][463] ([i915#14544] / [i915#6095]) +5 other tests skip
[462]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-3/igt@kms_ccs@crc-primary-basic-y-tiled-ccs@pipe-b-hdmi-a-2.html
[463]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@kms_ccs@crc-primary-basic-y-tiled-ccs@pipe-b-hdmi-a-2.html
* igt@kms_ccs@crc-primary-rotation-180-4-tiled-dg2-rc-ccs-cc@pipe-a-hdmi-a-2:
- shard-rkl: [SKIP][464] ([i915#14544] / [i915#6095]) -> [SKIP][465] ([i915#6095]) +5 other tests skip
[464]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-6/igt@kms_ccs@crc-primary-rotation-180-4-tiled-dg2-rc-ccs-cc@pipe-a-hdmi-a-2.html
[465]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-1/igt@kms_ccs@crc-primary-rotation-180-4-tiled-dg2-rc-ccs-cc@pipe-a-hdmi-a-2.html
* igt@kms_ccs@crc-primary-suspend-4-tiled-mtl-mc-ccs:
- shard-dg1: [SKIP][466] ([i915#4423] / [i915#6095]) -> [SKIP][467] ([i915#6095])
[466]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-dg1-16/igt@kms_ccs@crc-primary-suspend-4-tiled-mtl-mc-ccs.html
[467]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-13/igt@kms_ccs@crc-primary-suspend-4-tiled-mtl-mc-ccs.html
* igt@kms_ccs@crc-sprite-planes-basic-4-tiled-lnl-ccs:
- shard-rkl: [SKIP][468] ([i915#12313] / [i915#14544]) -> [SKIP][469] ([i915#12313])
[468]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-6/igt@kms_ccs@crc-sprite-planes-basic-4-tiled-lnl-ccs.html
[469]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-5/igt@kms_ccs@crc-sprite-planes-basic-4-tiled-lnl-ccs.html
* igt@kms_ccs@missing-ccs-buffer-4-tiled-mtl-mc-ccs:
- shard-rkl: [SKIP][470] ([i915#14098] / [i915#6095]) -> [SKIP][471] ([i915#14098] / [i915#14544] / [i915#6095]) +11 other tests skip
[470]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-5/igt@kms_ccs@missing-ccs-buffer-4-tiled-mtl-mc-ccs.html
[471]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@kms_ccs@missing-ccs-buffer-4-tiled-mtl-mc-ccs.html
* igt@kms_ccs@missing-ccs-buffer-y-tiled-ccs:
- shard-rkl: [SKIP][472] ([i915#14098] / [i915#14544] / [i915#6095]) -> [SKIP][473] ([i915#14098] / [i915#6095]) +7 other tests skip
[472]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-6/igt@kms_ccs@missing-ccs-buffer-y-tiled-ccs.html
[473]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-5/igt@kms_ccs@missing-ccs-buffer-y-tiled-ccs.html
* igt@kms_chamelium_frames@dp-crc-multiple:
- shard-rkl: [SKIP][474] ([i915#11151] / [i915#7828]) -> [SKIP][475] ([i915#11151] / [i915#14544] / [i915#7828]) +1 other test skip
[474]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-5/igt@kms_chamelium_frames@dp-crc-multiple.html
[475]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@kms_chamelium_frames@dp-crc-multiple.html
* igt@kms_chamelium_frames@vga-frame-dump:
- shard-rkl: [SKIP][476] ([i915#11151] / [i915#14544] / [i915#7828]) -> [SKIP][477] ([i915#11151] / [i915#7828]) +1 other test skip
[476]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-6/igt@kms_chamelium_frames@vga-frame-dump.html
[477]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-8/igt@kms_chamelium_frames@vga-frame-dump.html
* igt@kms_content_protection@atomic:
- shard-dg2: [SKIP][478] ([i915#15865]) -> [FAIL][479] ([i915#7173])
[478]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-dg2-3/igt@kms_content_protection@atomic.html
[479]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-10/igt@kms_content_protection@atomic.html
* igt@kms_content_protection@content-type-change:
- shard-rkl: [SKIP][480] ([i915#15865]) -> [SKIP][481] ([i915#14544] / [i915#15865]) +2 other tests skip
[480]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-4/igt@kms_content_protection@content-type-change.html
[481]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@kms_content_protection@content-type-change.html
* igt@kms_content_protection@dp-mst-lic-type-0-hdcp14:
- shard-rkl: [SKIP][482] ([i915#14544] / [i915#15330]) -> [SKIP][483] ([i915#15330])
[482]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-6/igt@kms_content_protection@dp-mst-lic-type-0-hdcp14.html
[483]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-4/igt@kms_content_protection@dp-mst-lic-type-0-hdcp14.html
* igt@kms_content_protection@dp-mst-lic-type-1:
- shard-rkl: [SKIP][484] ([i915#14544] / [i915#15330] / [i915#3116]) -> [SKIP][485] ([i915#15330] / [i915#3116])
[484]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-6/igt@kms_content_protection@dp-mst-lic-type-1.html
[485]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-8/igt@kms_content_protection@dp-mst-lic-type-1.html
* igt@kms_content_protection@mei-interface:
- shard-dg1: [SKIP][486] ([i915#15865]) -> [SKIP][487] ([i915#9433])
[486]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-dg1-19/igt@kms_content_protection@mei-interface.html
[487]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-13/igt@kms_content_protection@mei-interface.html
* igt@kms_cursor_crc@cursor-onscreen-512x512:
- shard-rkl: [SKIP][488] ([i915#13049] / [i915#14544]) -> [SKIP][489] ([i915#13049])
[488]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-6/igt@kms_cursor_crc@cursor-onscreen-512x512.html
[489]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-8/igt@kms_cursor_crc@cursor-onscreen-512x512.html
* igt@kms_cursor_crc@cursor-rapid-movement-max-size:
- shard-rkl: [SKIP][490] ([i915#3555]) -> [SKIP][491] ([i915#14544] / [i915#3555]) +1 other test skip
[490]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-7/igt@kms_cursor_crc@cursor-rapid-movement-max-size.html
[491]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@kms_cursor_crc@cursor-rapid-movement-max-size.html
* igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic:
- shard-rkl: [SKIP][492] ([i915#4103]) -> [SKIP][493] ([i915#14544] / [i915#4103]) +1 other test skip
[492]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-8/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic.html
[493]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic.html
* igt@kms_feature_discovery@psr1:
- shard-rkl: [SKIP][494] ([i915#658]) -> [SKIP][495] ([i915#14544] / [i915#658])
[494]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-5/igt@kms_feature_discovery@psr1.html
[495]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@kms_feature_discovery@psr1.html
* igt@kms_flip@2x-flip-vs-dpms:
- shard-rkl: [SKIP][496] ([i915#14544] / [i915#9934]) -> [SKIP][497] ([i915#9934]) +1 other test skip
[496]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-6/igt@kms_flip@2x-flip-vs-dpms.html
[497]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-5/igt@kms_flip@2x-flip-vs-dpms.html
* igt@kms_flip@2x-wf_vblank-ts-check:
- shard-rkl: [SKIP][498] ([i915#9934]) -> [SKIP][499] ([i915#14544] / [i915#9934]) +5 other tests skip
[498]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-7/igt@kms_flip@2x-wf_vblank-ts-check.html
[499]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@kms_flip@2x-wf_vblank-ts-check.html
* igt@kms_flip@flip-vs-suspend:
- shard-glk: [INCOMPLETE][500] ([i915#12745] / [i915#4839]) -> [INCOMPLETE][501] ([i915#12745] / [i915#4839] / [i915#6113])
[500]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-glk4/igt@kms_flip@flip-vs-suspend.html
[501]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-glk1/igt@kms_flip@flip-vs-suspend.html
* igt@kms_flip@flip-vs-suspend@a-hdmi-a1:
- shard-glk: [INCOMPLETE][502] ([i915#12745]) -> [INCOMPLETE][503] ([i915#12745] / [i915#6113])
[502]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-glk4/igt@kms_flip@flip-vs-suspend@a-hdmi-a1.html
[503]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-glk1/igt@kms_flip@flip-vs-suspend@a-hdmi-a1.html
* igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tiledg2rcccs-upscaling:
- shard-rkl: [SKIP][504] ([i915#15643]) -> [SKIP][505] ([i915#14544] / [i915#15643]) +1 other test skip
[504]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-4/igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tiledg2rcccs-upscaling.html
[505]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tiledg2rcccs-upscaling.html
* igt@kms_frontbuffer_tracking@fbcpsr-1p-offscreen-pri-indfb-draw-mmap-wc:
- shard-rkl: [SKIP][506] ([i915#15102]) -> [SKIP][507] ([i915#14544] / [i915#15102])
[506]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-5/igt@kms_frontbuffer_tracking@fbcpsr-1p-offscreen-pri-indfb-draw-mmap-wc.html
[507]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@kms_frontbuffer_tracking@fbcpsr-1p-offscreen-pri-indfb-draw-mmap-wc.html
* igt@kms_frontbuffer_tracking@fbcpsr-1p-offscreen-pri-indfb-draw-pwrite:
- shard-rkl: [SKIP][508] ([i915#14544] / [i915#15102]) -> [SKIP][509] ([i915#15102])
[508]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-6/igt@kms_frontbuffer_tracking@fbcpsr-1p-offscreen-pri-indfb-draw-pwrite.html
[509]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-3/igt@kms_frontbuffer_tracking@fbcpsr-1p-offscreen-pri-indfb-draw-pwrite.html
* igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-shrfb-draw-render:
- shard-rkl: [SKIP][510] ([i915#15102] / [i915#3023]) -> [SKIP][511] ([i915#14544] / [i915#15102] / [i915#3023]) +9 other tests skip
[510]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-4/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-shrfb-draw-render.html
[511]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-shrfb-draw-render.html
* igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-spr-indfb-onoff:
- shard-rkl: [SKIP][512] ([i915#1825]) -> [SKIP][513] ([i915#14544] / [i915#1825]) +20 other tests skip
[512]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-2/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-spr-indfb-onoff.html
[513]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-spr-indfb-onoff.html
* igt@kms_frontbuffer_tracking@fbcpsr-indfb-scaledprimary:
- shard-dg2: [SKIP][514] ([i915#10433] / [i915#15102] / [i915#3458]) -> [SKIP][515] ([i915#15102] / [i915#3458]) +1 other test skip
[514]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-dg2-4/igt@kms_frontbuffer_tracking@fbcpsr-indfb-scaledprimary.html
[515]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-6/igt@kms_frontbuffer_tracking@fbcpsr-indfb-scaledprimary.html
* igt@kms_frontbuffer_tracking@fbcpsr-rgb101010-draw-pwrite:
- shard-dg2: [SKIP][516] ([i915#15102] / [i915#3458]) -> [SKIP][517] ([i915#10433] / [i915#15102] / [i915#3458]) +1 other test skip
[516]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-dg2-3/igt@kms_frontbuffer_tracking@fbcpsr-rgb101010-draw-pwrite.html
[517]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg2-4/igt@kms_frontbuffer_tracking@fbcpsr-rgb101010-draw-pwrite.html
* igt@kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-draw-render:
- shard-rkl: [SKIP][518] ([i915#14544] / [i915#15102] / [i915#3023]) -> [SKIP][519] ([i915#15102] / [i915#3023]) +5 other tests skip
[518]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-6/igt@kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-draw-render.html
[519]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-8/igt@kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-draw-render.html
* igt@kms_frontbuffer_tracking@psr-2p-primscrn-pri-indfb-draw-render:
- shard-rkl: [SKIP][520] ([i915#14544] / [i915#1825]) -> [SKIP][521] ([i915#1825]) +10 other tests skip
[520]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-6/igt@kms_frontbuffer_tracking@psr-2p-primscrn-pri-indfb-draw-render.html
[521]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-8/igt@kms_frontbuffer_tracking@psr-2p-primscrn-pri-indfb-draw-render.html
* igt@kms_hdr@brightness-with-hdr:
- shard-dg1: [SKIP][522] ([i915#1187] / [i915#12713]) -> [SKIP][523] ([i915#12713])
[522]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-dg1-13/igt@kms_hdr@brightness-with-hdr.html
[523]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-15/igt@kms_hdr@brightness-with-hdr.html
- shard-tglu: [SKIP][524] ([i915#1187] / [i915#12713]) -> [SKIP][525] ([i915#12713])
[524]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-tglu-2/igt@kms_hdr@brightness-with-hdr.html
[525]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-tglu-6/igt@kms_hdr@brightness-with-hdr.html
* igt@kms_multipipe_modeset@basic-max-pipe-crc-check:
- shard-rkl: [SKIP][526] ([i915#14544] / [i915#15815]) -> [SKIP][527] ([i915#15815])
[526]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-6/igt@kms_multipipe_modeset@basic-max-pipe-crc-check.html
[527]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-2/igt@kms_multipipe_modeset@basic-max-pipe-crc-check.html
* igt@kms_panel_fitting@atomic-fastset:
- shard-rkl: [SKIP][528] ([i915#14544] / [i915#6301]) -> [SKIP][529] ([i915#6301])
[528]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-6/igt@kms_panel_fitting@atomic-fastset.html
[529]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-7/igt@kms_panel_fitting@atomic-fastset.html
* igt@kms_plane@pixel-format-4-tiled-mtl-rc-ccs-cc-modifier:
- shard-rkl: [SKIP][530] ([i915#15709]) -> [SKIP][531] ([i915#14544] / [i915#15709]) +2 other tests skip
[530]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-3/igt@kms_plane@pixel-format-4-tiled-mtl-rc-ccs-cc-modifier.html
[531]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@kms_plane@pixel-format-4-tiled-mtl-rc-ccs-cc-modifier.html
* igt@kms_plane_multiple@2x-tiling-4:
- shard-rkl: [SKIP][532] ([i915#13958]) -> [SKIP][533] ([i915#13958] / [i915#14544])
[532]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-8/igt@kms_plane_multiple@2x-tiling-4.html
[533]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@kms_plane_multiple@2x-tiling-4.html
* igt@kms_plane_multiple@2x-tiling-x:
- shard-rkl: [SKIP][534] ([i915#13958] / [i915#14544]) -> [SKIP][535] ([i915#13958])
[534]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-6/igt@kms_plane_multiple@2x-tiling-x.html
[535]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-7/igt@kms_plane_multiple@2x-tiling-x.html
* igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-rotation:
- shard-rkl: [SKIP][536] ([i915#15329] / [i915#3555]) -> [SKIP][537] ([i915#14544] / [i915#15329] / [i915#3555])
[536]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-5/igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-rotation.html
[537]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-rotation.html
* igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-rotation@pipe-b:
- shard-rkl: [SKIP][538] ([i915#15329]) -> [SKIP][539] ([i915#14544] / [i915#15329]) +2 other tests skip
[538]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-5/igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-rotation@pipe-b.html
[539]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-rotation@pipe-b.html
* igt@kms_pm_backlight@fade:
- shard-rkl: [SKIP][540] ([i915#5354]) -> [SKIP][541] ([i915#14544] / [i915#5354])
[540]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-5/igt@kms_pm_backlight@fade.html
[541]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@kms_pm_backlight@fade.html
* igt@kms_prime@basic-crc-hybrid:
- shard-rkl: [SKIP][542] ([i915#14544] / [i915#6524]) -> [SKIP][543] ([i915#6524])
[542]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-6/igt@kms_prime@basic-crc-hybrid.html
[543]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-2/igt@kms_prime@basic-crc-hybrid.html
* igt@kms_psr2_sf@pr-overlay-plane-move-continuous-sf:
- shard-dg1: [SKIP][544] ([i915#11520]) -> [SKIP][545] ([i915#11520] / [i915#4423])
[544]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-dg1-18/igt@kms_psr2_sf@pr-overlay-plane-move-continuous-sf.html
[545]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-dg1-17/igt@kms_psr2_sf@pr-overlay-plane-move-continuous-sf.html
* igt@kms_psr2_sf@psr2-cursor-plane-move-continuous-sf:
- shard-rkl: [SKIP][546] ([i915#11520]) -> [SKIP][547] ([i915#11520] / [i915#14544]) +2 other tests skip
[546]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-2/igt@kms_psr2_sf@psr2-cursor-plane-move-continuous-sf.html
[547]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@kms_psr2_sf@psr2-cursor-plane-move-continuous-sf.html
* igt@kms_psr2_su@frontbuffer-xrgb8888:
- shard-rkl: [SKIP][548] ([i915#9683]) -> [SKIP][549] ([i915#14544] / [i915#9683])
[548]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-7/igt@kms_psr2_su@frontbuffer-xrgb8888.html
[549]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@kms_psr2_su@frontbuffer-xrgb8888.html
* igt@kms_psr@fbc-pr-sprite-plane-onoff:
- shard-rkl: [SKIP][550] ([i915#1072] / [i915#9732]) -> [SKIP][551] ([i915#1072] / [i915#14544] / [i915#9732]) +9 other tests skip
[550]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-5/igt@kms_psr@fbc-pr-sprite-plane-onoff.html
[551]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-6/igt@kms_psr@fbc-pr-sprite-plane-onoff.html
* igt@kms_psr@pr-primary-blt:
- shard-rkl: [SKIP][552] ([i915#1072] / [i915#14544] / [i915#9732]) -> [SKIP][553] ([i915#1072] / [i915#9732]) +5 other tests skip
[552]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-6/igt@kms_psr@pr-primary-blt.html
[553]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-8/igt@kms_psr@pr-primary-blt.html
* igt@kms_vrr@flip-basic:
- shard-rkl: [SKIP][554] ([i915#14544] / [i915#15243] / [i915#3555]) -> [SKIP][555] ([i915#15243] / [i915#3555])
[554]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-6/igt@kms_vrr@flip-basic.html
[555]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-5/igt@kms_vrr@flip-basic.html
* igt@kms_vrr@negative-basic:
- shard-rkl: [SKIP][556] ([i915#14544] / [i915#3555] / [i915#9906]) -> [SKIP][557] ([i915#3555] / [i915#9906])
[556]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8848/shard-rkl-6/igt@kms_vrr@negative-basic.html
[557]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/shard-rkl-7/igt@kms_vrr@negative-basic.html
[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#10647]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10647
[i915#1072]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/1072
[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#11681]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11681
[i915#1187]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/1187
[i915#11920]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11920
[i915#12061]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12061
[i915#12169]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12169
[i915#12313]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12313
[i915#12316]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12316
[i915#12392]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12392
[i915#12454]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12454
[i915#12655]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12655
[i915#12712]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12712
[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#12910]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12910
[i915#13008]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13008
[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#13179]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13179
[i915#13356]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13356
[i915#13390]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13390
[i915#13398]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13398
[i915#13566]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13566
[i915#13691]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13691
[i915#13717]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13717
[i915#13749]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13749
[i915#13784]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13784
[i915#13958]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13958
[i915#14098]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14098
[i915#14118]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14118
[i915#14123]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14123
[i915#14259]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14259
[i915#14419]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14419
[i915#14544]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14544
[i915#14545]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14545
[i915#14694]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14694
[i915#14712]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14712
[i915#15060]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15060
[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#15106]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15106
[i915#15131]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15131
[i915#15132]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15132
[i915#15140]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15140
[i915#15172]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15172
[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#15389]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15389
[i915#15420]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15420
[i915#15458]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15458
[i915#15459]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15459
[i915#15460]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15460
[i915#15478]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15478
[i915#15481]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15481
[i915#15500]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15500
[i915#15560]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15560
[i915#15582]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15582
[i915#15608]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15608
[i915#15643]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15643
[i915#15678]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15678
[i915#15709]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15709
[i915#15752]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15752
[i915#15778]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15778
[i915#15815]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15815
[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#1825]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/1825
[i915#1839]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/1839
[i915#2433]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2433
[i915#2434]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2434
[i915#2436]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2436
[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#3458]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3458
[i915#3539]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3539
[i915#3555]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3555
[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#3742]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3742
[i915#3828]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3828
[i915#3840]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3840
[i915#3936]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3936
[i915#4036]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4036
[i915#4077]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4077
[i915#4079]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4079
[i915#4083]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4083
[i915#4103]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4103
[i915#4212]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4212
[i915#4213]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4213
[i915#4270]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4270
[i915#4349]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4349
[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#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#4818]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4818
[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#4885]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4885
[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#6344]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6344
[i915#6524]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6524
[i915#658]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/658
[i915#6590]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6590
[i915#6621]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6621
[i915#6880]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6880
[i915#7173]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7173
[i915#7582]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7582
[i915#7697]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7697
[i915#7828]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7828
[i915#7984]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7984
[i915#8228]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8228
[i915#8381]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8381
[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#8516]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8516
[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#8812]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8812
[i915#8814]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8814
[i915#8821]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8821
[i915#9053]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9053
[i915#9067]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9067
[i915#9323]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9323
[i915#9433]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9433
[i915#9531]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9531
[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#9812]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9812
[i915#9906]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9906
[i915#9934]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9934
Build changes
-------------
* CI: CI-20190529 -> None
* IGT: IGT_8848 -> IGTPW_14929
CI-20190529: 20190529
CI_DRM_18281: d873f0156bd08a3031097d459e2d3604bfe1b1bf @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_14929: 14929
IGT_8848: 8848
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_14929/index.html
[-- Attachment #2: Type: text/html, Size: 185198 bytes --]
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH i-g-t v10 1/5] tools: Rename tools/gputop to tools/gputop.src
2026-04-06 6:04 ` [PATCH i-g-t v10 1/5] tools: Rename tools/gputop to tools/gputop.src Soham Purkait
@ 2026-04-07 7:45 ` Jani Nikula
2026-04-08 5:50 ` Purkait, Soham
0 siblings, 1 reply; 15+ messages in thread
From: Jani Nikula @ 2026-04-07 7:45 UTC (permalink / raw)
To: Soham Purkait, igt-dev, riana.tauro, badal.nilawar,
kamil.konieczny, vinay.belgaumkar
Cc: anshuman.gupta, soham.purkait, tvrtko.ursulin, tursulin,
lucas.de.marchi
On Mon, 06 Apr 2026, Soham Purkait <soham.purkait@intel.com> wrote:
> The GPUTOP source directory is renamed to gputop.src
> under tools/ path.
Why? The #1 question the commit message should answer.
--
Jani Nikula, Intel
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH i-g-t v10 1/5] tools: Rename tools/gputop to tools/gputop.src
2026-04-07 7:45 ` Jani Nikula
@ 2026-04-08 5:50 ` Purkait, Soham
0 siblings, 0 replies; 15+ messages in thread
From: Purkait, Soham @ 2026-04-08 5:50 UTC (permalink / raw)
To: Jani Nikula, igt-dev, riana.tauro, badal.nilawar, kamil.konieczny,
vinay.belgaumkar
Cc: anshuman.gupta, tvrtko.ursulin, tursulin, lucas.de.marchi
Hi Jani,
On 07-04-2026 13:15, Jani Nikula wrote:
> On Mon, 06 Apr 2026, Soham Purkait <soham.purkait@intel.com> wrote:
>> The GPUTOP source directory is renamed to gputop.src
>> under tools/ path.
> Why? The #1 question the commit message should answer.
Sure I'll mention the reason for this rename.
Thanks & Regards,
Soham
>
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH i-g-t v10 4/5] tools/gputop.src/gputop: Add support for per-engine busyness monitoring
2026-04-06 9:04 ` Tvrtko Ursulin
@ 2026-04-08 7:50 ` Purkait, Soham
2026-04-09 8:52 ` Tvrtko Ursulin
0 siblings, 1 reply; 15+ messages in thread
From: Purkait, Soham @ 2026-04-08 7:50 UTC (permalink / raw)
To: Tvrtko Ursulin, igt-dev, riana.tauro, badal.nilawar,
kamil.konieczny, vinay.belgaumkar
Cc: anshuman.gupta, tursulin, lucas.de.marchi
Hi Tvrtko,
On 06-04-2026 14:34, Tvrtko Ursulin wrote:
>
> On 06/04/2026 07:04, Soham Purkait wrote:
>> This introduce support for monitoring per-engine busyness in gputop,
>> extending existing per-client monitoring to handle multiple GPUs, when
>> present, including support for multi-engine instances, enabling
>> finer-grained engine busyness reporting.
>>
>> v1:
>> - Refactor GPUTOP into a vendor-agnostic tool. (Lucas)
>> v2:
>> - Cosmetic changes. (Riana)
>> - Avoid three level indentation. (Riana)
>> v3:
>> - Add device filter to populate the array of cards for
>> all supported drivers. (Zbigniew)
>> v4:
>> - Add user message for running without root privileges. (Kamil)
>> - Add support for GPU client-only busyness on unsupported
>> drivers as a fallback mechanism. (Kamil)
>> - Remove unused dependencies and headers. (Kamil)
>> v5:
>> - Replace hardcoded values with Enum for driver number. (Vinay)
>> - Rename driver_no to driver_num for better readability. (Vinay)
>>
>> Signed-off-by: Soham Purkait <soham.purkait@intel.com>
>> ---
>> tools/gputop.src/gputop.c | 305 ++++++++++++++++++++++++++++++-----
>> tools/gputop.src/meson.build | 2 +-
>> tools/meson.build | 3 +-
>> 3 files changed, 268 insertions(+), 42 deletions(-)
>>
>> diff --git a/tools/gputop.src/gputop.c b/tools/gputop.src/gputop.c
>> index 9b2e8cb6f..479897f40 100644
>> --- a/tools/gputop.src/gputop.c
>> +++ b/tools/gputop.src/gputop.c
>> @@ -1,6 +1,6 @@
>> // SPDX-License-Identifier: MIT
>> /*
>> - * Copyright © 2023 Intel Corporation
>> + * Copyright © 2023-2026 Intel Corporation
>> */
>> #include <assert.h>
>> @@ -14,22 +14,71 @@
>> #include <math.h>
>> #include <poll.h>
>> #include <signal.h>
>> +#include <stdbool.h>
>> #include <stdint.h>
>> #include <stdio.h>
>> #include <stdlib.h>
>> #include <string.h>
>> #include <sys/ioctl.h>
>> #include <sys/stat.h>
>> +#include <sys/sysmacros.h>
>> #include <sys/types.h>
>> -#include <unistd.h>
>> #include <termios.h>
>> -#include <sys/sysmacros.h>
>> -#include <stdbool.h>
>> +#include <unistd.h>
>> #include "igt_core.h"
>> #include "igt_drm_clients.h"
>> #include "igt_drm_fdinfo.h"
>> #include "igt_profiling.h"
>> +#include "xe_gputop.h"
>> +
>> +/**
>> + * Supported Drivers
>> + *
>> + * Adhere to the following requirements when implementing support
>> for the
>> + * new driver:
>> + * @drivers: Update drivers[] with new driver string and so the enum
>> drivers
>> + * with the new driver entry.
>> + * @sizeof_gputop_obj: Update this function as per new driver
>> support included.
>> + * @operations: Update the respective operations of the new driver:
>> + * gputop_init,
>> + * discover_engines,
>> + * pmu_init,
>> + * pmu_sample,
>> + * print_engines,
>> + * clean_up
>> + * @per_driver_contexts: Update per_driver_contexts[] array of type
>> "struct gputop_driver" with the
>> + * initial values.
>> + */
>> +static const char * const drivers[] = {
>> + "xe",
>> + /* Keep the last one as NULL */
>> + NULL
>> +};
>> +
>> +/**
>> + * Supported operations on driver instances. Update the ops[] array for
>> + * each individual driver specific function. Maintain the sequence
>> as per
>> + * drivers[] array.
>> + */
>> +struct device_operations ops[] = {
>> + {
>> + xe_gputop_init,
>> + xe_populate_engines,
>> + xe_pmu_init,
>> + xe_pmu_sample,
>> + xe_print_engines,
>> + xe_clean_up
>> + }
>> +};
>> +
>> +/*
>> + * per_driver_contexts[] array of type struct gputop_driver which
>> keeps track of the devices
>> + * and related info discovered per driver.
>> + */
>> +struct gputop_driver per_driver_contexts[] = {
>> + {false, 0, NULL}
>> +};
>> enum utilization_type {
>> UTILIZATION_TYPE_ENGINE_TIME,
>> @@ -37,50 +86,84 @@ enum utilization_type {
>> };
>> enum intel_driver_type {
>> - INTEL_DRIVER_I915,
>> INTEL_DRIVER_XE,
>> + INTEL_DRIVER_I915,
>> INTEL_DRIVER_UNKNOWN,
>> };
>> #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]))
>> -static const char *bars[] = { " ", "▏", "▎", "▍", "▌", "▋", "▊",
>> "▉", "█" };
>> -
>> -#define ANSI_HEADER "\033[7m"
>> -#define ANSI_RESET "\033[0m"
>> -
>> -static void n_spaces(const unsigned int n)
>> +static size_t sizeof_gputop_obj(int driver_num)
>> {
>> - unsigned int i;
>> -
>> - for (i = 0; i < n; i++)
>> - putchar(' ');
>> + switch (driver_num) {
>> + case INTEL_DRIVER_XE:
>> + return sizeof(struct xe_gputop);
>> + default:
>> + fprintf(stderr,
>> + "Driver object size does not exist.\n");
>> + exit(EXIT_FAILURE);
>> + }
>> }
>> -static void print_percentage_bar(double percent, int max_len)
>> +static void gputop_clean_up(void)
>> {
>> - int bar_len, i, len = max_len - 1;
>> - const int w = 8;
>> -
>> - len -= printf("|%5.1f%% ", percent);
>> -
>> - /* no space left for bars, do what we can */
>> - if (len < 0)
>> - len = 0;
>> + for (int i = 0; drivers[i]; i++) {
>> + ops[i].clean_up(per_driver_contexts[i].instances,
>> per_driver_contexts[i].len);
>> + free(per_driver_contexts[i].instances);
>> + per_driver_contexts[i].device_present = false;
>> + per_driver_contexts[i].len = 0;
>> + }
>> +}
>> - bar_len = ceil(w * percent * len / 100.0);
>> - if (bar_len > w * len)
>> - bar_len = w * len;
>> +static int find_driver(struct igt_device_card *card)
>> +{
>> + for (int i = 0; drivers[i]; i++) {
>> + if (strcmp(drivers[i], card->driver) == 0)
>> + return i;
>> + }
>> + return -1;
>> +}
>> - for (i = bar_len; i >= w; i -= w)
>> - printf("%s", bars[w]);
>> - if (i)
>> - printf("%s", bars[i]);
>> +static int populate_device_instances(const char *filter)
>> +{
>> + struct igt_device_card *cards = NULL;
>> + struct igt_device_card *card_inplace = NULL;
>> + struct gputop_driver *driver_entry = NULL;
>> + int driver_num;
>> + int count, final_count = 0;
>> +
>> + count = igt_device_card_match_all(filter, &cards);
>> + for (int j = 0; j < count; j++) {
>> + if (strcmp(cards[j].subsystem, "pci") != 0)
>> + continue;
>> - len -= (bar_len + (w - 1)) / w;
>> - n_spaces(len);
>> + driver_num = find_driver(&cards[j]);
>> + if (driver_num < 0)
>> + continue;
>> - putchar('|');
>> + driver_entry = &per_driver_contexts[driver_num];
>> + if (!driver_entry->device_present)
>> + driver_entry->device_present = true;
>> + driver_entry->len++;
>> + driver_entry->instances = realloc(driver_entry->instances,
>> + driver_entry->len
>> + * sizeof_gputop_obj(driver_num));
>> + if (!driver_entry->instances) {
>> + fprintf(stderr,
>> + "Device instance realloc failed (%s)\n",
>> + strerror(errno));
>> + exit(EXIT_FAILURE);
>> + }
>> + card_inplace = (struct igt_device_card *)
>> + calloc(1, sizeof(struct igt_device_card));
>> + memcpy(card_inplace, &cards[j], sizeof(struct
>> igt_device_card));
>> + ops[driver_num].gputop_init(driver_entry->instances,
>> (driver_entry->len - 1),
>> + card_inplace);
>> + final_count++;
>> + }
>> + if (count)
>> + free(cards);
>> + return final_count;
>> }
>> /* Get the correct sysfs prefix based on DRM minor number */
>> @@ -526,8 +609,31 @@ static void clrscr(void)
>> struct gputop_args {
>> long n_iter;
>> unsigned long delay_usec;
>> + bool verbose;
>> };
>> +static void countdown(const char *msg, const int start_sec)
>> +{
>> + struct pollfd pfd;
>> + int i, ret;
>> + char ch;
>> +
>> + for (i = start_sec; i > 0; i--) {
>> + printf("\r%s%d... second(s)", msg, i);
>> + fflush(stdout);
>> +
>> + pfd.fd = STDIN_FILENO;
>> + pfd.events = POLLIN;
>> +
>> + ret = poll(&pfd, 1, 1000);
>> + if (ret > 0 && (pfd.revents & POLLIN)) {
>> + while ((ch = getchar()) != '\n' && ch != EOF)
>> + continue;
>> + return;
>> + }
>> + }
>> +}
>> +
>> static void help(char *full_path)
>> {
>> const char *short_program_name = strrchr(full_path, '/');
>> @@ -541,18 +647,47 @@ static void help(char *full_path)
>> "\t%s [options]\n\n"
>> "Options:\n"
>> "\t-h, --help show this help\n"
>> + "\t-v, --verbose wait 5 seconds before
>> starting client-only busyness in"
>> + " non-root mode if neither CAP_PERFMON is set nor
>> perf_event_paranoid is"
>> + " permissive.\n"
>> "\t-d, --delay =SEC[.TENTHS] iterative delay as SECS
>> [.TENTHS]\n"
>> - "\t-n, --iterations =NUMBER number of executions\n"
>> + "\t-n, --iterations =NUMBER number of executions\n\n"
>> + "Running without root:\n"
>> + "\tAs a non-root user, CAP_PERFMON or perf_event_paranoid
>> is required to\n"
>> + "\taccess engine busyness\n"
>> + "\t" ANSI_HEADER "Steps to run without root (using
>> CAP_PERFMON):"
>> + ANSI_RESET "\n"
>> + "\tcd /path/to/igt-gpu-tools/\n"
>> + "\tsudo setcap cap_perfmon=+ep $(pwd)/build/tools/gputop\n"
>> + "\tsudo sh -c \"echo $(pwd)/build/lib >
>> /etc/ld.so.conf.d/lib-igt.conf\"\n"
>> + "\tsudo ldconfig\n"
>> + "\t" ANSI_HEADER "Steps to revert once done:" ANSI_RESET
>> "\n"
>> + "\tsudo setcap cap_perfmon=-ep $(pwd)/build/tools/gputop\n"
>> + "\tsudo rm /etc/ld.so.conf.d/lib-igt.conf\n"
>> + "\tsudo ldconfig\n"
>> + "\n"
>> + "\t" ANSI_HEADER "Steps to run without root (using
>> perf_event_paranoid):"
>> + ANSI_RESET "\n"
>> + "\t\033[32m# Save current perf_event_paranoid
>> value\033[0m\n"
>> + "\torig_val=$(sysctl -n kernel.perf_event_paranoid)\n"
>> + "\tsudo sysctl -w kernel.perf_event_paranoid=-1\n"
>> + "\t" ANSI_HEADER "Steps to revert once done:" ANSI_RESET
>> "\n"
>> + "\t\033[32m# Restore original value\033[0m\n"
>> + "\tsudo sysctl -w kernel.perf_event_paranoid=$orig_val\n\n"
>> + "\tFor details, see 'Perf events and tool security':\n"
>> + "\thttps://www.kernel.org/doc/html/"
>> + "latest/admin-guide/perf-security.html\n\n"
>> , short_program_name);
>> }
>> static int parse_args(int argc, char * const argv[], struct
>> gputop_args *args)
>> {
>> - static const char cmdopts_s[] = "hn:d:";
>> + static const char cmdopts_s[] = "hvn:d:";
>> static const struct option cmdopts[] = {
>> {"help", no_argument, 0, 'h'},
>> {"delay", required_argument, 0, 'd'},
>> {"iterations", required_argument, 0, 'n'},
>> + {"verbose", no_argument, 0, 'v'},
>> { }
>> };
>> @@ -560,6 +695,7 @@ static int parse_args(int argc, char * const
>> argv[], struct gputop_args *args)
>> memset(args, 0, sizeof(*args));
>> args->n_iter = -1;
>> args->delay_usec = 2 * USEC_PER_SEC;
>> + args->verbose = false;
>> for (;;) {
>> int c, idx = 0;
>> @@ -573,6 +709,9 @@ static int parse_args(int argc, char * const
>> argv[], struct gputop_args *args)
>> case 'n':
>> args->n_iter = strtol(optarg, NULL, 10);
>> break;
>> + case 'v':
>> + args->verbose = true;
>> + break;
>> case 'd':
>> args->delay_usec = strtoul(optarg, &end_ptr, 10) *
>> USEC_PER_SEC;
>> if (*end_ptr == '.')
>> @@ -610,9 +749,12 @@ int main(int argc, char **argv)
>> struct igt_profiled_device *profiled_devices = NULL;
>> struct igt_drm_clients *clients = NULL;
>> int con_w = -1, con_h = -1;
>> + bool is_root;
>> int ret;
>> long n;
>> + is_root = (geteuid() == 0);
>> +
>> ret = parse_args(argc, argv, &args);
>> if (ret < 0)
>> return EXIT_FAILURE;
>> @@ -621,6 +763,62 @@ int main(int argc, char **argv)
>> n = args.n_iter;
>> period_us = args.delay_usec;
>> + populate_device_instances("device:subsystem=pci,card=all");
>> +
>> + for (int i = 0; drivers[i]; i++) {
>> + if (!per_driver_contexts[i].device_present)
>> + continue;
>> +
>> + for (int j = 0; j < per_driver_contexts[i].len; j++) {
>> + if
>> (!ops[i].init_engines(per_driver_contexts[i].instances, j)) {
>> + fprintf(stderr,
>> + "Failed to initialize engines! (%s)\n",
>> + strerror(errno));
>> + gputop_clean_up();
>> + return EXIT_FAILURE;
>> + }
>> + ret = ops[i].pmu_init(per_driver_contexts[i].instances, j);
>> +
>> + if (ret) {
>> + if (errno == EACCES && !is_root) {
>> + igt_devices_free();
>> + gputop_clean_up();
>> + if (args.verbose) {
>> + fprintf(stderr,
>> + "\n"
>> + "Running without root privileges.\n"
>> + "Engine busyness may not be available "
>> + "without root privileges.\n"
>> + "See \"--help\" to enable engine "
>> + "busyness without root.\n\n");
>> + countdown("Resuming with only gpu client "
>> + "busyness in ", 5);
>> + }
>> + } else {
>> + fprintf(stderr,
>> + "Failed to initialize PMU! (%s)\n",
>> + strerror(errno));
>> + igt_devices_free();
>> + gputop_clean_up();
>> + return EXIT_FAILURE;
>> + }
>> + }
>> + }
>> + }
>> +
>> + for (int i = 0; drivers[i]; i++) {
>> + for (int j = 0;
>> + per_driver_contexts[i].device_present && j <
>> per_driver_contexts[i].len;
>> + j++)
>> + if (ops[i].pmu_sample(per_driver_contexts[i].instances,
>> j)) {
>> + fprintf(stderr,
>> + "Failed to sample PMU! (%s)\n",
>> + strerror(errno));
>> + igt_devices_free();
>> + gputop_clean_up();
>> + return EXIT_FAILURE;
>> + }
>> + }
>> clients = igt_drm_clients_init(NULL);
>> if (!clients)
>> @@ -642,22 +840,49 @@ int main(int argc, char **argv)
>> while ((n != 0) && !stop_top) {
>> struct igt_drm_client *c, *prevc = NULL;
>> - int i, engine_w = 0, lines = 0;
>> + int k, engine_w = 0, lines = 0;
>> igt_drm_clients_scan(clients, NULL, NULL, 0, NULL, 0);
>> +
>> + for (int i = 0; drivers[i]; i++) {
>> + for (int j = 0;
>> + per_driver_contexts[i].device_present &&
>> + j < per_driver_contexts[i].len;
>> + j++)
>> + if
>> (ops[i].pmu_sample(per_driver_contexts[i].instances, j)) {
>> + fprintf(stderr,
>> + "Failed to sample PMU! (%s)\n",
>> + strerror(errno));
>> + igt_devices_free();
>> + gputop_clean_up();
>> + return EXIT_FAILURE;
>
> Imagine abstracting this all to a library akin to igt_drm_clients and
> then both xe_gputop and intel_gpu_top could use it. Then the step
> where latter would work with both i915 and xe could be very near, all
> the code would be only in the new library and not duplicated, plus,
> one day extending the support to a non-intel driver could be quite
> plausible.
At present, the planned scope is focused on adding Xe support in GPUTOP
and support for i915 will also be added in the near future if necessary.
In addition, GPUTOP is designed to be extensible and can be adapted to
support non-Intel drivers as well.
Regards,
Soham
>
> Regards,
>
> Tvrtko
>
>> + }
>> + }
>> +
>> igt_drm_clients_sort(clients, client_cmp);
>> update_console_size(&con_w, &con_h);
>> clrscr();
>> + for (int i = 0; drivers[i]; i++) {
>> + for (int j = 0;
>> + per_driver_contexts[i].device_present &&
>> + j < per_driver_contexts[i].len;
>> + j++) {
>> + lines =
>> ops[i].print_engines(per_driver_contexts[i].instances, j,
>> + lines, con_w, con_h);
>> + }
>> + }
>> +
>> if (!clients->num_clients) {
>> - const char *msg = " (No GPU clients yet. Start workload
>> to see stats)";
>> + const char *msg;
>> + msg = " (No GPU clients yet. Start workload to see
>> stats)";
>> printf(ANSI_HEADER "%-*s" ANSI_RESET "\n",
>> (int)(con_w - strlen(msg) - 1), msg);
>> }
>> - igt_for_each_drm_client(clients, c, i) {
>> + igt_for_each_drm_client(clients, c, k) {
>> assert(c->status != IGT_DRM_CLIENT_PROBE);
>> if (c->status != IGT_DRM_CLIENT_ALIVE)
>> break; /* Active clients are first in the array. */
>> @@ -681,11 +906,11 @@ int main(int argc, char **argv)
>> }
>> igt_drm_clients_free(clients);
>> + gputop_clean_up();
>> if (profiled_devices != NULL) {
>> igt_devices_configure_profiling(profiled_devices, false);
>> igt_devices_free_profiling(profiled_devices);
>> }
>> -
>> return 0;
>> }
>> diff --git a/tools/gputop.src/meson.build b/tools/gputop.src/meson.build
>> index ec39f4c7a..e95657fca 100644
>> --- a/tools/gputop.src/meson.build
>> +++ b/tools/gputop.src/meson.build
>> @@ -1 +1 @@
>> -gputop_src = files('gputop.c')
>> +gputop_src = files('gputop.c', 'utils.c', 'xe_gputop.c')
>> diff --git a/tools/meson.build b/tools/meson.build
>> index 521607a4c..caca57d0e 100644
>> --- a/tools/meson.build
>> +++ b/tools/meson.build
>> @@ -123,4 +123,5 @@ subdir('gputop.src')
>> executable('gputop', sources : gputop_src,
>> install : true,
>> install_rpath : bindir_rpathdir,
>> - dependencies :
>> [lib_igt_drm_clients,lib_igt_drm_fdinfo,lib_igt_profiling,math],)
>> + dependencies :
>> [lib_igt_perf,lib_igt_device_scan,lib_igt_drm_clients,
>> + lib_igt_drm_fdinfo,lib_igt_profiling,math],)
>
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH i-g-t v10 4/5] tools/gputop.src/gputop: Add support for per-engine busyness monitoring
2026-04-08 7:50 ` Purkait, Soham
@ 2026-04-09 8:52 ` Tvrtko Ursulin
0 siblings, 0 replies; 15+ messages in thread
From: Tvrtko Ursulin @ 2026-04-09 8:52 UTC (permalink / raw)
To: Purkait, Soham, igt-dev, riana.tauro, badal.nilawar,
kamil.konieczny, vinay.belgaumkar
Cc: anshuman.gupta, tursulin, lucas.de.marchi
On 08/04/2026 08:50, Purkait, Soham wrote:
> Hi Tvrtko,
>
> On 06-04-2026 14:34, Tvrtko Ursulin wrote:
>>
>> On 06/04/2026 07:04, Soham Purkait wrote:
>>> This introduce support for monitoring per-engine busyness in gputop,
>>> extending existing per-client monitoring to handle multiple GPUs, when
>>> present, including support for multi-engine instances, enabling
>>> finer-grained engine busyness reporting.
>>>
>>> v1:
>>> - Refactor GPUTOP into a vendor-agnostic tool. (Lucas)
>>> v2:
>>> - Cosmetic changes. (Riana)
>>> - Avoid three level indentation. (Riana)
>>> v3:
>>> - Add device filter to populate the array of cards for
>>> all supported drivers. (Zbigniew)
>>> v4:
>>> - Add user message for running without root privileges. (Kamil)
>>> - Add support for GPU client-only busyness on unsupported
>>> drivers as a fallback mechanism. (Kamil)
>>> - Remove unused dependencies and headers. (Kamil)
>>> v5:
>>> - Replace hardcoded values with Enum for driver number. (Vinay)
>>> - Rename driver_no to driver_num for better readability. (Vinay)
>>>
>>> Signed-off-by: Soham Purkait <soham.purkait@intel.com>
>>> ---
>>> tools/gputop.src/gputop.c | 305 ++++++++++++++++++++++++++++++-----
>>> tools/gputop.src/meson.build | 2 +-
>>> tools/meson.build | 3 +-
>>> 3 files changed, 268 insertions(+), 42 deletions(-)
>>>
>>> diff --git a/tools/gputop.src/gputop.c b/tools/gputop.src/gputop.c
>>> index 9b2e8cb6f..479897f40 100644
>>> --- a/tools/gputop.src/gputop.c
>>> +++ b/tools/gputop.src/gputop.c
>>> @@ -1,6 +1,6 @@
>>> // SPDX-License-Identifier: MIT
>>> /*
>>> - * Copyright © 2023 Intel Corporation
>>> + * Copyright © 2023-2026 Intel Corporation
>>> */
>>> #include <assert.h>
>>> @@ -14,22 +14,71 @@
>>> #include <math.h>
>>> #include <poll.h>
>>> #include <signal.h>
>>> +#include <stdbool.h>
>>> #include <stdint.h>
>>> #include <stdio.h>
>>> #include <stdlib.h>
>>> #include <string.h>
>>> #include <sys/ioctl.h>
>>> #include <sys/stat.h>
>>> +#include <sys/sysmacros.h>
>>> #include <sys/types.h>
>>> -#include <unistd.h>
>>> #include <termios.h>
>>> -#include <sys/sysmacros.h>
>>> -#include <stdbool.h>
>>> +#include <unistd.h>
>>> #include "igt_core.h"
>>> #include "igt_drm_clients.h"
>>> #include "igt_drm_fdinfo.h"
>>> #include "igt_profiling.h"
>>> +#include "xe_gputop.h"
>>> +
>>> +/**
>>> + * Supported Drivers
>>> + *
>>> + * Adhere to the following requirements when implementing support
>>> for the
>>> + * new driver:
>>> + * @drivers: Update drivers[] with new driver string and so the enum
>>> drivers
>>> + * with the new driver entry.
>>> + * @sizeof_gputop_obj: Update this function as per new driver
>>> support included.
>>> + * @operations: Update the respective operations of the new driver:
>>> + * gputop_init,
>>> + * discover_engines,
>>> + * pmu_init,
>>> + * pmu_sample,
>>> + * print_engines,
>>> + * clean_up
>>> + * @per_driver_contexts: Update per_driver_contexts[] array of type
>>> "struct gputop_driver" with the
>>> + * initial values.
>>> + */
>>> +static const char * const drivers[] = {
>>> + "xe",
>>> + /* Keep the last one as NULL */
>>> + NULL
>>> +};
>>> +
>>> +/**
>>> + * Supported operations on driver instances. Update the ops[] array for
>>> + * each individual driver specific function. Maintain the sequence
>>> as per
>>> + * drivers[] array.
>>> + */
>>> +struct device_operations ops[] = {
>>> + {
>>> + xe_gputop_init,
>>> + xe_populate_engines,
>>> + xe_pmu_init,
>>> + xe_pmu_sample,
>>> + xe_print_engines,
>>> + xe_clean_up
>>> + }
>>> +};
>>> +
>>> +/*
>>> + * per_driver_contexts[] array of type struct gputop_driver which
>>> keeps track of the devices
>>> + * and related info discovered per driver.
>>> + */
>>> +struct gputop_driver per_driver_contexts[] = {
>>> + {false, 0, NULL}
>>> +};
>>> enum utilization_type {
>>> UTILIZATION_TYPE_ENGINE_TIME,
>>> @@ -37,50 +86,84 @@ enum utilization_type {
>>> };
>>> enum intel_driver_type {
>>> - INTEL_DRIVER_I915,
>>> INTEL_DRIVER_XE,
>>> + INTEL_DRIVER_I915,
>>> INTEL_DRIVER_UNKNOWN,
>>> };
>>> #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]))
>>> -static const char *bars[] = { " ", "▏", "▎", "▍", "▌", "▋", "▊",
>>> "▉", "█" };
>>> -
>>> -#define ANSI_HEADER "\033[7m"
>>> -#define ANSI_RESET "\033[0m"
>>> -
>>> -static void n_spaces(const unsigned int n)
>>> +static size_t sizeof_gputop_obj(int driver_num)
>>> {
>>> - unsigned int i;
>>> -
>>> - for (i = 0; i < n; i++)
>>> - putchar(' ');
>>> + switch (driver_num) {
>>> + case INTEL_DRIVER_XE:
>>> + return sizeof(struct xe_gputop);
>>> + default:
>>> + fprintf(stderr,
>>> + "Driver object size does not exist.\n");
>>> + exit(EXIT_FAILURE);
>>> + }
>>> }
>>> -static void print_percentage_bar(double percent, int max_len)
>>> +static void gputop_clean_up(void)
>>> {
>>> - int bar_len, i, len = max_len - 1;
>>> - const int w = 8;
>>> -
>>> - len -= printf("|%5.1f%% ", percent);
>>> -
>>> - /* no space left for bars, do what we can */
>>> - if (len < 0)
>>> - len = 0;
>>> + for (int i = 0; drivers[i]; i++) {
>>> + ops[i].clean_up(per_driver_contexts[i].instances,
>>> per_driver_contexts[i].len);
>>> + free(per_driver_contexts[i].instances);
>>> + per_driver_contexts[i].device_present = false;
>>> + per_driver_contexts[i].len = 0;
>>> + }
>>> +}
>>> - bar_len = ceil(w * percent * len / 100.0);
>>> - if (bar_len > w * len)
>>> - bar_len = w * len;
>>> +static int find_driver(struct igt_device_card *card)
>>> +{
>>> + for (int i = 0; drivers[i]; i++) {
>>> + if (strcmp(drivers[i], card->driver) == 0)
>>> + return i;
>>> + }
>>> + return -1;
>>> +}
>>> - for (i = bar_len; i >= w; i -= w)
>>> - printf("%s", bars[w]);
>>> - if (i)
>>> - printf("%s", bars[i]);
>>> +static int populate_device_instances(const char *filter)
>>> +{
>>> + struct igt_device_card *cards = NULL;
>>> + struct igt_device_card *card_inplace = NULL;
>>> + struct gputop_driver *driver_entry = NULL;
>>> + int driver_num;
>>> + int count, final_count = 0;
>>> +
>>> + count = igt_device_card_match_all(filter, &cards);
>>> + for (int j = 0; j < count; j++) {
>>> + if (strcmp(cards[j].subsystem, "pci") != 0)
>>> + continue;
>>> - len -= (bar_len + (w - 1)) / w;
>>> - n_spaces(len);
>>> + driver_num = find_driver(&cards[j]);
>>> + if (driver_num < 0)
>>> + continue;
>>> - putchar('|');
>>> + driver_entry = &per_driver_contexts[driver_num];
>>> + if (!driver_entry->device_present)
>>> + driver_entry->device_present = true;
>>> + driver_entry->len++;
>>> + driver_entry->instances = realloc(driver_entry->instances,
>>> + driver_entry->len
>>> + * sizeof_gputop_obj(driver_num));
>>> + if (!driver_entry->instances) {
>>> + fprintf(stderr,
>>> + "Device instance realloc failed (%s)\n",
>>> + strerror(errno));
>>> + exit(EXIT_FAILURE);
>>> + }
>>> + card_inplace = (struct igt_device_card *)
>>> + calloc(1, sizeof(struct igt_device_card));
>>> + memcpy(card_inplace, &cards[j], sizeof(struct
>>> igt_device_card));
>>> + ops[driver_num].gputop_init(driver_entry->instances,
>>> (driver_entry->len - 1),
>>> + card_inplace);
>>> + final_count++;
>>> + }
>>> + if (count)
>>> + free(cards);
>>> + return final_count;
>>> }
>>> /* Get the correct sysfs prefix based on DRM minor number */
>>> @@ -526,8 +609,31 @@ static void clrscr(void)
>>> struct gputop_args {
>>> long n_iter;
>>> unsigned long delay_usec;
>>> + bool verbose;
>>> };
>>> +static void countdown(const char *msg, const int start_sec)
>>> +{
>>> + struct pollfd pfd;
>>> + int i, ret;
>>> + char ch;
>>> +
>>> + for (i = start_sec; i > 0; i--) {
>>> + printf("\r%s%d... second(s)", msg, i);
>>> + fflush(stdout);
>>> +
>>> + pfd.fd = STDIN_FILENO;
>>> + pfd.events = POLLIN;
>>> +
>>> + ret = poll(&pfd, 1, 1000);
>>> + if (ret > 0 && (pfd.revents & POLLIN)) {
>>> + while ((ch = getchar()) != '\n' && ch != EOF)
>>> + continue;
>>> + return;
>>> + }
>>> + }
>>> +}
>>> +
>>> static void help(char *full_path)
>>> {
>>> const char *short_program_name = strrchr(full_path, '/');
>>> @@ -541,18 +647,47 @@ static void help(char *full_path)
>>> "\t%s [options]\n\n"
>>> "Options:\n"
>>> "\t-h, --help show this help\n"
>>> + "\t-v, --verbose wait 5 seconds before
>>> starting client-only busyness in"
>>> + " non-root mode if neither CAP_PERFMON is set nor
>>> perf_event_paranoid is"
>>> + " permissive.\n"
>>> "\t-d, --delay =SEC[.TENTHS] iterative delay as SECS
>>> [.TENTHS]\n"
>>> - "\t-n, --iterations =NUMBER number of executions\n"
>>> + "\t-n, --iterations =NUMBER number of executions\n\n"
>>> + "Running without root:\n"
>>> + "\tAs a non-root user, CAP_PERFMON or perf_event_paranoid
>>> is required to\n"
>>> + "\taccess engine busyness\n"
>>> + "\t" ANSI_HEADER "Steps to run without root (using
>>> CAP_PERFMON):"
>>> + ANSI_RESET "\n"
>>> + "\tcd /path/to/igt-gpu-tools/\n"
>>> + "\tsudo setcap cap_perfmon=+ep $(pwd)/build/tools/gputop\n"
>>> + "\tsudo sh -c \"echo $(pwd)/build/lib > /etc/
>>> ld.so.conf.d/lib-igt.conf\"\n"
>>> + "\tsudo ldconfig\n"
>>> + "\t" ANSI_HEADER "Steps to revert once done:" ANSI_RESET
>>> "\n"
>>> + "\tsudo setcap cap_perfmon=-ep $(pwd)/build/tools/gputop\n"
>>> + "\tsudo rm /etc/ld.so.conf.d/lib-igt.conf\n"
>>> + "\tsudo ldconfig\n"
>>> + "\n"
>>> + "\t" ANSI_HEADER "Steps to run without root (using
>>> perf_event_paranoid):"
>>> + ANSI_RESET "\n"
>>> + "\t\033[32m# Save current perf_event_paranoid
>>> value\033[0m\n"
>>> + "\torig_val=$(sysctl -n kernel.perf_event_paranoid)\n"
>>> + "\tsudo sysctl -w kernel.perf_event_paranoid=-1\n"
>>> + "\t" ANSI_HEADER "Steps to revert once done:" ANSI_RESET
>>> "\n"
>>> + "\t\033[32m# Restore original value\033[0m\n"
>>> + "\tsudo sysctl -w kernel.perf_event_paranoid=$orig_val\n\n"
>>> + "\tFor details, see 'Perf events and tool security':\n"
>>> + "\thttps://www.kernel.org/doc/html/"
>>> + "latest/admin-guide/perf-security.html\n\n"
>>> , short_program_name);
>>> }
>>> static int parse_args(int argc, char * const argv[], struct
>>> gputop_args *args)
>>> {
>>> - static const char cmdopts_s[] = "hn:d:";
>>> + static const char cmdopts_s[] = "hvn:d:";
>>> static const struct option cmdopts[] = {
>>> {"help", no_argument, 0, 'h'},
>>> {"delay", required_argument, 0, 'd'},
>>> {"iterations", required_argument, 0, 'n'},
>>> + {"verbose", no_argument, 0, 'v'},
>>> { }
>>> };
>>> @@ -560,6 +695,7 @@ static int parse_args(int argc, char * const
>>> argv[], struct gputop_args *args)
>>> memset(args, 0, sizeof(*args));
>>> args->n_iter = -1;
>>> args->delay_usec = 2 * USEC_PER_SEC;
>>> + args->verbose = false;
>>> for (;;) {
>>> int c, idx = 0;
>>> @@ -573,6 +709,9 @@ static int parse_args(int argc, char * const
>>> argv[], struct gputop_args *args)
>>> case 'n':
>>> args->n_iter = strtol(optarg, NULL, 10);
>>> break;
>>> + case 'v':
>>> + args->verbose = true;
>>> + break;
>>> case 'd':
>>> args->delay_usec = strtoul(optarg, &end_ptr, 10) *
>>> USEC_PER_SEC;
>>> if (*end_ptr == '.')
>>> @@ -610,9 +749,12 @@ int main(int argc, char **argv)
>>> struct igt_profiled_device *profiled_devices = NULL;
>>> struct igt_drm_clients *clients = NULL;
>>> int con_w = -1, con_h = -1;
>>> + bool is_root;
>>> int ret;
>>> long n;
>>> + is_root = (geteuid() == 0);
>>> +
>>> ret = parse_args(argc, argv, &args);
>>> if (ret < 0)
>>> return EXIT_FAILURE;
>>> @@ -621,6 +763,62 @@ int main(int argc, char **argv)
>>> n = args.n_iter;
>>> period_us = args.delay_usec;
>>> + populate_device_instances("device:subsystem=pci,card=all");
>>> +
>>> + for (int i = 0; drivers[i]; i++) {
>>> + if (!per_driver_contexts[i].device_present)
>>> + continue;
>>> +
>>> + for (int j = 0; j < per_driver_contexts[i].len; j++) {
>>> + if (!
>>> ops[i].init_engines(per_driver_contexts[i].instances, j)) {
>>> + fprintf(stderr,
>>> + "Failed to initialize engines! (%s)\n",
>>> + strerror(errno));
>>> + gputop_clean_up();
>>> + return EXIT_FAILURE;
>>> + }
>>> + ret = ops[i].pmu_init(per_driver_contexts[i].instances, j);
>>> +
>>> + if (ret) {
>>> + if (errno == EACCES && !is_root) {
>>> + igt_devices_free();
>>> + gputop_clean_up();
>>> + if (args.verbose) {
>>> + fprintf(stderr,
>>> + "\n"
>>> + "Running without root privileges.\n"
>>> + "Engine busyness may not be available "
>>> + "without root privileges.\n"
>>> + "See \"--help\" to enable engine "
>>> + "busyness without root.\n\n");
>>> + countdown("Resuming with only gpu client "
>>> + "busyness in ", 5);
>>> + }
>>> + } else {
>>> + fprintf(stderr,
>>> + "Failed to initialize PMU! (%s)\n",
>>> + strerror(errno));
>>> + igt_devices_free();
>>> + gputop_clean_up();
>>> + return EXIT_FAILURE;
>>> + }
>>> + }
>>> + }
>>> + }
>>> +
>>> + for (int i = 0; drivers[i]; i++) {
>>> + for (int j = 0;
>>> + per_driver_contexts[i].device_present && j <
>>> per_driver_contexts[i].len;
>>> + j++)
>>> + if (ops[i].pmu_sample(per_driver_contexts[i].instances,
>>> j)) {
>>> + fprintf(stderr,
>>> + "Failed to sample PMU! (%s)\n",
>>> + strerror(errno));
>>> + igt_devices_free();
>>> + gputop_clean_up();
>>> + return EXIT_FAILURE;
>>> + }
>>> + }
>>> clients = igt_drm_clients_init(NULL);
>>> if (!clients)
>>> @@ -642,22 +840,49 @@ int main(int argc, char **argv)
>>> while ((n != 0) && !stop_top) {
>>> struct igt_drm_client *c, *prevc = NULL;
>>> - int i, engine_w = 0, lines = 0;
>>> + int k, engine_w = 0, lines = 0;
>>> igt_drm_clients_scan(clients, NULL, NULL, 0, NULL, 0);
>>> +
>>> + for (int i = 0; drivers[i]; i++) {
>>> + for (int j = 0;
>>> + per_driver_contexts[i].device_present &&
>>> + j < per_driver_contexts[i].len;
>>> + j++)
>>> + if
>>> (ops[i].pmu_sample(per_driver_contexts[i].instances, j)) {
>>> + fprintf(stderr,
>>> + "Failed to sample PMU! (%s)\n",
>>> + strerror(errno));
>>> + igt_devices_free();
>>> + gputop_clean_up();
>>> + return EXIT_FAILURE;
>>
>> Imagine abstracting this all to a library akin to igt_drm_clients and
>> then both xe_gputop and intel_gpu_top could use it. Then the step
>> where latter would work with both i915 and xe could be very near, all
>> the code would be only in the new library and not duplicated, plus,
>> one day extending the support to a non-intel driver could be quite
>> plausible.
> At present, the planned scope is focused on adding Xe support in GPUTOP
> and support for i915 will also be added in the near future if necessary.
> In addition, GPUTOP is designed to be extensible and can be adapted to
> support non-Intel drivers as well.
Yes I designed it to be driver agnostic and so extensible. So I think it
would be better to continue with that direction and not make it worse.
Specifically that would mean not having things such as
intel_driver_type, xe device operations, get_num_gts,
get_intel_frequencies, etc, and even assumption that all devices are
PCI, _directly_ in gputop.c. Rather move it to a library and abstract
the concepts.
Then there is countdown() which is, well, novel, and a pretty verbose
help text.
The diff of the series is quite bad as well since it deals with the mess
created so far. For example this patch removes some functions which are
needed and not added anywhere in this series. So the series is very hard
to review on it's own.
And finally, but not least, it still breaks the tool for non-root:
$ tools/gputop
Engine query failed!
Failed to initialize engines! (Bad file descriptor)
At least on xe. But still not nice since there is no need to regress
that. Just make it access what it can and hide what it can't.
Regards,
Tvrtko
^ permalink raw reply [flat|nested] 15+ messages in thread
end of thread, other threads:[~2026-04-09 8:52 UTC | newest]
Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-04-06 6:04 [PATCH i-g-t v10 0/5] Close any open drm device after engine initialization in GPUTOP Soham Purkait
2026-04-06 6:04 ` [PATCH i-g-t v10 1/5] tools: Rename tools/gputop to tools/gputop.src Soham Purkait
2026-04-07 7:45 ` Jani Nikula
2026-04-08 5:50 ` Purkait, Soham
2026-04-06 6:04 ` [PATCH i-g-t v10 2/5] tools/gputop.src/utils: Add clamp macro to remove dependency on lib/xe/* Soham Purkait
2026-04-06 6:04 ` [PATCH i-g-t v10 3/5] tools/gputop.src/xe_gputop: Use direct ioctls with card_fd cleanup Soham Purkait
2026-04-06 6:04 ` [PATCH i-g-t v10 4/5] tools/gputop.src/gputop: Add support for per-engine busyness monitoring Soham Purkait
2026-04-06 9:04 ` Tvrtko Ursulin
2026-04-08 7:50 ` Purkait, Soham
2026-04-09 8:52 ` Tvrtko Ursulin
2026-04-06 6:04 ` [PATCH i-g-t v10 5/5] tools/gputop.src/gputop: Add command line option for device filter Soham Purkait
2026-04-06 8:25 ` ✓ Xe.CI.BAT: success for Close any open drm device after engine initialization in GPUTOP (rev11) Patchwork
2026-04-06 8:42 ` ✓ i915.CI.BAT: " Patchwork
2026-04-06 11:21 ` ✗ Xe.CI.FULL: failure " Patchwork
2026-04-06 12:32 ` ✗ i915.CI.Full: " Patchwork
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox