* [PATCH i-g-t v2] Add single engine busyness stats in GPUTOP
@ 2025-02-14 16:32 Soham Purkait
2025-02-14 22:51 ` ✓ i915.CI.BAT: success for Add single engine busyness stats in GPUTOP (rev3) Patchwork
` (5 more replies)
0 siblings, 6 replies; 8+ messages in thread
From: Soham Purkait @ 2025-02-14 16:32 UTC (permalink / raw)
To: igt-dev, riana.tauro, lucas.demarchi, vinay.belgaumkar
Cc: anshuman.gupta, rodrigo.vivi, soham.purkait
Add single engine busyness support in GPUTOP.
This uses the PMU interface to display the
busyness of each engine instances.
ENGINES BUSY
Render/3D/0 | 96.5% ███████████████████████████████████████▍|
Blitter/0 | 91.6% █████████████████████████████████████ |
Video/0 | 56.2% ███████████████████████████ |
VideoEnhance/0| 97.7% ████████████████████████████████████████|
Compute/0 | 48.5% ███████████████████████▍ |
v1 : fixed cosmetic issues
v2 : fix for refactoring GPUTOP into a
vendor-agnostic tool (Lucas)
---
lib/igt_device_scan.c | 82 ++++++++
lib/igt_device_scan.h | 5 +
lib/igt_perf.c | 53 ++++++
lib/igt_perf.h | 2 +
tools/gputop/common_gputop.c | 51 +++++
tools/gputop/common_gputop.h | 16 ++
tools/{ => gputop}/gputop.c | 246 ++++++++++++++++++++----
tools/gputop/meson.build | 6 +
tools/gputop/xe_gputop.c | 359 +++++++++++++++++++++++++++++++++++
tools/gputop/xe_gputop.h | 74 ++++++++
tools/meson.build | 6 +-
11 files changed, 858 insertions(+), 42 deletions(-)
create mode 100644 tools/gputop/common_gputop.c
create mode 100644 tools/gputop/common_gputop.h
rename tools/{ => gputop}/gputop.c (65%)
create mode 100644 tools/gputop/meson.build
create mode 100644 tools/gputop/xe_gputop.c
create mode 100644 tools/gputop/xe_gputop.h
diff --git a/lib/igt_device_scan.c b/lib/igt_device_scan.c
index 711bedc5c..c71db0094 100644
--- a/lib/igt_device_scan.c
+++ b/lib/igt_device_scan.c
@@ -773,6 +773,9 @@ __copy_dev_to_card(struct igt_device *dev, struct igt_device_card *card)
if (dev->drm_render != NULL)
safe_strncpy(card->render, dev->drm_render,
sizeof(card->render));
+ if (dev->driver != NULL)
+ safe_strncpy(card->driver, dev->driver,
+ sizeof(card->driver));
if (dev->pci_slot_name != NULL)
safe_strncpy(card->pci_slot_name, dev->pci_slot_name,
@@ -820,6 +823,61 @@ static bool __find_first_intel_card_by_driver_name(struct igt_device_card *card,
return false;
}
+/*
+ * Iterate over all igt_devices array and find all discrete/integrated card.
+ * @card: double pointer to igt_device_card structure, containing
+ * an array of igt_device_card structure upon successful return.
+ */
+static int __find_all_intel_card_by_driver_name(struct igt_device_card **card,
+ bool want_discrete, const char *drv_name)
+{
+ int count = 0;
+ struct igt_device *dev;
+ int is_integrated;
+ struct igt_device_card *tmp;
+ struct igt_device_card *crd =
+ (struct igt_device_card *)calloc(1, sizeof(struct igt_device_card));
+
+ igt_assert(drv_name);
+ memset(card, 0, sizeof(*card));
+
+ igt_list_for_each_entry(dev, &igt_devs.all, link) {
+ if (!is_pci_subsystem(dev) || strcmp(dev->driver, drv_name))
+ continue;
+
+ is_integrated = !strncmp(dev->pci_slot_name, INTEGRATED_I915_GPU_PCI_ID,
+ PCI_SLOT_NAME_SIZE);
+
+ if (want_discrete && !is_integrated) {
+ __copy_dev_to_card(dev, (crd + count));
+ count++;
+ tmp = realloc(crd, sizeof(struct igt_device_card) * (1 + count));
+ if (!tmp) {
+ free(crd);
+ return -1;
+ }
+ crd = tmp;
+
+ } else if (!want_discrete && is_integrated) {
+ __copy_dev_to_card(dev, (crd + count));
+ count++;
+ tmp = realloc(crd, sizeof(struct igt_device_card) * (1 + count));
+ if (!tmp) {
+ free(crd);
+ return -1;
+ }
+ crd = tmp;
+ }
+ }
+ if (count == 0) {
+ free(crd);
+ return 0;
+ }
+
+ *card = crd;
+ return count;
+}
+
bool igt_device_find_first_i915_discrete_card(struct igt_device_card *card)
{
igt_assert(card);
@@ -866,6 +924,30 @@ bool igt_device_find_xe_integrated_card(struct igt_device_card *card)
return __find_first_intel_card_by_driver_name(card, false, "xe");
}
+int igt_device_find_all_xe_integrated_card(struct igt_device_card **card)
+{
+ igt_assert(card);
+ return __find_all_intel_card_by_driver_name(card, false, "xe");
+}
+
+int igt_device_find_all_i915_integrated_card(struct igt_device_card **card)
+{
+ igt_assert(card);
+ return __find_all_intel_card_by_driver_name(card, false, "i915");
+}
+
+int igt_device_find_all_xe_discrete_card(struct igt_device_card **card)
+{
+ igt_assert(card);
+ return __find_all_intel_card_by_driver_name(card, true, "xe");
+}
+
+int igt_device_find_all_i915_discrete_card(struct igt_device_card **card)
+{
+ igt_assert(card);
+ return __find_all_intel_card_by_driver_name(card, true, "i915");
+}
+
static struct igt_device *igt_device_from_syspath(const char *syspath)
{
struct igt_device *dev;
diff --git a/lib/igt_device_scan.h b/lib/igt_device_scan.h
index 92741fe3c..da107292a 100644
--- a/lib/igt_device_scan.h
+++ b/lib/igt_device_scan.h
@@ -59,6 +59,7 @@ struct igt_device_card {
char subsystem[NAME_MAX];
char card[NAME_MAX];
char render[NAME_MAX];
+ char driver[NAME_MAX];
char pci_slot_name[PCI_SLOT_NAME_SIZE+1];
uint16_t pci_vendor, pci_device;
};
@@ -92,6 +93,10 @@ bool igt_device_find_first_i915_discrete_card(struct igt_device_card *card);
bool igt_device_find_integrated_card(struct igt_device_card *card);
bool igt_device_find_first_xe_discrete_card(struct igt_device_card *card);
bool igt_device_find_xe_integrated_card(struct igt_device_card *card);
+int igt_device_find_all_i915_discrete_card(struct igt_device_card **card);
+int igt_device_find_all_i915_integrated_card(struct igt_device_card **card);
+int igt_device_find_all_xe_integrated_card(struct igt_device_card **card);
+int igt_device_find_all_xe_discrete_card(struct igt_device_card **card);
char *igt_device_get_pretty_name(struct igt_device_card *card, bool numeric);
int igt_open_card(struct igt_device_card *card);
int igt_open_render(struct igt_device_card *card);
diff --git a/lib/igt_perf.c b/lib/igt_perf.c
index 3866c6d77..3f2f3311f 100644
--- a/lib/igt_perf.c
+++ b/lib/igt_perf.c
@@ -129,6 +129,59 @@ uint64_t igt_perf_type_id(const char *device)
return strtoull(buf, NULL, 0);
}
+int igt_perf_format(const char *device, const char *name, char *buff, int buflen)
+{
+ char buf[NAME_MAX];
+ ssize_t ret;
+ int fd;
+
+ snprintf(buf, sizeof(buf),
+ "/sys/bus/event_source/devices/%s/format/%s", device, name);
+
+ fd = open(buf, O_RDONLY);
+ if (fd < 0)
+ return -1;
+
+ ret = read(fd, buff, buflen - 1);
+ close(fd);
+ if (ret < 1)
+ return -1;
+
+ buf[ret] = '\0';
+
+ return 0;
+}
+
+uint64_t xe_perf_event_config(int xe, const char *pmu_str)
+{
+ char buf[150];
+ ssize_t ret;
+ int fd;
+ uint64_t config;
+ char device[30];
+
+ snprintf(buf, sizeof(buf),
+ "/sys/bus/event_source/devices/%s/events/%s",
+ xe_perf_device(xe, device, sizeof(device)),
+ pmu_str);
+
+ fd = open(buf, O_RDONLY);
+ if (fd < 0)
+ return 0;
+
+ ret = read(fd, buf, sizeof(buf) - 1);
+ close(fd);
+ if (ret < 1)
+ return 0;
+
+ buf[ret] = '\0';
+ ret = sscanf(buf, "event=0x%lx", &config);
+ if (ret != 1)
+ return 0;
+
+ return config;
+}
+
int igt_perf_events_dir(int i915)
{
char buf[80];
diff --git a/lib/igt_perf.h b/lib/igt_perf.h
index 3d9ba2917..26b9ffa29 100644
--- a/lib/igt_perf.h
+++ b/lib/igt_perf.h
@@ -54,9 +54,11 @@ perf_event_open(struct perf_event_attr *attr,
}
uint64_t igt_perf_type_id(const char *device);
+uint64_t xe_perf_event_config(int xe, const char *pmu_event);
int igt_perf_events_dir(int i915);
int igt_perf_open(uint64_t type, uint64_t config);
int igt_perf_open_group(uint64_t type, uint64_t config, int group);
+int igt_perf_format(const char *device, const char *name, char *buff, int buflen);
const char *i915_perf_device(int i915, char *buf, int buflen);
uint64_t i915_perf_type_id(int i915);
diff --git a/tools/gputop/common_gputop.c b/tools/gputop/common_gputop.c
new file mode 100644
index 000000000..1188d8e6a
--- /dev/null
+++ b/tools/gputop/common_gputop.c
@@ -0,0 +1,51 @@
+// SPDX-License-Identifier: MIT
+/*
+ * Copyright © 2025 Intel Corporation
+ */
+#include <stdio.h>
+#include <stdlib.h>
+#include "common_gputop.h"
+
+static const char * const bars[] = { " ", "▏", "▎", "▍", "▌", "▋", "▊", "▉", "█" };
+
+void n_spaces(const unsigned int n)
+{
+ unsigned int i;
+
+ for (i = 0; i < n; i++)
+ putchar(' ');
+}
+
+void print_percentage_bar(double percent, int max_len)
+{
+ 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;
+
+ bar_len = ceil(w * percent * len / 100.0);
+ if (bar_len > w * len)
+ bar_len = w * len;
+
+ for (i = bar_len; i >= w; i -= w)
+ printf("%s", bars[w]);
+ if (i)
+ printf("%s", bars[i]);
+
+ len -= (bar_len + (w - 1)) / w;
+ n_spaces(len);
+
+ putchar('|');
+}
+
+int print_engines_footer(int lines, int con_w, int con_h)
+{
+ if (lines++ < con_h)
+ printf("\n");
+
+ return lines;
+}
diff --git a/tools/gputop/common_gputop.h b/tools/gputop/common_gputop.h
new file mode 100644
index 000000000..29ba48d86
--- /dev/null
+++ b/tools/gputop/common_gputop.h
@@ -0,0 +1,16 @@
+// SPDX-License-Identifier: MIT
+/*
+ * Copyright © 2025 Intel Corporation
+ */
+#ifndef COMMON_GPUTOP_H
+#define COMMON_GPUTOP_H
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <math.h>
+
+void print_percentage_bar(double percent, int max_len);
+int print_engines_footer(int lines, int con_w, int con_h);
+void n_spaces(const unsigned int n);
+
+#endif // COMMON_GPUTOP_H
diff --git a/tools/gputop.c b/tools/gputop/gputop.c
similarity index 65%
rename from tools/gputop.c
rename to tools/gputop/gputop.c
index 43b01f566..e53d1f087 100644
--- a/tools/gputop.c
+++ b/tools/gputop/gputop.c
@@ -1,8 +1,7 @@
// SPDX-License-Identifier: MIT
/*
- * Copyright © 2023 Intel Corporation
+ * Copyright © 2025 Intel Corporation
*/
-
#include <assert.h>
#include <ctype.h>
#include <dirent.h>
@@ -31,49 +30,78 @@
#include "igt_drm_fdinfo.h"
#include "igt_profiling.h"
#include "drmtest.h"
+#include "xe/xe_query.h"
+#include "igt_perf.h"
+#include "igt_device_scan.h"
+#include "xe_gputop.h"
-enum utilization_type {
- UTILIZATION_TYPE_ENGINE_TIME,
- UTILIZATION_TYPE_TOTAL_CYCLES,
+/*
+ * Supported Drivers
+ */
+static const char * const drivers[] = {
+ "xe",
+// "i915", yet to implement
+ /*Keep the last one NULL*/
+ NULL
};
-static const char *bars[] = { " ", "▏", "▎", "▍", "▌", "▋", "▊", "▉", "█" };
-
-#define ANSI_HEADER "\033[7m"
-#define ANSI_RESET "\033[0m"
+/*
+ * Number of supported drivers needs to be adjusted
+ * as per the letgth of the drivers[] array.
+ */
+#define NUM_DRIVER 1
-static void n_spaces(const unsigned int n)
-{
- unsigned int i;
+/*
+ * Supported operations on driver instances.
+ * Update the array of function pointers for
+ * each individual driver specific function.
+ * Maintain the sequence as per drivers[] array.
+ */
+void *(*discover_engines[NUM_DRIVER])(const void *obj) = {
+ xe_discover_engines
+};
- for (i = 0; i < n; i++)
- putchar(' ');
-}
+void (*pmu_sample[NUM_DRIVER])(const void *obj) = {
+ xe_pmu_sample
+};
-static void print_percentage_bar(double percent, int max_len)
-{
- int bar_len, i, len = max_len - 1;
- const int w = 8;
+int (*pmu_init[NUM_DRIVER])(const void *obj) = {
+ xe_pmu_init
+};
- len -= printf("|%5.1f%% ", percent);
+int (*print_engines[NUM_DRIVER])(const void *obj, int lines, int w, int h) = {
+ xe_print_engines
+};
- /* no space left for bars, do what we can */
- if (len < 0)
- len = 0;
+/*
+ * Update this devices[] array with initialized
+ * values as per drivers[] array
+ */
+struct gputop_device {
+ bool driver_present;
+ int len;
+ void *instances;
+} devices[] = {
+ {false, 0, NULL}
+};
- bar_len = ceil(w * percent * len / 100.0);
- if (bar_len > w * len)
- bar_len = w * len;
+enum utilization_type {
+ UTILIZATION_TYPE_ENGINE_TIME,
+ UTILIZATION_TYPE_TOTAL_CYCLES,
+};
- for (i = bar_len; i >= w; i -= w)
- printf("%s", bars[w]);
- if (i)
- printf("%s", bars[i]);
+#define ANSI_HEADER "\033[7m"
+#define ANSI_RESET "\033[0m"
- len -= (bar_len + (w - 1)) / w;
- n_spaces(len);
+void xe_populate_device_instances(struct gputop_device *dv);
- putchar('|');
+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;
}
static int
@@ -305,7 +333,6 @@ static int client_cmp(const void *_a, const void *_b, void *unused)
return 1;
else
return -1;
-
}
static void update_console_size(int *w, int *h)
@@ -333,6 +360,7 @@ static void clrscr(void)
struct gputop_args {
long n_iter;
unsigned long delay_usec;
+ char *device;
};
static void help(void)
@@ -343,16 +371,18 @@ static void help(void)
"\t-h, --help show this help\n"
"\t-d, --delay =SEC[.TENTHS] iterative delay as SECS [.TENTHS]\n"
"\t-n, --iterations =NUMBER number of executions\n"
+ "\t-D, --device Device filter"
, program_invocation_short_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[] = "hn:d:D:";
static const struct option cmdopts[] = {
{"help", no_argument, 0, 'h'},
{"delay", required_argument, 0, 'd'},
{"iterations", required_argument, 0, 'n'},
+ {"device", required_argument, 0, 'D'},
{ }
};
@@ -360,6 +390,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->device = NULL;
for (;;) {
int c, idx = 0;
@@ -383,6 +414,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();
return 0;
@@ -403,6 +437,56 @@ static void sigint_handler(int sig)
stop_top = true;
}
+void xe_populate_device_instances(struct gputop_device *dv)
+{
+ struct igt_device_card *card_int = NULL, *card_dis = NULL, *cards_combi = NULL;
+ int count_int = 0, count_dis = 0;
+
+ count_int = igt_device_find_all_xe_integrated_card(&card_int);
+ count_dis = igt_device_find_all_xe_discrete_card(&card_dis);
+
+ if (count_int > 0 || count_dis > 0) {
+ // Allocate memory for the combined array
+ cards_combi = (struct igt_device_card *)calloc((count_int + count_dis),
+ sizeof(struct igt_device_card));
+ if (!cards_combi) {
+ fprintf(stderr, "Memory allocation failed for igt_device_card\n");
+ if (card_int)
+ free(card_int);
+ if (card_dis)
+ free(card_dis);
+ exit(EXIT_FAILURE);
+ }
+
+ if (card_int) {
+ memcpy(cards_combi, card_int,
+ count_int * sizeof(struct igt_device_card));
+ free(card_int);
+ }
+
+ if (card_dis) {
+ memcpy(cards_combi + count_int,
+ card_dis, count_dis * sizeof(struct igt_device_card));
+ free(card_dis);
+ }
+
+ dv->driver_present = true;
+ dv->len = count_int + count_dis;
+ dv->instances = calloc(dv->len, sizeof(struct xe_gputop));
+ for (int i = 0; i < count_int; i++) {
+ xe_gputop_init((struct xe_gputop *)dv->instances + i,
+ cards_combi + i
+ );
+ }
+
+ for (int i = 0; i < count_dis; i++) {
+ xe_gputop_init((struct xe_gputop *)dv->instances + count_int + i,
+ cards_combi + count_int + i
+ );
+ }
+ }
+}
+
int main(int argc, char **argv)
{
struct gputop_args args;
@@ -422,6 +506,85 @@ int main(int argc, char **argv)
n = args.n_iter;
period_us = args.delay_usec;
+ igt_devices_scan();
+
+ if (args.device) {
+ struct igt_device_card *card = calloc(1, sizeof(struct igt_device_card));
+
+ if (!igt_device_card_match(args.device, card)) {
+ printf("No device found for the filter\n"
+ "Showing for all devices\n");
+ free(card);
+ } else {
+ int driver_no = find_Driver(card);
+
+ if (driver_no < 0) {
+ fprintf(stderr, "The driver %s could not be found.", card->driver);
+ exit(EXIT_FAILURE);
+ }
+
+ devices[driver_no].driver_present = true;
+ devices[driver_no].len = 1;
+ switch (driver_no) {
+ case 0:
+ devices[driver_no].instances =
+ calloc(1, sizeof(struct xe_gputop));
+ xe_gputop_init(devices[driver_no].instances,
+ card
+ );
+ break;
+ }
+ goto explore_devices;
+ }
+ }
+
+ for (int i = 0; drivers[i]; i++) {
+ switch (i) {
+ case 0: // xe
+ xe_populate_device_instances(devices + i);
+ break;
+ }
+ }
+
+explore_devices:
+
+ for (int i = 0; drivers[i]; i++) {
+ if (devices[i].driver_present) {
+ for (int j = 0; j < devices[i].len; j++) {
+ if (!discover_engines[i](devices[i].instances + j)) {
+ fprintf(stderr,
+ "Failed to discover engines! (%s)\n",
+ strerror(errno));
+ return EXIT_FAILURE;
+ }
+ ret = pmu_init[i](devices[i].instances + j);
+
+ if (ret) {
+ fprintf(stderr,
+ "Failed to initialize PMU! (%s)\n",
+ strerror(errno));
+ if (errno == EACCES && geteuid())
+ fprintf(stderr,
+ "\n"
+ "When running as a normal user CAP_PERFMON is required to access performance\n"
+ "monitoring. See \"man 7 capabilities\", \"man 8 setcap\", or contact your\n"
+ "distribution vendor for assistance.\n"
+ "\n"
+ "More information can be found at 'Perf events and tool security' document:\n"
+ "https://www.kernel.org/doc/html/latest/admin-guide/perf-security.html\n");
+
+ igt_devices_free();
+ return EXIT_FAILURE;
+ }
+ }
+ }
+ }
+
+ for (int i = 0; drivers[i]; i++) {
+ for (int j = 0; devices[i].driver_present && j < devices[i].len; j++)
+ pmu_sample[i](devices[i].instances + j);
+ }
+
clients = igt_drm_clients_init(NULL);
if (!clients)
exit(1);
@@ -442,7 +605,7 @@ 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);
igt_drm_clients_sort(clients, client_cmp);
@@ -450,6 +613,14 @@ int main(int argc, char **argv)
update_console_size(&con_w, &con_h);
clrscr();
+ for (int i = 0; drivers[i]; i++) {
+ for (int j = 0; devices[i].driver_present && j < devices[i].len; j++) {
+ pmu_sample[i](devices[i].instances + j);
+ lines = print_engines[i](devices[i].instances + j,
+ lines, con_w, con_h);
+ }
+ }
+
if (!clients->num_clients) {
const char *msg = " (No GPU clients yet. Start workload to see stats)";
@@ -457,7 +628,7 @@ int main(int argc, char **argv)
(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. */
@@ -489,3 +660,4 @@ int main(int argc, char **argv)
return 0;
}
+
diff --git a/tools/gputop/meson.build b/tools/gputop/meson.build
new file mode 100644
index 000000000..0512ac3d6
--- /dev/null
+++ b/tools/gputop/meson.build
@@ -0,0 +1,6 @@
+gputop_src = [ 'gputop.c', 'common_gputop.c', 'xe_gputop.c']
+executable('gputop', sources : gputop_src,
+ install : true,
+ install_rpath : bindir_rpathdir,
+ dependencies : [igt_deps,lib_igt_perf,lib_igt_drm_clients,lib_igt_drm_fdinfo,lib_igt_profiling,math],
+ install: true)
diff --git a/tools/gputop/xe_gputop.c b/tools/gputop/xe_gputop.c
new file mode 100644
index 000000000..2751a6e4e
--- /dev/null
+++ b/tools/gputop/xe_gputop.c
@@ -0,0 +1,359 @@
+/* SPDX-License-Identifier: MIT */
+/*
+ * Copyright © 2025 Intel Corporation
+ */
+
+#include "xe_gputop.h"
+#include "common_gputop.h"
+
+#define engine_ptr(engines, n) (&(engines)->engine + (n))
+
+static void __update_sample(struct xe_pmu_counter *counter, uint64_t val)
+{
+ counter->val.prev = counter->val.cur;
+ counter->val.cur = val;
+}
+
+static void update_sample(struct xe_pmu_counter *counter, uint64_t *val)
+{
+ if (counter->present)
+ __update_sample(counter, val[counter->idx]);
+}
+
+static const char *class_display_name(unsigned int class)
+{
+ switch (class) {
+ case DRM_XE_ENGINE_CLASS_RENDER:
+ return "Render/3D";
+ case DRM_XE_ENGINE_CLASS_COPY:
+ return "Blitter";
+ case DRM_XE_ENGINE_CLASS_VIDEO_DECODE:
+ return "Video";
+ case DRM_XE_ENGINE_CLASS_VIDEO_ENHANCE:
+ return "VideoEnhance";
+ case DRM_XE_ENGINE_CLASS_COMPUTE:
+ return "Compute";
+ default:
+ return "[unknown]";
+ }
+}
+
+static inline void *clean_up(void *engines)
+{
+ if (engines)
+ free(engines);
+
+ return NULL;
+}
+
+static int _open_pmu(uint64_t type, unsigned int *cnt, struct xe_pmu_counter *pmu, int *fd)
+{
+ int fd__ = igt_perf_open_group(type, pmu->config, *fd);
+
+ if (fd__ >= 0) {
+ if (*fd == -1)
+ *fd = fd__;
+ pmu->present = true;
+ pmu->idx = (*cnt)++;
+ }
+
+ return fd__;
+}
+
+/* tr_pmu_name()
+ *
+ * Transliterate pci_slot_id to sysfs device name entry for discrete GPU.
+ * Discrete GPU PCI ID ("xxxx:yy:zz.z") device = "xe_xxxx_yy_zz.z".
+ */
+static char *tr_pmu_name(const struct igt_device_card *card)
+{
+ int ret;
+ const int bufsize = 16;
+ char *buf, *device = NULL;
+
+ assert(card->pci_slot_name[0]);
+
+ device = malloc(bufsize);
+ assert(device);
+
+ ret = snprintf(device, bufsize, "xe_%s", card->pci_slot_name);
+ assert(ret == (bufsize - 1));
+
+ buf = device;
+ for (; *buf; buf++)
+ if (*buf == ':')
+ *buf = '_';
+
+ return device;
+}
+
+void xe_gputop_init(struct xe_gputop *obj,
+ struct igt_device_card *card)
+{
+ obj->pmu_device = tr_pmu_name(card);
+ obj->card = card;
+}
+
+static int pmu_format_shift(int xe, const char *name)
+{
+ int start, end, ret;
+ int format;
+ char device[80], buff[80];
+
+ format = igt_perf_format(xe_perf_device(xe, device, sizeof(device)),
+ name, buff, sizeof(buff));
+ if (format)
+ return 0;
+
+ ret = sscanf(buff, "config:%d-%d", &start, &end);
+ igt_assert(ret >= 1);
+
+ return start;
+}
+
+static int engine_cmp(const void *__a, const void *__b)
+{
+ const struct xe_engine *a = (struct xe_engine *)__a;
+ const struct xe_engine *b = (struct xe_engine *)__b;
+
+ if (a->drm_xe_engine.engine_class != b->drm_xe_engine.engine_class)
+ return a->drm_xe_engine.engine_class - b->drm_xe_engine.engine_class;
+ else
+ return a->drm_xe_engine.engine_instance - b->drm_xe_engine.engine_instance;
+}
+
+void *xe_discover_engines(const void *obj)
+{
+ struct igt_device_card *card = ((struct xe_gputop *)obj)->card;
+ struct xe_engines *engines;
+ int ret = 0;
+ DIR *d;
+ struct drm_xe_engine_class_instance *hwe;
+ int card_fd;
+
+ if (!card || !strlen(card->card) || !strlen(card->render))
+ return NULL;
+
+ if (strlen(card->card)) {
+ card_fd = igt_open_card(card);
+ } else if (strlen(card->render)) {
+ card_fd = igt_open_render(card);
+ } else {
+ fprintf(stderr, "Failed to detect device!\n");
+ return clean_up(engines);
+ }
+ xe_device_get(card_fd);
+ engines = malloc(sizeof(struct xe_engines));
+ if (!engines)
+ return NULL;
+
+ memset(engines, 0, sizeof(*xe_engines));
+
+ engines->num_engines = 0;
+ engines->device = ((struct xe_gputop *)obj)->pmu_device;
+ xe_for_each_engine(card_fd, hwe) {
+ uint64_t engine_class, engine_instance, gt_shift, param_config;
+ struct xe_engine *engine;
+
+ engine = engine_ptr(engines, engines->num_engines);
+ 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");
+ 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->busy.config = xe_perf_event_config(card_fd, "engine-active-ticks")
+ | param_config;
+ engine->total.config = xe_perf_event_config(card_fd, "engine-total-ticks")
+ | param_config;
+
+ if (engine->busy.config == -1 || engine->total.config == -1) {
+ ret = ENOENT;
+ break;
+ }
+
+ ret = asprintf(&engine->display_name, "%s/%u",
+ class_display_name(engine->drm_xe_engine.engine_class),
+ engine->drm_xe_engine.engine_instance);
+
+ if (ret <= 0) {
+ ret = errno;
+ break;
+ }
+ ret = asprintf(&engine->short_name, "%s/%u",
+ xe_engine_class_short_string(engine->drm_xe_engine.engine_class),
+ engine->drm_xe_engine.engine_instance);
+
+ if (ret <= 0) {
+ ret = errno;
+ break;
+ }
+
+ engines->num_engines++;
+ engines = realloc(engines, sizeof(struct xe_engines) +
+ engines->num_engines * sizeof(struct xe_engine));
+ if (!engines) {
+ ret = errno;
+ break;
+ }
+ }
+
+ if (!ret) {
+ errno = ret;
+ return clean_up(engines);
+ }
+
+ qsort(engine_ptr(engines, 0), engines->num_engines,
+ sizeof(struct xe_engine), engine_cmp);
+
+ engines->root = d;
+ ((struct xe_gputop *)obj)->eng_obj = engines;
+
+ return engines;
+}
+
+static uint64_t pmu_read_multi(int fd, unsigned int num, uint64_t *val)
+{
+ uint64_t buf[2 + num];
+ unsigned int i;
+ ssize_t len;
+
+ memset(buf, 0, sizeof(buf));
+
+ len = read(fd, buf, sizeof(buf));
+ assert(len == sizeof(buf));
+
+ for (i = 0; i < num; i++)
+ val[i] = buf[2 + i];
+
+ return buf[1];
+}
+
+void xe_pmu_sample(const void *obj)
+{
+ struct xe_engines *engines = ((struct xe_gputop *)obj)->eng_obj;
+ const int num_val = engines->num_counters;
+ uint64_t val[2 + num_val];
+ unsigned int i;
+
+ engines->ts.prev = engines->ts.cur;
+ engines->ts.cur = pmu_read_multi(engines->fd, num_val, val);
+
+ for (i = 0; i < engines->num_engines; i++) {
+ struct xe_engine *engine = engine_ptr(engines, i);
+
+ update_sample(&engine->busy, val);
+ update_sample(&engine->total, val);
+ }
+}
+
+int xe_pmu_init(const void *obj)
+{
+ struct xe_engines *engines = ((struct xe_gputop *)obj)->eng_obj;
+ unsigned int i;
+ int fd;
+ struct xe_engine *engine;
+ uint64_t type = igt_perf_type_id(engines->device);
+
+ engines->fd = -1;
+ engines->num_counters = 0;
+
+ engine = engine_ptr(engines, 0);
+ fd = _open_pmu(type, &engines->num_counters, &engine->busy, &engines->fd);
+ if (fd < 0)
+ return -1;
+ fd = _open_pmu(type, &engines->num_counters, &engine->total, &engines->fd);
+ if (fd < 0)
+ return -1;
+
+ for (i = 1; i < engines->num_engines; i++) {
+ engine = engine_ptr(engines, i);
+ fd = _open_pmu(type, &engines->num_counters, &engine->busy, &engines->fd);
+ if (fd < 0)
+ return -1;
+ fd = _open_pmu(type, &engines->num_counters, &engine->total, &engines->fd);
+ if (fd < 0)
+ return -1;
+ }
+ return 0;
+}
+
+static double pmu_calc_total(struct xe_pmu_pair *p)
+{
+ double v;
+
+ v = (p->cur - p->prev) / 1e9;
+ return v;
+}
+
+static double pmu_calc(struct xe_pmu_pair *p, double total_tick)
+{
+ double bz = (p->cur - p->prev) / 1e9;
+ double total;
+
+ total = (bz * 100) / total_tick;
+ return total;
+}
+
+static int
+print_engines_header(struct xe_engines *engines,
+ int lines, int con_w, int con_h)
+{
+ const char *a;
+
+ for (unsigned int i = 0;
+ i < engines->num_engines && lines < con_h;
+ i++) {
+ struct xe_engine *engine = engine_ptr(engines, i);
+
+ if (!engine->num_counters)
+ continue;
+
+ a = " ENGINES BUSY ";
+
+ printf("\033[7m%s%*s\033[0m\n",
+ a,
+ (int)(con_w - strlen(a)), " ");
+
+ lines++;
+
+ break;
+ }
+
+ return lines;
+}
+
+static int
+print_engine(struct xe_engines *engines, unsigned int i,
+ int lines, int con_w, int con_h)
+{
+ struct xe_engine *engine = engine_ptr(engines, i);
+ double total_tick = pmu_calc_total(&engine->total.val);
+ double percentage = pmu_calc(&engine->busy.val, total_tick);
+
+ printf("%*s", (int)(strlen(" ENGINES")), engine->display_name);
+ //printf(" %5.1f", percentage);
+ print_percentage_bar(percentage, con_w - strlen(" ENGINES"));
+ printf("\n");
+
+ return ++lines;
+}
+
+int xe_print_engines(const void *obj, int lines, int w, int h)
+{
+ struct xe_engines *engines = ((struct xe_gputop *)obj)->eng_obj;
+ struct xe_engines *show;
+
+ show = engines;
+
+ lines = print_engines_header(show, lines, w, h);
+
+ for (unsigned int i = 0; i < show->num_engines && lines < h; i++)
+ lines = print_engine(show, i, lines, w, h);
+
+ lines = print_engines_footer(lines, w, h);
+
+ return lines;
+}
+
diff --git a/tools/gputop/xe_gputop.h b/tools/gputop/xe_gputop.h
new file mode 100644
index 000000000..0f7291563
--- /dev/null
+++ b/tools/gputop/xe_gputop.h
@@ -0,0 +1,74 @@
+/* SPDX-License-Identifier: MIT
+ *
+ * Copyright © 2025 Intel Corporation
+ */
+
+#ifndef __XE_GPUTOP_H__
+#define __XE_GPUTOP_H__
+
+#include <dirent.h>
+
+#include "igt_device_scan.h"
+#include "xe/xe_query.h"
+#include "igt_perf.h"
+#include "common_gputop.h"
+
+struct xe_pmu_pair {
+ uint64_t cur;
+ uint64_t prev;
+};
+
+struct xe_pmu_counter {
+ uint64_t type;
+ uint64_t config;
+ unsigned int idx;
+ struct xe_pmu_pair val;
+ bool present;
+};
+
+struct xe_engine {
+ const char *name;
+ char *display_name;
+ char *short_name;
+ struct drm_xe_engine_class_instance drm_xe_engine;
+ unsigned int num_counters;
+ struct xe_pmu_counter busy;
+ struct xe_pmu_counter total;
+};
+
+struct xe_engines {
+ unsigned int num_engines;
+ unsigned int num_classes;
+ unsigned int num_counters;
+ DIR *root;
+ int fd;
+ struct xe_pmu_pair ts;
+ bool discrete;
+ char *device;
+ int num_gts;
+
+ /* Do not edit below this line.
+ * This structure is reallocated every time a new engine is
+ * found and size is increased by sizeof (engine).
+ */
+
+ struct xe_engine engine;
+
+};
+
+struct xe_gputop {
+ char *pmu_device;
+ struct igt_device_card *card;
+ struct xe_engines *eng_obj;
+};
+
+void xe_gputop_init(struct xe_gputop *obj,
+ struct igt_device_card *card);
+
+void *xe_discover_engines(const void *obj);
+void xe_pmu_sample(const void *obj);
+int xe_pmu_init(const void *obj);
+int xe_print_engines(const void *obj, int lines, int w, int h);
+
+#endif // __XE_GPUTOP_H__
+
diff --git a/tools/meson.build b/tools/meson.build
index f091af380..7a9fdfb9c 100644
--- a/tools/meson.build
+++ b/tools/meson.build
@@ -68,11 +68,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,
@@ -121,3 +116,4 @@ endif
subdir('i915-perf')
subdir('xe-perf')
subdir('null_state_gen')
+subdir('gputop')
\ No newline at end of file
--
2.34.1
^ permalink raw reply related [flat|nested] 8+ messages in thread
* ✓ i915.CI.BAT: success for Add single engine busyness stats in GPUTOP (rev3)
2025-02-14 16:32 [PATCH i-g-t v2] Add single engine busyness stats in GPUTOP Soham Purkait
@ 2025-02-14 22:51 ` Patchwork
2025-02-14 23:06 ` ✓ Xe.CI.BAT: " Patchwork
` (4 subsequent siblings)
5 siblings, 0 replies; 8+ messages in thread
From: Patchwork @ 2025-02-14 22:51 UTC (permalink / raw)
To: Soham Purkait; +Cc: igt-dev
[-- Attachment #1: Type: text/plain, Size: 6571 bytes --]
== Series Details ==
Series: Add single engine busyness stats in GPUTOP (rev3)
URL : https://patchwork.freedesktop.org/series/143086/
State : success
== Summary ==
CI Bug Log - changes from IGT_8230 -> IGTPW_12602
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/index.html
Participating hosts (42 -> 42)
------------------------------
Additional (2): bat-twl-1 fi-pnv-d510
Missing (2): fi-snb-2520m bat-twl-2
Known issues
------------
Here are the changes found in IGTPW_12602 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@debugfs_test@basic-hwmon:
- bat-twl-1: NOTRUN -> [SKIP][1] ([i915#9318])
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/bat-twl-1/igt@debugfs_test@basic-hwmon.html
* igt@dmabuf@all-tests:
- fi-pnv-d510: NOTRUN -> [INCOMPLETE][2] ([i915#12904]) +1 other test incomplete
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/fi-pnv-d510/igt@dmabuf@all-tests.html
* igt@gem_lmem_swapping@parallel-random-engines:
- bat-twl-1: NOTRUN -> [SKIP][3] ([i915#10213] / [i915#11671]) +3 other tests skip
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/bat-twl-1/igt@gem_lmem_swapping@parallel-random-engines.html
* igt@gem_tiled_pread_basic:
- bat-twl-1: NOTRUN -> [SKIP][4] ([i915#11031])
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/bat-twl-1/igt@gem_tiled_pread_basic.html
* igt@i915_pm_rps@basic-api:
- bat-twl-1: NOTRUN -> [SKIP][5] ([i915#10209] / [i915#11681])
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/bat-twl-1/igt@i915_pm_rps@basic-api.html
* igt@i915_selftest@live@workarounds:
- bat-arls-5: [PASS][6] -> [DMESG-FAIL][7] ([i915#12061]) +1 other test dmesg-fail
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8230/bat-arls-5/igt@i915_selftest@live@workarounds.html
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/bat-arls-5/igt@i915_selftest@live@workarounds.html
* igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy:
- bat-twl-1: NOTRUN -> [SKIP][8] ([i915#11030] / [i915#11731]) +1 other test skip
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/bat-twl-1/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy.html
* igt@kms_dsc@dsc-basic:
- bat-twl-1: NOTRUN -> [SKIP][9] ([i915#9886])
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/bat-twl-1/igt@kms_dsc@dsc-basic.html
* igt@kms_force_connector_basic@force-load-detect:
- bat-twl-1: NOTRUN -> [SKIP][10] ([i915#11032])
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/bat-twl-1/igt@kms_force_connector_basic@force-load-detect.html
* igt@kms_psr@psr-primary-mmap-gtt:
- fi-pnv-d510: NOTRUN -> [SKIP][11] +33 other tests skip
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/fi-pnv-d510/igt@kms_psr@psr-primary-mmap-gtt.html
* igt@kms_setmode@basic-clone-single-crtc:
- bat-twl-1: NOTRUN -> [SKIP][12] ([i915#8809])
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/bat-twl-1/igt@kms_setmode@basic-clone-single-crtc.html
* igt@prime_vgem@basic-fence-read:
- bat-twl-1: NOTRUN -> [SKIP][13] ([i915#10212] / [i915#3708])
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/bat-twl-1/igt@prime_vgem@basic-fence-read.html
* igt@prime_vgem@basic-read:
- bat-twl-1: NOTRUN -> [SKIP][14] ([i915#10214] / [i915#3708])
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/bat-twl-1/igt@prime_vgem@basic-read.html
* igt@prime_vgem@basic-write:
- bat-twl-1: NOTRUN -> [SKIP][15] ([i915#10216] / [i915#3708])
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/bat-twl-1/igt@prime_vgem@basic-write.html
#### Possible fixes ####
* igt@i915_selftest@live@workarounds:
- bat-arlh-2: [DMESG-FAIL][16] ([i915#12061]) -> [PASS][17] +1 other test pass
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8230/bat-arlh-2/igt@i915_selftest@live@workarounds.html
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/bat-arlh-2/igt@i915_selftest@live@workarounds.html
- bat-mtlp-6: [DMESG-FAIL][18] ([i915#12061]) -> [PASS][19] +1 other test pass
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8230/bat-mtlp-6/igt@i915_selftest@live@workarounds.html
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/bat-mtlp-6/igt@i915_selftest@live@workarounds.html
[i915#10209]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10209
[i915#10212]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10212
[i915#10213]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10213
[i915#10214]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10214
[i915#10216]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10216
[i915#11030]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11030
[i915#11031]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11031
[i915#11032]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11032
[i915#11671]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11671
[i915#11681]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11681
[i915#11731]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11731
[i915#12061]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12061
[i915#12904]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12904
[i915#3708]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3708
[i915#8809]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8809
[i915#9318]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9318
[i915#9886]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9886
Build changes
-------------
* CI: CI-20190529 -> None
* IGT: IGT_8230 -> IGTPW_12602
* Linux: CI_DRM_16134 -> CI_DRM_16138
CI-20190529: 20190529
CI_DRM_16134: 57457d93f156d8b4bdff8d138127d81b8f97d8c9 @ git://anongit.freedesktop.org/gfx-ci/linux
CI_DRM_16138: cbd747025a1ef985e1ebfa040aa0da4a5d77aacd @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_12602: a2d5e641e6e8d764681c10adbfbe02197d310f97 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
IGT_8230: 8230
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/index.html
[-- Attachment #2: Type: text/html, Size: 7840 bytes --]
^ permalink raw reply [flat|nested] 8+ messages in thread
* ✓ Xe.CI.BAT: success for Add single engine busyness stats in GPUTOP (rev3)
2025-02-14 16:32 [PATCH i-g-t v2] Add single engine busyness stats in GPUTOP Soham Purkait
2025-02-14 22:51 ` ✓ i915.CI.BAT: success for Add single engine busyness stats in GPUTOP (rev3) Patchwork
@ 2025-02-14 23:06 ` Patchwork
2025-02-15 1:41 ` ✗ i915.CI.Full: failure " Patchwork
` (3 subsequent siblings)
5 siblings, 0 replies; 8+ messages in thread
From: Patchwork @ 2025-02-14 23:06 UTC (permalink / raw)
To: Soham Purkait; +Cc: igt-dev
[-- Attachment #1: Type: text/plain, Size: 1072 bytes --]
== Series Details ==
Series: Add single engine busyness stats in GPUTOP (rev3)
URL : https://patchwork.freedesktop.org/series/143086/
State : success
== Summary ==
CI Bug Log - changes from XEIGT_8230_BAT -> XEIGTPW_12602_BAT
====================================================
Summary
-------
**SUCCESS**
No regressions found.
Participating hosts (8 -> 8)
------------------------------
No changes in participating hosts
Changes
-------
No changes found
Build changes
-------------
* IGT: IGT_8230 -> IGTPW_12602
* Linux: xe-2665-57457d93f156d8b4bdff8d138127d81b8f97d8c9 -> xe-2668-200d035cec6632bcb33ad946aa7bfec6309d2ab6
IGTPW_12602: a2d5e641e6e8d764681c10adbfbe02197d310f97 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
IGT_8230: 8230
xe-2665-57457d93f156d8b4bdff8d138127d81b8f97d8c9: 57457d93f156d8b4bdff8d138127d81b8f97d8c9
xe-2668-200d035cec6632bcb33ad946aa7bfec6309d2ab6: 200d035cec6632bcb33ad946aa7bfec6309d2ab6
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/index.html
[-- Attachment #2: Type: text/html, Size: 1631 bytes --]
^ permalink raw reply [flat|nested] 8+ messages in thread
* ✗ i915.CI.Full: failure for Add single engine busyness stats in GPUTOP (rev3)
2025-02-14 16:32 [PATCH i-g-t v2] Add single engine busyness stats in GPUTOP Soham Purkait
2025-02-14 22:51 ` ✓ i915.CI.BAT: success for Add single engine busyness stats in GPUTOP (rev3) Patchwork
2025-02-14 23:06 ` ✓ Xe.CI.BAT: " Patchwork
@ 2025-02-15 1:41 ` Patchwork
2025-02-16 1:02 ` ✗ Xe.CI.Full: " Patchwork
` (2 subsequent siblings)
5 siblings, 0 replies; 8+ messages in thread
From: Patchwork @ 2025-02-15 1:41 UTC (permalink / raw)
To: Soham Purkait; +Cc: igt-dev
[-- Attachment #1: Type: text/plain, Size: 138501 bytes --]
== Series Details ==
Series: Add single engine busyness stats in GPUTOP (rev3)
URL : https://patchwork.freedesktop.org/series/143086/
State : failure
== Summary ==
CI Bug Log - changes from CI_DRM_16138_full -> IGTPW_12602_full
====================================================
Summary
-------
**FAILURE**
Serious unknown changes coming with IGTPW_12602_full absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in IGTPW_12602_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_12602/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_12602_full:
### IGT changes ###
#### Possible regressions ####
* igt@i915_pm_rpm@gem-idle:
- shard-dg2-9: NOTRUN -> [ABORT][1]
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@i915_pm_rpm@gem-idle.html
* igt@i915_pm_rps@reset:
- shard-snb: [PASS][2] -> [INCOMPLETE][3]
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-snb6/igt@i915_pm_rps@reset.html
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-snb4/igt@i915_pm_rps@reset.html
* igt@sysfs_heartbeat_interval@nopreempt@vecs0:
- shard-dg2: [PASS][4] -> [FAIL][5] +1 other test fail
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-dg2-7/igt@sysfs_heartbeat_interval@nopreempt@vecs0.html
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-3/igt@sysfs_heartbeat_interval@nopreempt@vecs0.html
#### Warnings ####
* igt@gem_pxp@hw-rejects-pxp-buffer:
- shard-rkl: [TIMEOUT][6] ([i915#12917] / [i915#12964]) -> [FAIL][7]
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-rkl-5/igt@gem_pxp@hw-rejects-pxp-buffer.html
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-8/igt@gem_pxp@hw-rejects-pxp-buffer.html
* igt@kms_prime@d3hot:
- shard-tglu: [SKIP][8] ([i915#6524]) -> [ABORT][9]
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-tglu-4/igt@kms_prime@d3hot.html
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-2/igt@kms_prime@d3hot.html
New tests
---------
New tests have been introduced between CI_DRM_16138_full and IGTPW_12602_full:
### New IGT tests (1) ###
* igt@kms_cursor_edge_walk@128x128-left-edge@pipe-d-hdmi-a-2:
- Statuses : 1 pass(s)
- Exec time: [3.21] s
Known issues
------------
Here are the changes found in IGTPW_12602_full that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@api_intel_bb@blit-reloc-purge-cache:
- shard-mtlp: NOTRUN -> [SKIP][10] ([i915#8411])
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-4/igt@api_intel_bb@blit-reloc-purge-cache.html
* igt@api_intel_bb@crc32:
- shard-rkl: NOTRUN -> [SKIP][11] ([i915#6230])
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-7/igt@api_intel_bb@crc32.html
- shard-dg1: NOTRUN -> [SKIP][12] ([i915#6230])
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-18/igt@api_intel_bb@crc32.html
- shard-tglu: NOTRUN -> [SKIP][13] ([i915#6230])
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-3/igt@api_intel_bb@crc32.html
* igt@api_intel_bb@object-reloc-keep-cache:
- shard-dg2-9: NOTRUN -> [SKIP][14] ([i915#8411])
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@api_intel_bb@object-reloc-keep-cache.html
* igt@device_reset@cold-reset-bound:
- shard-rkl: NOTRUN -> [SKIP][15] ([i915#11078])
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-1/igt@device_reset@cold-reset-bound.html
* igt@drm_fdinfo@all-busy-check-all:
- shard-dg2-9: NOTRUN -> [SKIP][16] ([i915#8414])
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@drm_fdinfo@all-busy-check-all.html
* igt@drm_fdinfo@busy-check-all@ccs0:
- shard-mtlp: NOTRUN -> [SKIP][17] ([i915#8414]) +7 other tests skip
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-2/igt@drm_fdinfo@busy-check-all@ccs0.html
* igt@drm_fdinfo@busy-check-all@vecs1:
- shard-dg2: NOTRUN -> [SKIP][18] ([i915#8414]) +8 other tests skip
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-11/igt@drm_fdinfo@busy-check-all@vecs1.html
* igt@gem_basic@multigpu-create-close:
- shard-rkl: NOTRUN -> [SKIP][19] ([i915#7697]) +1 other test skip
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-3/igt@gem_basic@multigpu-create-close.html
* igt@gem_busy@semaphore:
- shard-dg2: NOTRUN -> [SKIP][20] ([i915#3936])
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-11/igt@gem_busy@semaphore.html
* igt@gem_caching@writes:
- shard-mtlp: NOTRUN -> [SKIP][21] ([i915#4873]) +1 other test skip
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-1/igt@gem_caching@writes.html
* igt@gem_ccs@block-multicopy-compressed:
- shard-rkl: NOTRUN -> [SKIP][22] ([i915#9323])
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-7/igt@gem_ccs@block-multicopy-compressed.html
* igt@gem_ccs@ctrl-surf-copy-new-ctx:
- shard-tglu: NOTRUN -> [SKIP][23] ([i915#9323])
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-4/igt@gem_ccs@ctrl-surf-copy-new-ctx.html
* igt@gem_ccs@large-ctrl-surf-copy:
- shard-rkl: NOTRUN -> [SKIP][24] ([i915#13008])
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-4/igt@gem_ccs@large-ctrl-surf-copy.html
- shard-dg1: NOTRUN -> [SKIP][25] ([i915#13008])
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-13/igt@gem_ccs@large-ctrl-surf-copy.html
- shard-tglu: NOTRUN -> [SKIP][26] ([i915#13008])
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-6/igt@gem_ccs@large-ctrl-surf-copy.html
- shard-mtlp: NOTRUN -> [SKIP][27] ([i915#13008])
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-6/igt@gem_ccs@large-ctrl-surf-copy.html
* igt@gem_ccs@suspend-resume:
- shard-dg2: [PASS][28] -> [INCOMPLETE][29] ([i915#13356])
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-dg2-11/igt@gem_ccs@suspend-resume.html
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-1/igt@gem_ccs@suspend-resume.html
* igt@gem_ccs@suspend-resume@tile4-compressed-compfmt0-lmem0-lmem0:
- shard-dg2: [PASS][30] -> [INCOMPLETE][31] ([i915#12392] / [i915#13356])
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-dg2-11/igt@gem_ccs@suspend-resume@tile4-compressed-compfmt0-lmem0-lmem0.html
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-1/igt@gem_ccs@suspend-resume@tile4-compressed-compfmt0-lmem0-lmem0.html
* igt@gem_close_race@multigpu-basic-process:
- shard-dg2-9: NOTRUN -> [SKIP][32] ([i915#7697]) +1 other test skip
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@gem_close_race@multigpu-basic-process.html
* igt@gem_close_race@multigpu-basic-threads:
- shard-tglu: NOTRUN -> [SKIP][33] ([i915#7697])
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-3/igt@gem_close_race@multigpu-basic-threads.html
* igt@gem_create@create-ext-cpu-access-sanity-check:
- shard-tglu: NOTRUN -> [SKIP][34] ([i915#6335])
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-4/igt@gem_create@create-ext-cpu-access-sanity-check.html
- shard-mtlp: NOTRUN -> [SKIP][35] ([i915#6335])
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-7/igt@gem_create@create-ext-cpu-access-sanity-check.html
- shard-rkl: NOTRUN -> [SKIP][36] ([i915#6335]) +1 other test skip
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-1/igt@gem_create@create-ext-cpu-access-sanity-check.html
* igt@gem_ctx_isolation@preservation-s3@bcs0:
- shard-glk: NOTRUN -> [INCOMPLETE][37] ([i915#12353]) +1 other test incomplete
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-glk6/igt@gem_ctx_isolation@preservation-s3@bcs0.html
* igt@gem_ctx_persistence@engines-mixed-process:
- shard-snb: NOTRUN -> [SKIP][38] ([i915#1099])
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-snb4/igt@gem_ctx_persistence@engines-mixed-process.html
* igt@gem_ctx_persistence@heartbeat-hostile:
- shard-dg2-9: NOTRUN -> [SKIP][39] ([i915#8555])
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@gem_ctx_persistence@heartbeat-hostile.html
* igt@gem_ctx_sseu@invalid-sseu:
- shard-tglu: NOTRUN -> [SKIP][40] ([i915#280])
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-6/igt@gem_ctx_sseu@invalid-sseu.html
* igt@gem_ctx_sseu@mmap-args:
- shard-rkl: NOTRUN -> [SKIP][41] ([i915#280])
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-2/igt@gem_ctx_sseu@mmap-args.html
* igt@gem_eio@hibernate:
- shard-tglu: NOTRUN -> [ABORT][42] ([i915#7975])
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-4/igt@gem_eio@hibernate.html
* igt@gem_exec_balancer@bonded-dual:
- shard-dg2-9: NOTRUN -> [SKIP][43] ([i915#4771])
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@gem_exec_balancer@bonded-dual.html
* igt@gem_exec_balancer@parallel:
- shard-tglu-1: NOTRUN -> [SKIP][44] ([i915#4525]) +1 other test skip
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-1/igt@gem_exec_balancer@parallel.html
* igt@gem_exec_balancer@parallel-contexts:
- shard-tglu: NOTRUN -> [SKIP][45] ([i915#4525]) +2 other tests skip
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-6/igt@gem_exec_balancer@parallel-contexts.html
* igt@gem_exec_balancer@sliced:
- shard-dg2-9: NOTRUN -> [SKIP][46] ([i915#4812]) +1 other test skip
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@gem_exec_balancer@sliced.html
* igt@gem_exec_big@single:
- shard-tglu: NOTRUN -> [ABORT][47] ([i915#11713])
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-6/igt@gem_exec_big@single.html
* igt@gem_exec_capture@capture-invisible:
- shard-dg2-9: NOTRUN -> [SKIP][48] ([i915#6334]) +2 other tests skip
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@gem_exec_capture@capture-invisible.html
* igt@gem_exec_fence@concurrent:
- shard-dg2: NOTRUN -> [SKIP][49] ([i915#4812])
[49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-10/igt@gem_exec_fence@concurrent.html
* igt@gem_exec_flush@basic-batch-kernel-default-uc:
- shard-dg2: NOTRUN -> [SKIP][50] ([i915#3539] / [i915#4852]) +1 other test skip
[50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-10/igt@gem_exec_flush@basic-batch-kernel-default-uc.html
* igt@gem_exec_flush@basic-wb-ro-before-default:
- shard-dg2-9: NOTRUN -> [SKIP][51] ([i915#3539] / [i915#4852]) +2 other tests skip
[51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@gem_exec_flush@basic-wb-ro-before-default.html
* igt@gem_exec_params@secure-non-master:
- shard-dg2-9: NOTRUN -> [SKIP][52] +11 other tests skip
[52]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@gem_exec_params@secure-non-master.html
* igt@gem_exec_reloc@basic-cpu-read:
- shard-dg2-9: NOTRUN -> [SKIP][53] ([i915#3281]) +3 other tests skip
[53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@gem_exec_reloc@basic-cpu-read.html
* igt@gem_exec_reloc@basic-gtt-cpu:
- shard-rkl: NOTRUN -> [SKIP][54] ([i915#3281]) +10 other tests skip
[54]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-4/igt@gem_exec_reloc@basic-gtt-cpu.html
* igt@gem_exec_reloc@basic-gtt-cpu-active:
- shard-dg2: NOTRUN -> [SKIP][55] ([i915#3281]) +9 other tests skip
[55]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-8/igt@gem_exec_reloc@basic-gtt-cpu-active.html
* igt@gem_exec_reloc@basic-gtt-noreloc:
- shard-mtlp: NOTRUN -> [SKIP][56] ([i915#3281]) +7 other tests skip
[56]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-8/igt@gem_exec_reloc@basic-gtt-noreloc.html
* igt@gem_exec_reloc@basic-wc-gtt-noreloc:
- shard-dg1: NOTRUN -> [SKIP][57] ([i915#3281]) +5 other tests skip
[57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-18/igt@gem_exec_reloc@basic-wc-gtt-noreloc.html
* igt@gem_fence_thrash@bo-write-verify-none:
- shard-dg1: NOTRUN -> [SKIP][58] ([i915#4860]) +1 other test skip
[58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-14/igt@gem_fence_thrash@bo-write-verify-none.html
* igt@gem_fence_thrash@bo-write-verify-y:
- shard-dg2-9: NOTRUN -> [SKIP][59] ([i915#4860])
[59]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@gem_fence_thrash@bo-write-verify-y.html
* igt@gem_fenced_exec_thrash@no-spare-fences-interruptible:
- shard-mtlp: NOTRUN -> [SKIP][60] ([i915#4860]) +1 other test skip
[60]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-4/igt@gem_fenced_exec_thrash@no-spare-fences-interruptible.html
- shard-dg2: NOTRUN -> [SKIP][61] ([i915#4860]) +1 other test skip
[61]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-6/igt@gem_fenced_exec_thrash@no-spare-fences-interruptible.html
* igt@gem_lmem_evict@dontneed-evict-race:
- shard-rkl: NOTRUN -> [SKIP][62] ([i915#4613] / [i915#7582])
[62]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-8/igt@gem_lmem_evict@dontneed-evict-race.html
- shard-tglu: NOTRUN -> [SKIP][63] ([i915#4613] / [i915#7582])
[63]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-2/igt@gem_lmem_evict@dontneed-evict-race.html
* igt@gem_lmem_swapping@basic:
- shard-mtlp: NOTRUN -> [SKIP][64] ([i915#4613]) +2 other tests skip
[64]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-8/igt@gem_lmem_swapping@basic.html
* igt@gem_lmem_swapping@heavy-verify-multi:
- shard-dg2: [PASS][65] -> [ABORT][66] ([i915#13465]) +1 other test abort
[65]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-dg2-10/igt@gem_lmem_swapping@heavy-verify-multi.html
[66]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-8/igt@gem_lmem_swapping@heavy-verify-multi.html
* igt@gem_lmem_swapping@parallel-random-verify-ccs:
- shard-rkl: NOTRUN -> [SKIP][67] ([i915#4613]) +3 other tests skip
[67]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-2/igt@gem_lmem_swapping@parallel-random-verify-ccs.html
* igt@gem_lmem_swapping@random:
- shard-glk: NOTRUN -> [SKIP][68] ([i915#4613]) +7 other tests skip
[68]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-glk7/igt@gem_lmem_swapping@random.html
* igt@gem_lmem_swapping@smem-oom:
- shard-tglu: NOTRUN -> [SKIP][69] ([i915#4613]) +2 other tests skip
[69]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-10/igt@gem_lmem_swapping@smem-oom.html
* igt@gem_lmem_swapping@smem-oom@lmem0:
- shard-dg2: [PASS][70] -> [TIMEOUT][71] ([i915#5493]) +1 other test timeout
[70]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-dg2-3/igt@gem_lmem_swapping@smem-oom@lmem0.html
[71]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-4/igt@gem_lmem_swapping@smem-oom@lmem0.html
* igt@gem_lmem_swapping@verify-random-ccs:
- shard-tglu-1: NOTRUN -> [SKIP][72] ([i915#4613]) +2 other tests skip
[72]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-1/igt@gem_lmem_swapping@verify-random-ccs.html
* igt@gem_media_vme:
- shard-rkl: NOTRUN -> [SKIP][73] ([i915#284])
[73]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-4/igt@gem_media_vme.html
* igt@gem_mmap@short-mmap:
- shard-dg2: NOTRUN -> [SKIP][74] ([i915#4083]) +4 other tests skip
[74]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-4/igt@gem_mmap@short-mmap.html
* igt@gem_mmap_gtt@basic-wc:
- shard-dg1: NOTRUN -> [SKIP][75] ([i915#4077]) +2 other tests skip
[75]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-17/igt@gem_mmap_gtt@basic-wc.html
* igt@gem_mmap_gtt@cpuset-big-copy:
- shard-dg2-9: NOTRUN -> [SKIP][76] ([i915#4077]) +5 other tests skip
[76]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@gem_mmap_gtt@cpuset-big-copy.html
* igt@gem_mmap_gtt@cpuset-big-copy-xy:
- shard-mtlp: NOTRUN -> [SKIP][77] ([i915#4077]) +7 other tests skip
[77]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-3/igt@gem_mmap_gtt@cpuset-big-copy-xy.html
* igt@gem_mmap_wc@copy:
- shard-dg2-9: NOTRUN -> [SKIP][78] ([i915#4083]) +2 other tests skip
[78]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@gem_mmap_wc@copy.html
* igt@gem_mmap_wc@write-read:
- shard-mtlp: NOTRUN -> [SKIP][79] ([i915#4083]) +1 other test skip
[79]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-8/igt@gem_mmap_wc@write-read.html
* igt@gem_partial_pwrite_pread@reads-display:
- shard-mtlp: NOTRUN -> [SKIP][80] ([i915#3282]) +4 other tests skip
[80]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-1/igt@gem_partial_pwrite_pread@reads-display.html
* igt@gem_pread@snoop:
- shard-dg2-9: NOTRUN -> [SKIP][81] ([i915#3282]) +2 other tests skip
[81]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@gem_pread@snoop.html
* igt@gem_pwrite@basic-self:
- shard-rkl: NOTRUN -> [SKIP][82] ([i915#3282]) +7 other tests skip
[82]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-2/igt@gem_pwrite@basic-self.html
* igt@gem_pxp@display-protected-crc:
- shard-dg2: NOTRUN -> [SKIP][83] ([i915#4270]) +1 other test skip
[83]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-6/igt@gem_pxp@display-protected-crc.html
- shard-dg1: NOTRUN -> [SKIP][84] ([i915#4270])
[84]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-19/igt@gem_pxp@display-protected-crc.html
* igt@gem_pxp@fail-invalid-protected-context:
- shard-rkl: [PASS][85] -> [TIMEOUT][86] ([i915#12964])
[85]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-rkl-8/igt@gem_pxp@fail-invalid-protected-context.html
[86]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-3/igt@gem_pxp@fail-invalid-protected-context.html
* igt@gem_pxp@hw-rejects-pxp-context:
- shard-tglu: NOTRUN -> [SKIP][87] ([i915#13398])
[87]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-9/igt@gem_pxp@hw-rejects-pxp-context.html
* igt@gem_pxp@regular-baseline-src-copy-readible:
- shard-rkl: NOTRUN -> [TIMEOUT][88] ([i915#12964]) +1 other test timeout
[88]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-4/igt@gem_pxp@regular-baseline-src-copy-readible.html
* igt@gem_pxp@verify-pxp-key-change-after-suspend-resume:
- shard-rkl: [PASS][89] -> [SKIP][90] ([i915#4270])
[89]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-rkl-8/igt@gem_pxp@verify-pxp-key-change-after-suspend-resume.html
[90]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-5/igt@gem_pxp@verify-pxp-key-change-after-suspend-resume.html
* igt@gem_pxp@verify-pxp-stale-buf-optout-execution:
- shard-dg2-9: NOTRUN -> [SKIP][91] ([i915#4270]) +2 other tests skip
[91]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@gem_pxp@verify-pxp-stale-buf-optout-execution.html
- shard-rkl: NOTRUN -> [TIMEOUT][92] ([i915#12917] / [i915#12964]) +1 other test timeout
[92]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-7/igt@gem_pxp@verify-pxp-stale-buf-optout-execution.html
* igt@gem_readwrite@beyond-eob:
- shard-dg2: NOTRUN -> [SKIP][93] ([i915#3282]) +3 other tests skip
[93]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-11/igt@gem_readwrite@beyond-eob.html
* igt@gem_render_copy@y-tiled-ccs-to-x-tiled:
- shard-dg2-9: NOTRUN -> [SKIP][94] ([i915#5190] / [i915#8428]) +1 other test skip
[94]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@gem_render_copy@y-tiled-ccs-to-x-tiled.html
* igt@gem_render_copy@y-tiled-ccs-to-y-tiled-mc-ccs:
- shard-glk: NOTRUN -> [SKIP][95] +334 other tests skip
[95]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-glk3/igt@gem_render_copy@y-tiled-ccs-to-y-tiled-mc-ccs.html
* igt@gem_render_copy@y-tiled-ccs-to-yf-tiled-mc-ccs:
- shard-mtlp: NOTRUN -> [SKIP][96] ([i915#8428]) +4 other tests skip
[96]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-2/igt@gem_render_copy@y-tiled-ccs-to-yf-tiled-mc-ccs.html
* igt@gem_render_copy@y-tiled-to-vebox-yf-tiled:
- shard-dg2: NOTRUN -> [SKIP][97] ([i915#5190] / [i915#8428]) +4 other tests skip
[97]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-1/igt@gem_render_copy@y-tiled-to-vebox-yf-tiled.html
* igt@gem_set_tiling_vs_blt@tiled-to-tiled:
- shard-dg2-9: NOTRUN -> [SKIP][98] ([i915#4079])
[98]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@gem_set_tiling_vs_blt@tiled-to-tiled.html
* igt@gem_set_tiling_vs_blt@untiled-to-tiled:
- shard-rkl: NOTRUN -> [SKIP][99] ([i915#8411])
[99]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-1/igt@gem_set_tiling_vs_blt@untiled-to-tiled.html
* igt@gem_softpin@evict-snoop-interruptible:
- shard-mtlp: NOTRUN -> [SKIP][100] ([i915#4885])
[100]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-5/igt@gem_softpin@evict-snoop-interruptible.html
* igt@gem_tiled_pread_pwrite:
- shard-dg1: NOTRUN -> [SKIP][101] ([i915#4079])
[101]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-14/igt@gem_tiled_pread_pwrite.html
- shard-mtlp: NOTRUN -> [SKIP][102] ([i915#4079])
[102]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-3/igt@gem_tiled_pread_pwrite.html
- shard-dg2: NOTRUN -> [SKIP][103] ([i915#4079])
[103]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-8/igt@gem_tiled_pread_pwrite.html
* igt@gem_unfence_active_buffers:
- shard-dg2: NOTRUN -> [SKIP][104] ([i915#4879])
[104]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-3/igt@gem_unfence_active_buffers.html
* igt@gem_userptr_blits@coherency-unsync:
- shard-dg2-9: NOTRUN -> [SKIP][105] ([i915#3297]) +1 other test skip
[105]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@gem_userptr_blits@coherency-unsync.html
- shard-dg1: NOTRUN -> [SKIP][106] ([i915#3297])
[106]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-15/igt@gem_userptr_blits@coherency-unsync.html
* igt@gem_userptr_blits@forbidden-operations:
- shard-dg2-9: NOTRUN -> [SKIP][107] ([i915#3282] / [i915#3297])
[107]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@gem_userptr_blits@forbidden-operations.html
* igt@gem_userptr_blits@invalid-mmap-offset-unsync:
- shard-dg2: NOTRUN -> [SKIP][108] ([i915#3297])
[108]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-2/igt@gem_userptr_blits@invalid-mmap-offset-unsync.html
* igt@gem_userptr_blits@readonly-pwrite-unsync:
- shard-tglu: NOTRUN -> [SKIP][109] ([i915#3297]) +1 other test skip
[109]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-7/igt@gem_userptr_blits@readonly-pwrite-unsync.html
* igt@gem_userptr_blits@unsync-unmap-after-close:
- shard-mtlp: NOTRUN -> [SKIP][110] ([i915#3297]) +1 other test skip
[110]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-8/igt@gem_userptr_blits@unsync-unmap-after-close.html
* igt@gem_userptr_blits@unsync-unmap-cycles:
- shard-rkl: NOTRUN -> [SKIP][111] ([i915#3297]) +1 other test skip
[111]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-4/igt@gem_userptr_blits@unsync-unmap-cycles.html
* igt@gem_workarounds@reset-fd:
- shard-mtlp: [PASS][112] -> [ABORT][113] ([i915#13193]) +2 other tests abort
[112]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-mtlp-2/igt@gem_workarounds@reset-fd.html
[113]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-7/igt@gem_workarounds@reset-fd.html
* igt@gen3_render_tiledy_blits:
- shard-mtlp: NOTRUN -> [SKIP][114] +13 other tests skip
[114]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-1/igt@gen3_render_tiledy_blits.html
* igt@gen9_exec_parse@basic-rejected:
- shard-mtlp: NOTRUN -> [SKIP][115] ([i915#2856]) +1 other test skip
[115]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-5/igt@gen9_exec_parse@basic-rejected.html
- shard-dg1: NOTRUN -> [SKIP][116] ([i915#2527])
[116]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-18/igt@gen9_exec_parse@basic-rejected.html
* igt@gen9_exec_parse@batch-invalid-length:
- shard-tglu-1: NOTRUN -> [SKIP][117] ([i915#2527] / [i915#2856]) +2 other tests skip
[117]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-1/igt@gen9_exec_parse@batch-invalid-length.html
* igt@gen9_exec_parse@batch-without-end:
- shard-dg2: NOTRUN -> [SKIP][118] ([i915#2856]) +2 other tests skip
[118]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-11/igt@gen9_exec_parse@batch-without-end.html
* igt@gen9_exec_parse@bb-oversize:
- shard-rkl: NOTRUN -> [SKIP][119] ([i915#2527]) +1 other test skip
[119]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-8/igt@gen9_exec_parse@bb-oversize.html
* igt@gen9_exec_parse@secure-batches:
- shard-dg2-9: NOTRUN -> [SKIP][120] ([i915#2856]) +1 other test skip
[120]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@gen9_exec_parse@secure-batches.html
* igt@gen9_exec_parse@unaligned-jump:
- shard-tglu: NOTRUN -> [SKIP][121] ([i915#2527] / [i915#2856]) +2 other tests skip
[121]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-5/igt@gen9_exec_parse@unaligned-jump.html
* igt@i915_module_load@reload-with-fault-injection:
- shard-dg1: [PASS][122] -> [ABORT][123] ([i915#9820])
[122]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-dg1-12/igt@i915_module_load@reload-with-fault-injection.html
[123]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-13/igt@i915_module_load@reload-with-fault-injection.html
- shard-glk: NOTRUN -> [ABORT][124] ([i915#9820])
[124]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-glk7/igt@i915_module_load@reload-with-fault-injection.html
- shard-dg2: NOTRUN -> [ABORT][125] ([i915#10887] / [i915#9820])
[125]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-7/igt@i915_module_load@reload-with-fault-injection.html
* igt@i915_pm_freq_api@freq-reset:
- shard-tglu: NOTRUN -> [SKIP][126] ([i915#8399])
[126]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-4/igt@i915_pm_freq_api@freq-reset.html
* igt@i915_pm_freq_api@freq-reset-multiple:
- shard-rkl: NOTRUN -> [SKIP][127] ([i915#8399])
[127]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-2/igt@i915_pm_freq_api@freq-reset-multiple.html
- shard-tglu-1: NOTRUN -> [SKIP][128] ([i915#8399])
[128]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-1/igt@i915_pm_freq_api@freq-reset-multiple.html
* igt@i915_pm_freq_api@freq-suspend@gt0:
- shard-dg2: [PASS][129] -> [INCOMPLETE][130] ([i915#12455]) +1 other test incomplete
[129]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-dg2-7/igt@i915_pm_freq_api@freq-suspend@gt0.html
[130]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-5/igt@i915_pm_freq_api@freq-suspend@gt0.html
* igt@i915_pm_rc6_residency@rc6-idle:
- shard-tglu: NOTRUN -> [WARN][131] ([i915#2681]) +6 other tests warn
[131]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-5/igt@i915_pm_rc6_residency@rc6-idle.html
- shard-dg1: NOTRUN -> [FAIL][132] ([i915#3591])
[132]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-17/igt@i915_pm_rc6_residency@rc6-idle.html
* igt@i915_pm_rc6_residency@rc6-idle@gt0-vecs0:
- shard-dg1: NOTRUN -> [FAIL][133] ([i915#12739] / [i915#3591])
[133]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-17/igt@i915_pm_rc6_residency@rc6-idle@gt0-vecs0.html
* igt@i915_pm_rpm@system-suspend:
- shard-glk: [PASS][134] -> [INCOMPLETE][135] ([i915#12797])
[134]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-glk4/igt@i915_pm_rpm@system-suspend.html
[135]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-glk9/igt@i915_pm_rpm@system-suspend.html
* igt@i915_pm_rps@engine-order:
- shard-glk: NOTRUN -> [FAIL][136] ([i915#13547])
[136]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-glk7/igt@i915_pm_rps@engine-order.html
* igt@i915_pm_rps@min-max-config-idle:
- shard-dg2-9: NOTRUN -> [SKIP][137] ([i915#11681] / [i915#6621])
[137]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@i915_pm_rps@min-max-config-idle.html
* igt@i915_pm_rps@min-max-config-loaded:
- shard-dg2: NOTRUN -> [SKIP][138] ([i915#11681] / [i915#6621]) +1 other test skip
[138]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-2/igt@i915_pm_rps@min-max-config-loaded.html
* igt@i915_pm_rps@thresholds-park:
- shard-dg2: NOTRUN -> [SKIP][139] ([i915#11681]) +1 other test skip
[139]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-10/igt@i915_pm_rps@thresholds-park.html
- shard-dg1: NOTRUN -> [SKIP][140] ([i915#11681])
[140]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-17/igt@i915_pm_rps@thresholds-park.html
- shard-mtlp: NOTRUN -> [SKIP][141] ([i915#11681])
[141]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-8/igt@i915_pm_rps@thresholds-park.html
* igt@i915_pm_sseu@full-enable:
- shard-rkl: NOTRUN -> [SKIP][142] ([i915#4387])
[142]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-2/igt@i915_pm_sseu@full-enable.html
* igt@i915_power@sanity:
- shard-mtlp: [PASS][143] -> [SKIP][144] ([i915#7984])
[143]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-mtlp-2/igt@i915_power@sanity.html
[144]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-2/igt@i915_power@sanity.html
* igt@i915_query@hwconfig_table:
- shard-tglu: NOTRUN -> [SKIP][145] ([i915#6245])
[145]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-3/igt@i915_query@hwconfig_table.html
* igt@i915_selftest@mock:
- shard-mtlp: NOTRUN -> [DMESG-WARN][146] ([i915#9311]) +1 other test dmesg-warn
[146]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-7/igt@i915_selftest@mock.html
* igt@i915_suspend@debugfs-reader:
- shard-rkl: [PASS][147] -> [DMESG-FAIL][148] ([i915#12964]) +2 other tests dmesg-fail
[147]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-rkl-8/igt@i915_suspend@debugfs-reader.html
[148]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-4/igt@i915_suspend@debugfs-reader.html
- shard-glk: NOTRUN -> [INCOMPLETE][149] ([i915#4817])
[149]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-glk4/igt@i915_suspend@debugfs-reader.html
* igt@kms_addfb_basic@addfb25-x-tiled-mismatch-legacy:
- shard-dg2-9: NOTRUN -> [SKIP][150] ([i915#4212])
[150]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@kms_addfb_basic@addfb25-x-tiled-mismatch-legacy.html
* igt@kms_addfb_basic@addfb25-y-tiled-small-legacy:
- shard-mtlp: NOTRUN -> [SKIP][151] ([i915#5190])
[151]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-3/igt@kms_addfb_basic@addfb25-y-tiled-small-legacy.html
* igt@kms_addfb_basic@clobberred-modifier:
- shard-dg2: NOTRUN -> [SKIP][152] ([i915#4212]) +1 other test skip
[152]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-4/igt@kms_addfb_basic@clobberred-modifier.html
* igt@kms_addfb_basic@invalid-smem-bo-on-discrete:
- shard-tglu-1: NOTRUN -> [SKIP][153] ([i915#12454] / [i915#12712])
[153]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-1/igt@kms_addfb_basic@invalid-smem-bo-on-discrete.html
* igt@kms_async_flips@async-flip-with-page-flip-events:
- shard-dg1: [PASS][154] -> [DMESG-WARN][155] ([i915#4423])
[154]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-dg1-17/igt@kms_async_flips@async-flip-with-page-flip-events.html
[155]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-18/igt@kms_async_flips@async-flip-with-page-flip-events.html
* igt@kms_async_flips@async-flip-with-page-flip-events-atomic@pipe-c-hdmi-a-1-4-rc-ccs-cc:
- shard-dg2: NOTRUN -> [SKIP][156] ([i915#8709]) +15 other tests skip
[156]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-8/igt@kms_async_flips@async-flip-with-page-flip-events-atomic@pipe-c-hdmi-a-1-4-rc-ccs-cc.html
* igt@kms_async_flips@async-flip-with-page-flip-events@pipe-a-edp-1-4-rc-ccs-cc:
- shard-mtlp: NOTRUN -> [SKIP][157] ([i915#8709]) +7 other tests skip
[157]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-5/igt@kms_async_flips@async-flip-with-page-flip-events@pipe-a-edp-1-4-rc-ccs-cc.html
* igt@kms_async_flips@async-flip-with-page-flip-events@pipe-c-hdmi-a-2-y-rc-ccs-cc:
- shard-rkl: NOTRUN -> [SKIP][158] ([i915#8709])
[158]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-8/igt@kms_async_flips@async-flip-with-page-flip-events@pipe-c-hdmi-a-2-y-rc-ccs-cc.html
* igt@kms_async_flips@invalid-async-flip:
- shard-dg2: NOTRUN -> [SKIP][159] ([i915#12967] / [i915#6228])
[159]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-11/igt@kms_async_flips@invalid-async-flip.html
* igt@kms_async_flips@invalid-async-flip-atomic:
- shard-dg2: NOTRUN -> [SKIP][160] ([i915#12967])
[160]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-10/igt@kms_async_flips@invalid-async-flip-atomic.html
* igt@kms_atomic_transition@plane-all-modeset-transition-fencing:
- shard-rkl: [PASS][161] -> [FAIL][162] ([i915#11808])
[161]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-rkl-2/igt@kms_atomic_transition@plane-all-modeset-transition-fencing.html
[162]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-1/igt@kms_atomic_transition@plane-all-modeset-transition-fencing.html
* igt@kms_atomic_transition@plane-all-modeset-transition-fencing@pipe-a-hdmi-a-2:
- shard-rkl: NOTRUN -> [FAIL][163] ([i915#11808])
[163]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-1/igt@kms_atomic_transition@plane-all-modeset-transition-fencing@pipe-a-hdmi-a-2.html
* igt@kms_atomic_transition@plane-all-modeset-transition@pipe-a-hdmi-a-1:
- shard-snb: NOTRUN -> [FAIL][164] ([i915#5956]) +1 other test fail
[164]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-snb7/igt@kms_atomic_transition@plane-all-modeset-transition@pipe-a-hdmi-a-1.html
- shard-tglu: NOTRUN -> [FAIL][165] ([i915#11808]) +1 other test fail
[165]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-2/igt@kms_atomic_transition@plane-all-modeset-transition@pipe-a-hdmi-a-1.html
* igt@kms_big_fb@4-tiled-16bpp-rotate-180:
- shard-tglu-1: NOTRUN -> [SKIP][166] ([i915#5286]) +4 other tests skip
[166]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-1/igt@kms_big_fb@4-tiled-16bpp-rotate-180.html
* igt@kms_big_fb@4-tiled-32bpp-rotate-0:
- shard-rkl: NOTRUN -> [SKIP][167] ([i915#5286]) +2 other tests skip
[167]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-2/igt@kms_big_fb@4-tiled-32bpp-rotate-0.html
* igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-0:
- shard-tglu: NOTRUN -> [SKIP][168] ([i915#5286]) +4 other tests skip
[168]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-7/igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-0.html
* igt@kms_big_fb@y-tiled-64bpp-rotate-270:
- shard-rkl: NOTRUN -> [SKIP][169] ([i915#3638]) +5 other tests skip
[169]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-7/igt@kms_big_fb@y-tiled-64bpp-rotate-270.html
- shard-dg1: NOTRUN -> [SKIP][170] ([i915#3638]) +1 other test skip
[170]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-18/igt@kms_big_fb@y-tiled-64bpp-rotate-270.html
* igt@kms_big_fb@y-tiled-8bpp-rotate-180:
- shard-dg2-9: NOTRUN -> [SKIP][171] ([i915#4538] / [i915#5190]) +5 other tests skip
[171]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@kms_big_fb@y-tiled-8bpp-rotate-180.html
* igt@kms_big_fb@y-tiled-8bpp-rotate-270:
- shard-dg2: NOTRUN -> [SKIP][172] ([i915#4538] / [i915#5190]) +10 other tests skip
[172]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-8/igt@kms_big_fb@y-tiled-8bpp-rotate-270.html
* igt@kms_big_fb@y-tiled-addfb-size-offset-overflow:
- shard-mtlp: NOTRUN -> [SKIP][173] ([i915#6187])
[173]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-1/igt@kms_big_fb@y-tiled-addfb-size-offset-overflow.html
* igt@kms_big_fb@yf-tiled-addfb:
- shard-dg2-9: NOTRUN -> [SKIP][174] ([i915#5190]) +1 other test skip
[174]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@kms_big_fb@yf-tiled-addfb.html
* igt@kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-0-async-flip:
- shard-dg1: NOTRUN -> [SKIP][175] ([i915#4538]) +1 other test skip
[175]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-17/igt@kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-0-async-flip.html
* igt@kms_ccs@bad-pixel-format-y-tiled-ccs@pipe-d-hdmi-a-1:
- shard-dg2: NOTRUN -> [SKIP][176] ([i915#10307] / [i915#10434] / [i915#6095]) +3 other tests skip
[176]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-8/igt@kms_ccs@bad-pixel-format-y-tiled-ccs@pipe-d-hdmi-a-1.html
* igt@kms_ccs@bad-rotation-90-4-tiled-bmg-ccs:
- shard-tglu: NOTRUN -> [SKIP][177] ([i915#12313]) +3 other tests skip
[177]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-5/igt@kms_ccs@bad-rotation-90-4-tiled-bmg-ccs.html
- shard-mtlp: NOTRUN -> [SKIP][178] ([i915#12313]) +2 other tests skip
[178]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-1/igt@kms_ccs@bad-rotation-90-4-tiled-bmg-ccs.html
* igt@kms_ccs@bad-rotation-90-4-tiled-lnl-ccs:
- shard-rkl: NOTRUN -> [SKIP][179] ([i915#12313]) +5 other tests skip
[179]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-1/igt@kms_ccs@bad-rotation-90-4-tiled-lnl-ccs.html
* igt@kms_ccs@bad-rotation-90-y-tiled-gen12-rc-ccs-cc@pipe-b-edp-1:
- shard-mtlp: NOTRUN -> [SKIP][180] ([i915#6095]) +54 other tests skip
[180]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-8/igt@kms_ccs@bad-rotation-90-y-tiled-gen12-rc-ccs-cc@pipe-b-edp-1.html
* igt@kms_ccs@ccs-on-another-bo-4-tiled-mtl-mc-ccs@pipe-a-hdmi-a-2:
- shard-dg2-9: NOTRUN -> [SKIP][181] ([i915#10307] / [i915#6095]) +44 other tests skip
[181]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@kms_ccs@ccs-on-another-bo-4-tiled-mtl-mc-ccs@pipe-a-hdmi-a-2.html
* igt@kms_ccs@crc-primary-basic-4-tiled-mtl-mc-ccs:
- shard-tglu-1: NOTRUN -> [SKIP][182] ([i915#6095]) +54 other tests skip
[182]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-1/igt@kms_ccs@crc-primary-basic-4-tiled-mtl-mc-ccs.html
* igt@kms_ccs@crc-primary-basic-y-tiled-gen12-rc-ccs@pipe-a-dp-3:
- shard-dg2: NOTRUN -> [SKIP][183] ([i915#10307] / [i915#6095]) +135 other tests skip
[183]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-11/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-lnl-ccs:
- shard-dg2: NOTRUN -> [SKIP][184] ([i915#12313]) +2 other tests skip
[184]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-5/igt@kms_ccs@crc-primary-rotation-180-4-tiled-lnl-ccs.html
- shard-dg1: NOTRUN -> [SKIP][185] ([i915#12313]) +1 other test skip
[185]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-12/igt@kms_ccs@crc-primary-rotation-180-4-tiled-lnl-ccs.html
* igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs:
- shard-tglu: NOTRUN -> [SKIP][186] ([i915#12805])
[186]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-9/igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs.html
* igt@kms_ccs@crc-primary-suspend-4-tiled-mtl-mc-ccs:
- shard-dg2: NOTRUN -> [SKIP][187] ([i915#6095]) +12 other tests skip
[187]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-8/igt@kms_ccs@crc-primary-suspend-4-tiled-mtl-mc-ccs.html
* igt@kms_ccs@crc-primary-suspend-y-tiled-gen12-rc-ccs@pipe-a-hdmi-a-2:
- shard-rkl: NOTRUN -> [DMESG-FAIL][188] ([i915#12964]) +1 other test dmesg-fail
[188]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-3/igt@kms_ccs@crc-primary-suspend-y-tiled-gen12-rc-ccs@pipe-a-hdmi-a-2.html
* igt@kms_ccs@crc-primary-suspend-yf-tiled-ccs@pipe-a-hdmi-a-1:
- shard-glk: NOTRUN -> [INCOMPLETE][189] ([i915#12796]) +3 other tests incomplete
[189]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-glk9/igt@kms_ccs@crc-primary-suspend-yf-tiled-ccs@pipe-a-hdmi-a-1.html
* igt@kms_ccs@crc-primary-suspend-yf-tiled-ccs@pipe-a-hdmi-a-2:
- shard-dg2-9: NOTRUN -> [SKIP][190] ([i915#6095]) +9 other tests skip
[190]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@kms_ccs@crc-primary-suspend-yf-tiled-ccs@pipe-a-hdmi-a-2.html
* igt@kms_ccs@crc-sprite-planes-basic-yf-tiled-ccs@pipe-d-hdmi-a-1:
- shard-tglu: NOTRUN -> [SKIP][191] ([i915#6095]) +59 other tests skip
[191]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-9/igt@kms_ccs@crc-sprite-planes-basic-yf-tiled-ccs@pipe-d-hdmi-a-1.html
* igt@kms_ccs@random-ccs-data-4-tiled-bmg-ccs:
- shard-dg2-9: NOTRUN -> [SKIP][192] ([i915#12313])
[192]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@kms_ccs@random-ccs-data-4-tiled-bmg-ccs.html
* igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs@pipe-a-hdmi-a-3:
- shard-dg1: NOTRUN -> [SKIP][193] ([i915#6095]) +123 other tests skip
[193]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-13/igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs@pipe-a-hdmi-a-3.html
* igt@kms_ccs@random-ccs-data-y-tiled-ccs@pipe-b-hdmi-a-1:
- shard-rkl: NOTRUN -> [SKIP][194] ([i915#6095]) +106 other tests skip
[194]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-2/igt@kms_ccs@random-ccs-data-y-tiled-ccs@pipe-b-hdmi-a-1.html
* igt@kms_cdclk@mode-transition:
- shard-mtlp: NOTRUN -> [SKIP][195] ([i915#7213] / [i915#9010]) +4 other tests skip
[195]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-4/igt@kms_cdclk@mode-transition.html
- shard-dg2-9: NOTRUN -> [SKIP][196] ([i915#11616] / [i915#7213])
[196]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@kms_cdclk@mode-transition.html
- shard-rkl: NOTRUN -> [SKIP][197] ([i915#3742])
[197]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-7/igt@kms_cdclk@mode-transition.html
- shard-dg1: NOTRUN -> [SKIP][198] ([i915#3742])
[198]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-13/igt@kms_cdclk@mode-transition.html
- shard-tglu: NOTRUN -> [SKIP][199] ([i915#3742])
[199]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-5/igt@kms_cdclk@mode-transition.html
* igt@kms_cdclk@mode-transition-all-outputs:
- shard-tglu-1: NOTRUN -> [SKIP][200] ([i915#3742])
[200]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-1/igt@kms_cdclk@mode-transition-all-outputs.html
* igt@kms_cdclk@mode-transition@pipe-b-hdmi-a-2:
- shard-dg2-9: NOTRUN -> [SKIP][201] ([i915#7213]) +3 other tests skip
[201]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@kms_cdclk@mode-transition@pipe-b-hdmi-a-2.html
* igt@kms_chamelium_audio@hdmi-audio-edid:
- shard-tglu-1: NOTRUN -> [SKIP][202] ([i915#11151] / [i915#7828]) +6 other tests skip
[202]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-1/igt@kms_chamelium_audio@hdmi-audio-edid.html
* igt@kms_chamelium_color@ctm-0-25:
- shard-dg2: NOTRUN -> [SKIP][203] +6 other tests skip
[203]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-11/igt@kms_chamelium_color@ctm-0-25.html
* igt@kms_chamelium_edid@dp-mode-timings:
- shard-dg1: NOTRUN -> [SKIP][204] ([i915#11151] / [i915#4423] / [i915#7828])
[204]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-12/igt@kms_chamelium_edid@dp-mode-timings.html
* igt@kms_chamelium_edid@hdmi-edid-stress-resolution-4k:
- shard-tglu: NOTRUN -> [SKIP][205] ([i915#11151] / [i915#7828]) +12 other tests skip
[205]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-6/igt@kms_chamelium_edid@hdmi-edid-stress-resolution-4k.html
* igt@kms_chamelium_frames@dp-frame-dump:
- shard-dg2-9: NOTRUN -> [SKIP][206] ([i915#11151] / [i915#7828]) +4 other tests skip
[206]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@kms_chamelium_frames@dp-frame-dump.html
* igt@kms_chamelium_frames@hdmi-cmp-planar-formats:
- shard-dg2: NOTRUN -> [SKIP][207] ([i915#11151] / [i915#7828]) +7 other tests skip
[207]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-10/igt@kms_chamelium_frames@hdmi-cmp-planar-formats.html
* igt@kms_chamelium_hpd@dp-hpd:
- shard-rkl: NOTRUN -> [SKIP][208] ([i915#11151] / [i915#7828]) +10 other tests skip
[208]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-8/igt@kms_chamelium_hpd@dp-hpd.html
* igt@kms_chamelium_hpd@hdmi-hpd-storm-disable:
- shard-dg1: NOTRUN -> [SKIP][209] ([i915#11151] / [i915#7828]) +2 other tests skip
[209]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-12/igt@kms_chamelium_hpd@hdmi-hpd-storm-disable.html
* igt@kms_chamelium_hpd@vga-hpd-enable-disable-mode:
- shard-mtlp: NOTRUN -> [SKIP][210] ([i915#11151] / [i915#7828]) +6 other tests skip
[210]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-7/igt@kms_chamelium_hpd@vga-hpd-enable-disable-mode.html
* igt@kms_content_protection@atomic-dpms:
- shard-tglu: NOTRUN -> [SKIP][211] ([i915#6944] / [i915#7116] / [i915#7118] / [i915#9424])
[211]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-4/igt@kms_content_protection@atomic-dpms.html
- shard-dg2: NOTRUN -> [SKIP][212] ([i915#7118] / [i915#9424])
[212]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-3/igt@kms_content_protection@atomic-dpms.html
* igt@kms_content_protection@atomic@pipe-a-dp-4:
- shard-dg2: NOTRUN -> [FAIL][213] ([i915#7173]) +1 other test fail
[213]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-10/igt@kms_content_protection@atomic@pipe-a-dp-4.html
* igt@kms_content_protection@dp-mst-type-0:
- shard-tglu: NOTRUN -> [SKIP][214] ([i915#3116] / [i915#3299])
[214]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-6/igt@kms_content_protection@dp-mst-type-0.html
* igt@kms_content_protection@dp-mst-type-1:
- shard-dg2-9: NOTRUN -> [SKIP][215] ([i915#3299])
[215]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@kms_content_protection@dp-mst-type-1.html
* igt@kms_content_protection@legacy:
- shard-mtlp: NOTRUN -> [SKIP][216] ([i915#6944] / [i915#9424])
[216]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-8/igt@kms_content_protection@legacy.html
* igt@kms_content_protection@mei-interface:
- shard-rkl: NOTRUN -> [SKIP][217] ([i915#9424])
[217]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-2/igt@kms_content_protection@mei-interface.html
- shard-tglu-1: NOTRUN -> [SKIP][218] ([i915#6944] / [i915#9424]) +1 other test skip
[218]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-1/igt@kms_content_protection@mei-interface.html
* igt@kms_content_protection@type1:
- shard-rkl: NOTRUN -> [SKIP][219] ([i915#7118] / [i915#9424])
[219]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-8/igt@kms_content_protection@type1.html
* igt@kms_cursor_crc@cursor-offscreen-32x32:
- shard-tglu: NOTRUN -> [SKIP][220] ([i915#3555]) +5 other tests skip
[220]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-5/igt@kms_cursor_crc@cursor-offscreen-32x32.html
* igt@kms_cursor_crc@cursor-offscreen-512x512:
- shard-dg2-9: NOTRUN -> [SKIP][221] ([i915#13049])
[221]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@kms_cursor_crc@cursor-offscreen-512x512.html
* igt@kms_cursor_crc@cursor-onscreen-128x42:
- shard-rkl: [PASS][222] -> [FAIL][223] ([i915#13566]) +4 other tests fail
[222]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-rkl-5/igt@kms_cursor_crc@cursor-onscreen-128x42.html
[223]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-4/igt@kms_cursor_crc@cursor-onscreen-128x42.html
* igt@kms_cursor_crc@cursor-onscreen-128x42@pipe-a-hdmi-a-1:
- shard-tglu: NOTRUN -> [FAIL][224] ([i915#13566]) +1 other test fail
[224]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-6/igt@kms_cursor_crc@cursor-onscreen-128x42@pipe-a-hdmi-a-1.html
* igt@kms_cursor_crc@cursor-onscreen-512x512:
- shard-tglu-1: NOTRUN -> [SKIP][225] ([i915#13049]) +2 other tests skip
[225]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-1/igt@kms_cursor_crc@cursor-onscreen-512x512.html
* igt@kms_cursor_crc@cursor-onscreen-max-size:
- shard-dg1: NOTRUN -> [SKIP][226] ([i915#3555]) +1 other test skip
[226]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-17/igt@kms_cursor_crc@cursor-onscreen-max-size.html
* igt@kms_cursor_crc@cursor-random-128x42@pipe-a-hdmi-a-2:
- shard-rkl: NOTRUN -> [FAIL][227] ([i915#13566]) +3 other tests fail
[227]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-8/igt@kms_cursor_crc@cursor-random-128x42@pipe-a-hdmi-a-2.html
* igt@kms_cursor_crc@cursor-random-512x512:
- shard-dg2: NOTRUN -> [SKIP][228] ([i915#13049]) +2 other tests skip
[228]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-6/igt@kms_cursor_crc@cursor-random-512x512.html
- shard-rkl: NOTRUN -> [SKIP][229] ([i915#13049]) +3 other tests skip
[229]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-4/igt@kms_cursor_crc@cursor-random-512x512.html
- shard-dg1: NOTRUN -> [SKIP][230] ([i915#13049]) +1 other test skip
[230]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-19/igt@kms_cursor_crc@cursor-random-512x512.html
* igt@kms_cursor_crc@cursor-rapid-movement-32x32:
- shard-dg2: NOTRUN -> [SKIP][231] ([i915#3555]) +6 other tests skip
[231]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-10/igt@kms_cursor_crc@cursor-rapid-movement-32x32.html
* igt@kms_cursor_crc@cursor-sliding-128x42:
- shard-mtlp: NOTRUN -> [SKIP][232] ([i915#8814]) +1 other test skip
[232]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-2/igt@kms_cursor_crc@cursor-sliding-128x42.html
* igt@kms_cursor_crc@cursor-sliding-256x85:
- shard-tglu: [PASS][233] -> [FAIL][234] ([i915#13566]) +3 other tests fail
[233]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-tglu-9/igt@kms_cursor_crc@cursor-sliding-256x85.html
[234]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-10/igt@kms_cursor_crc@cursor-sliding-256x85.html
* igt@kms_cursor_crc@cursor-sliding-32x32:
- shard-mtlp: NOTRUN -> [SKIP][235] ([i915#3555] / [i915#8814]) +2 other tests skip
[235]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-6/igt@kms_cursor_crc@cursor-sliding-32x32.html
* igt@kms_cursor_crc@cursor-sliding-512x170:
- shard-mtlp: NOTRUN -> [SKIP][236] ([i915#13049]) +1 other test skip
[236]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-1/igt@kms_cursor_crc@cursor-sliding-512x170.html
* igt@kms_cursor_crc@cursor-sliding-512x512:
- shard-tglu: NOTRUN -> [SKIP][237] ([i915#13049]) +3 other tests skip
[237]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-10/igt@kms_cursor_crc@cursor-sliding-512x512.html
* igt@kms_cursor_crc@cursor-sliding-max-size:
- shard-dg2-9: NOTRUN -> [SKIP][238] ([i915#3555]) +1 other test skip
[238]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@kms_cursor_crc@cursor-sliding-max-size.html
* igt@kms_cursor_edge_walk@128x128-right-edge@pipe-a-hdmi-a-2:
- shard-rkl: NOTRUN -> [DMESG-WARN][239] ([i915#12964]) +10 other tests dmesg-warn
[239]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-5/igt@kms_cursor_edge_walk@128x128-right-edge@pipe-a-hdmi-a-2.html
* igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic:
- shard-dg2-9: NOTRUN -> [SKIP][240] ([i915#4103] / [i915#4213])
[240]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic.html
* igt@kms_cursor_legacy@basic-busy-flip-before-cursor-varying-size:
- shard-tglu: NOTRUN -> [SKIP][241] ([i915#4103]) +1 other test skip
[241]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-2/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-varying-size.html
* igt@kms_cursor_legacy@cursorb-vs-flipa-legacy:
- shard-rkl: NOTRUN -> [SKIP][242] +17 other tests skip
[242]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-4/igt@kms_cursor_legacy@cursorb-vs-flipa-legacy.html
- shard-mtlp: NOTRUN -> [SKIP][243] ([i915#9809]) +2 other tests skip
[243]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-3/igt@kms_cursor_legacy@cursorb-vs-flipa-legacy.html
* igt@kms_cursor_legacy@cursorb-vs-flipa-toggle:
- shard-dg2-9: NOTRUN -> [SKIP][244] ([i915#13046] / [i915#5354]) +1 other test skip
[244]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@kms_cursor_legacy@cursorb-vs-flipa-toggle.html
* igt@kms_cursor_legacy@cursorb-vs-flipb-atomic:
- shard-dg2: NOTRUN -> [SKIP][245] ([i915#13046] / [i915#5354]) +4 other tests skip
[245]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-2/igt@kms_cursor_legacy@cursorb-vs-flipb-atomic.html
* igt@kms_cursor_legacy@short-busy-flip-before-cursor-atomic-transitions:
- shard-tglu-1: NOTRUN -> [SKIP][246] ([i915#4103])
[246]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-1/igt@kms_cursor_legacy@short-busy-flip-before-cursor-atomic-transitions.html
* igt@kms_cursor_legacy@short-busy-flip-before-cursor-atomic-transitions-varying-size:
- shard-dg2: NOTRUN -> [SKIP][247] ([i915#4103] / [i915#4213]) +1 other test skip
[247]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-4/igt@kms_cursor_legacy@short-busy-flip-before-cursor-atomic-transitions-varying-size.html
* igt@kms_dirtyfb@drrs-dirtyfb-ioctl:
- shard-rkl: NOTRUN -> [SKIP][248] ([i915#9723])
[248]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-1/igt@kms_dirtyfb@drrs-dirtyfb-ioctl.html
* igt@kms_display_modes@extended-mode-basic:
- shard-rkl: NOTRUN -> [SKIP][249] ([i915#13691])
[249]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-1/igt@kms_display_modes@extended-mode-basic.html
* igt@kms_display_modes@mst-extended-mode-negative:
- shard-rkl: NOTRUN -> [SKIP][250] ([i915#8588])
[250]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-3/igt@kms_display_modes@mst-extended-mode-negative.html
- shard-dg1: NOTRUN -> [SKIP][251] ([i915#8588])
[251]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-15/igt@kms_display_modes@mst-extended-mode-negative.html
- shard-tglu: NOTRUN -> [SKIP][252] ([i915#8588])
[252]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-4/igt@kms_display_modes@mst-extended-mode-negative.html
- shard-mtlp: NOTRUN -> [SKIP][253] ([i915#8588])
[253]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-1/igt@kms_display_modes@mst-extended-mode-negative.html
* igt@kms_dither@fb-8bpc-vs-panel-6bpc:
- shard-tglu-1: NOTRUN -> [SKIP][254] ([i915#1769] / [i915#3555] / [i915#3804])
[254]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-1/igt@kms_dither@fb-8bpc-vs-panel-6bpc.html
* igt@kms_dither@fb-8bpc-vs-panel-6bpc@pipe-a-hdmi-a-1:
- shard-tglu-1: NOTRUN -> [SKIP][255] ([i915#3804])
[255]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-1/igt@kms_dither@fb-8bpc-vs-panel-6bpc@pipe-a-hdmi-a-1.html
* igt@kms_dp_aux_dev:
- shard-dg2: NOTRUN -> [SKIP][256] ([i915#1257])
[256]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-4/igt@kms_dp_aux_dev.html
* igt@kms_dsc@dsc-basic:
- shard-dg2-9: NOTRUN -> [SKIP][257] ([i915#3555] / [i915#3840])
[257]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@kms_dsc@dsc-basic.html
- shard-rkl: NOTRUN -> [SKIP][258] ([i915#3555] / [i915#3840]) +1 other test skip
[258]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-7/igt@kms_dsc@dsc-basic.html
* igt@kms_dsc@dsc-fractional-bpp-with-bpc:
- shard-dg2: NOTRUN -> [SKIP][259] ([i915#3840])
[259]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-3/igt@kms_dsc@dsc-fractional-bpp-with-bpc.html
- shard-tglu: NOTRUN -> [SKIP][260] ([i915#3840])
[260]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-4/igt@kms_dsc@dsc-fractional-bpp-with-bpc.html
* igt@kms_dsc@dsc-with-bpc:
- shard-tglu: NOTRUN -> [SKIP][261] ([i915#3555] / [i915#3840]) +2 other tests skip
[261]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-2/igt@kms_dsc@dsc-with-bpc.html
* igt@kms_dsc@dsc-with-bpc-formats:
- shard-mtlp: NOTRUN -> [SKIP][262] ([i915#3555] / [i915#3840])
[262]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-7/igt@kms_dsc@dsc-with-bpc-formats.html
- shard-dg2: NOTRUN -> [SKIP][263] ([i915#3555] / [i915#3840])
[263]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-4/igt@kms_dsc@dsc-with-bpc-formats.html
- shard-dg1: NOTRUN -> [SKIP][264] ([i915#3555] / [i915#3840])
[264]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-15/igt@kms_dsc@dsc-with-bpc-formats.html
* igt@kms_fbcon_fbt@psr:
- shard-tglu: NOTRUN -> [SKIP][265] ([i915#3469])
[265]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-10/igt@kms_fbcon_fbt@psr.html
* igt@kms_fbcon_fbt@psr-suspend:
- shard-dg2-9: NOTRUN -> [SKIP][266] ([i915#3469])
[266]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@kms_fbcon_fbt@psr-suspend.html
* igt@kms_feature_discovery@dp-mst:
- shard-tglu-1: NOTRUN -> [SKIP][267] ([i915#9337])
[267]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-1/igt@kms_feature_discovery@dp-mst.html
* igt@kms_feature_discovery@psr1:
- shard-dg2-9: NOTRUN -> [SKIP][268] ([i915#658])
[268]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@kms_feature_discovery@psr1.html
* igt@kms_flip@2x-flip-vs-absolute-wf_vblank-interruptible:
- shard-dg2-9: NOTRUN -> [SKIP][269] ([i915#9934]) +3 other tests skip
[269]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@kms_flip@2x-flip-vs-absolute-wf_vblank-interruptible.html
* igt@kms_flip@2x-flip-vs-fences-interruptible:
- shard-tglu-1: NOTRUN -> [SKIP][270] ([i915#3637]) +4 other tests skip
[270]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-1/igt@kms_flip@2x-flip-vs-fences-interruptible.html
* igt@kms_flip@2x-flip-vs-suspend:
- shard-mtlp: NOTRUN -> [SKIP][271] ([i915#3637]) +6 other tests skip
[271]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-1/igt@kms_flip@2x-flip-vs-suspend.html
- shard-glk: NOTRUN -> [INCOMPLETE][272] ([i915#12745] / [i915#4839])
[272]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-glk8/igt@kms_flip@2x-flip-vs-suspend.html
* igt@kms_flip@2x-flip-vs-suspend@ab-hdmi-a1-hdmi-a2:
- shard-glk: NOTRUN -> [INCOMPLETE][273] ([i915#4839])
[273]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-glk8/igt@kms_flip@2x-flip-vs-suspend@ab-hdmi-a1-hdmi-a2.html
* igt@kms_flip@2x-plain-flip:
- shard-rkl: NOTRUN -> [SKIP][274] ([i915#9934]) +10 other tests skip
[274]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-2/igt@kms_flip@2x-plain-flip.html
- shard-tglu: NOTRUN -> [SKIP][275] ([i915#3637]) +4 other tests skip
[275]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-5/igt@kms_flip@2x-plain-flip.html
* igt@kms_flip@2x-single-buffer-flip-vs-dpms-off-vs-modeset:
- shard-dg2: NOTRUN -> [SKIP][276] ([i915#9934]) +6 other tests skip
[276]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-4/igt@kms_flip@2x-single-buffer-flip-vs-dpms-off-vs-modeset.html
- shard-dg1: NOTRUN -> [SKIP][277] ([i915#9934]) +2 other tests skip
[277]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-15/igt@kms_flip@2x-single-buffer-flip-vs-dpms-off-vs-modeset.html
* igt@kms_flip@blocking-wf_vblank:
- shard-mtlp: [PASS][278] -> [FAIL][279] ([i915#11989]) +1 other test fail
[278]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-mtlp-6/igt@kms_flip@blocking-wf_vblank.html
[279]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-8/igt@kms_flip@blocking-wf_vblank.html
* igt@kms_flip@blocking-wf_vblank@b-hdmi-a2:
- shard-rkl: [PASS][280] -> [FAIL][281] ([i915#11989]) +3 other tests fail
[280]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-rkl-6/igt@kms_flip@blocking-wf_vblank@b-hdmi-a2.html
[281]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-5/igt@kms_flip@blocking-wf_vblank@b-hdmi-a2.html
* igt@kms_flip@blocking-wf_vblank@d-hdmi-a2:
- shard-dg2-9: [PASS][282] -> [FAIL][283] ([i915#11989]) +3 other tests fail
[282]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-dg2-9/igt@kms_flip@blocking-wf_vblank@d-hdmi-a2.html
[283]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@kms_flip@blocking-wf_vblank@d-hdmi-a2.html
* igt@kms_flip@flip-vs-fences-interruptible:
- shard-dg2: NOTRUN -> [SKIP][284] ([i915#8381]) +1 other test skip
[284]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-6/igt@kms_flip@flip-vs-fences-interruptible.html
- shard-dg1: NOTRUN -> [SKIP][285] ([i915#8381])
[285]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-19/igt@kms_flip@flip-vs-fences-interruptible.html
- shard-mtlp: NOTRUN -> [SKIP][286] ([i915#8381])
[286]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-6/igt@kms_flip@flip-vs-fences-interruptible.html
* igt@kms_flip@plain-flip-fb-recreate:
- shard-dg2: NOTRUN -> [FAIL][287] ([i915#11989]) +2 other tests fail
[287]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-2/igt@kms_flip@plain-flip-fb-recreate.html
* igt@kms_flip@plain-flip-fb-recreate-interruptible:
- shard-tglu: [PASS][288] -> [FAIL][289] ([i915#11989]) +5 other tests fail
[288]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-tglu-3/igt@kms_flip@plain-flip-fb-recreate-interruptible.html
[289]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-10/igt@kms_flip@plain-flip-fb-recreate-interruptible.html
* igt@kms_flip@plain-flip-fb-recreate-interruptible@a-hdmi-a1:
- shard-rkl: NOTRUN -> [FAIL][290] ([i915#11989])
[290]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-4/igt@kms_flip@plain-flip-fb-recreate-interruptible@a-hdmi-a1.html
* igt@kms_flip@plain-flip-fb-recreate@a-vga1:
- shard-snb: [PASS][291] -> [FAIL][292] ([i915#11989]) +8 other tests fail
[291]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-snb7/igt@kms_flip@plain-flip-fb-recreate@a-vga1.html
[292]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-snb2/igt@kms_flip@plain-flip-fb-recreate@a-vga1.html
* igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-64bpp-yftile-downscaling@pipe-a-valid-mode:
- shard-rkl: NOTRUN -> [SKIP][293] ([i915#2672]) +1 other test skip
[293]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-5/igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-64bpp-yftile-downscaling@pipe-a-valid-mode.html
* igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytileccs-upscaling:
- shard-mtlp: NOTRUN -> [SKIP][294] ([i915#2672] / [i915#3555] / [i915#8813]) +3 other tests skip
[294]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-3/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytileccs-upscaling.html
* igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytilegen12rcccs-upscaling@pipe-a-default-mode:
- shard-mtlp: NOTRUN -> [SKIP][295] ([i915#2672] / [i915#8813]) +3 other tests skip
[295]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-5/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytilegen12rcccs-upscaling@pipe-a-default-mode.html
* igt@kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile-upscaling:
- shard-tglu: NOTRUN -> [SKIP][296] ([i915#2587] / [i915#2672] / [i915#3555]) +1 other test skip
[296]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-10/igt@kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile-upscaling.html
* igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-16bpp-4tile-upscaling:
- shard-tglu: NOTRUN -> [SKIP][297] ([i915#2672] / [i915#3555]) +3 other tests skip
[297]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-7/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-rkl: NOTRUN -> [SKIP][298] ([i915#2672] / [i915#3555]) +1 other test skip
[298]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-4/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@pipe-a-valid-mode:
- shard-tglu: NOTRUN -> [SKIP][299] ([i915#2587] / [i915#2672]) +5 other tests skip
[299]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-5/igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tile-upscaling@pipe-a-valid-mode.html
* igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-16bpp-yftile-upscaling:
- shard-tglu-1: NOTRUN -> [SKIP][300] ([i915#2672] / [i915#3555]) +4 other tests skip
[300]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-1/igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-16bpp-yftile-upscaling.html
- shard-dg2: NOTRUN -> [SKIP][301] ([i915#2672] / [i915#3555])
[301]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-2/igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-16bpp-yftile-upscaling.html
* igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-32bpp-yftile-downscaling:
- shard-dg2-9: NOTRUN -> [SKIP][302] ([i915#2672] / [i915#3555]) +3 other tests skip
[302]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-32bpp-yftile-downscaling.html
* igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-32bpp-yftile-downscaling@pipe-a-valid-mode:
- shard-dg2-9: NOTRUN -> [SKIP][303] ([i915#2672]) +1 other test skip
[303]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-32bpp-yftile-downscaling@pipe-a-valid-mode.html
* igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-32bpp-yftile-upscaling@pipe-a-valid-mode:
- shard-tglu-1: NOTRUN -> [SKIP][304] ([i915#2587] / [i915#2672]) +4 other tests skip
[304]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-1/igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-32bpp-yftile-upscaling@pipe-a-valid-mode.html
* igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-16bpp-ytile-upscaling:
- shard-dg2: NOTRUN -> [SKIP][305] ([i915#2672] / [i915#3555] / [i915#5190]) +1 other test skip
[305]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-6/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-16bpp-ytile-upscaling.html
* igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-16bpp-ytile-upscaling@pipe-a-valid-mode:
- shard-dg2: NOTRUN -> [SKIP][306] ([i915#2672]) +2 other tests skip
[306]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-6/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-16bpp-ytile-upscaling@pipe-a-valid-mode.html
* igt@kms_frontbuffer_tracking@fbc-1p-primscrn-pri-shrfb-draw-render:
- shard-dg2: [PASS][307] -> [FAIL][308] ([i915#6880])
[307]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-dg2-10/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-pri-shrfb-draw-render.html
[308]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-6/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-pri-shrfb-draw-render.html
* igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-mmap-gtt:
- shard-mtlp: NOTRUN -> [SKIP][309] ([i915#8708]) +4 other tests skip
[309]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-6/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-mmap-gtt.html
* igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-draw-blt:
- shard-dg2: NOTRUN -> [SKIP][310] ([i915#5354]) +23 other tests skip
[310]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-6/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-draw-blt.html
* igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-mmap-gtt:
- shard-dg2: NOTRUN -> [SKIP][311] ([i915#8708]) +18 other tests skip
[311]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-8/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-mmap-gtt.html
* igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-draw-pwrite:
- shard-dg2-9: NOTRUN -> [SKIP][312] ([i915#5354]) +15 other tests skip
[312]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-draw-pwrite.html
* igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-indfb-draw-mmap-wc:
- shard-dg1: NOTRUN -> [SKIP][313] ([i915#8708]) +5 other tests skip
[313]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-18/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-indfb-draw-mmap-wc.html
* igt@kms_frontbuffer_tracking@fbc-tiling-y:
- shard-mtlp: NOTRUN -> [SKIP][314] ([i915#10055])
[314]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-1/igt@kms_frontbuffer_tracking@fbc-tiling-y.html
* igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-draw-render:
- shard-rkl: NOTRUN -> [SKIP][315] ([i915#3023]) +21 other tests skip
[315]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-2/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-draw-render.html
* igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-spr-indfb-draw-blt:
- shard-dg2: NOTRUN -> [SKIP][316] ([i915#10433] / [i915#3458])
[316]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-4/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-spr-indfb-draw-blt.html
* igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-spr-indfb-draw-mmap-gtt:
- shard-tglu-1: NOTRUN -> [SKIP][317] +49 other tests skip
[317]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-1/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-spr-indfb-draw-mmap-gtt.html
* igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-cur-indfb-onoff:
- shard-mtlp: NOTRUN -> [SKIP][318] ([i915#1825]) +23 other tests skip
[318]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-3/igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-cur-indfb-onoff.html
* igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-spr-indfb-draw-blt:
- shard-snb: NOTRUN -> [SKIP][319] +81 other tests skip
[319]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-snb4/igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-spr-indfb-draw-blt.html
* igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-cur-indfb-draw-mmap-cpu:
- shard-rkl: NOTRUN -> [SKIP][320] ([i915#1825]) +40 other tests skip
[320]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-4/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-cur-indfb-draw-mmap-cpu.html
* igt@kms_frontbuffer_tracking@fbcpsr-rgb101010-draw-blt:
- shard-dg1: NOTRUN -> [SKIP][321] ([i915#3458]) +7 other tests skip
[321]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-17/igt@kms_frontbuffer_tracking@fbcpsr-rgb101010-draw-blt.html
* igt@kms_frontbuffer_tracking@fbcpsr-tiling-4:
- shard-tglu: NOTRUN -> [SKIP][322] ([i915#5439])
[322]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-2/igt@kms_frontbuffer_tracking@fbcpsr-tiling-4.html
* igt@kms_frontbuffer_tracking@psr-1p-rte:
- shard-dg2: NOTRUN -> [SKIP][323] ([i915#3458]) +17 other tests skip
[323]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-7/igt@kms_frontbuffer_tracking@psr-1p-rte.html
* igt@kms_frontbuffer_tracking@psr-rgb101010-draw-mmap-gtt:
- shard-dg2-9: NOTRUN -> [SKIP][324] ([i915#8708]) +8 other tests skip
[324]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@kms_frontbuffer_tracking@psr-rgb101010-draw-mmap-gtt.html
* igt@kms_frontbuffer_tracking@psr-rgb101010-draw-render:
- shard-dg2-9: NOTRUN -> [SKIP][325] ([i915#3458]) +11 other tests skip
[325]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@kms_frontbuffer_tracking@psr-rgb101010-draw-render.html
* igt@kms_frontbuffer_tracking@psr-shrfb-scaledprimary:
- shard-tglu: NOTRUN -> [SKIP][326] +93 other tests skip
[326]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-2/igt@kms_frontbuffer_tracking@psr-shrfb-scaledprimary.html
* igt@kms_hdr@bpc-switch:
- shard-dg2-9: NOTRUN -> [SKIP][327] ([i915#3555] / [i915#8228])
[327]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@kms_hdr@bpc-switch.html
* igt@kms_hdr@brightness-with-hdr:
- shard-dg2: NOTRUN -> [SKIP][328] ([i915#12713])
[328]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-8/igt@kms_hdr@brightness-with-hdr.html
- shard-tglu-1: NOTRUN -> [SKIP][329] ([i915#12713])
[329]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-1/igt@kms_hdr@brightness-with-hdr.html
* igt@kms_hdr@static-toggle-dpms:
- shard-mtlp: NOTRUN -> [SKIP][330] ([i915#3555] / [i915#8228]) +2 other tests skip
[330]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-2/igt@kms_hdr@static-toggle-dpms.html
- shard-dg1: NOTRUN -> [SKIP][331] ([i915#3555] / [i915#8228])
[331]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-12/igt@kms_hdr@static-toggle-dpms.html
* igt@kms_hdr@static-toggle-suspend:
- shard-rkl: NOTRUN -> [SKIP][332] ([i915#3555] / [i915#8228]) +2 other tests skip
[332]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-3/igt@kms_hdr@static-toggle-suspend.html
- shard-tglu: NOTRUN -> [SKIP][333] ([i915#3555] / [i915#8228]) +2 other tests skip
[333]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-9/igt@kms_hdr@static-toggle-suspend.html
* igt@kms_joiner@basic-force-big-joiner:
- shard-tglu-1: NOTRUN -> [SKIP][334] ([i915#12388])
[334]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-1/igt@kms_joiner@basic-force-big-joiner.html
* igt@kms_joiner@basic-force-ultra-joiner:
- shard-tglu: NOTRUN -> [SKIP][335] ([i915#12394])
[335]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-4/igt@kms_joiner@basic-force-ultra-joiner.html
* igt@kms_joiner@basic-ultra-joiner:
- shard-dg2-9: NOTRUN -> [SKIP][336] ([i915#12339])
[336]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@kms_joiner@basic-ultra-joiner.html
* igt@kms_joiner@invalid-modeset-big-joiner:
- shard-rkl: NOTRUN -> [SKIP][337] ([i915#10656])
[337]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-4/igt@kms_joiner@invalid-modeset-big-joiner.html
- shard-dg1: NOTRUN -> [SKIP][338] ([i915#10656])
[338]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-13/igt@kms_joiner@invalid-modeset-big-joiner.html
- shard-tglu: NOTRUN -> [SKIP][339] ([i915#10656])
[339]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-6/igt@kms_joiner@invalid-modeset-big-joiner.html
- shard-mtlp: NOTRUN -> [SKIP][340] ([i915#10656])
[340]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-6/igt@kms_joiner@invalid-modeset-big-joiner.html
- shard-dg2: NOTRUN -> [SKIP][341] ([i915#10656])
[341]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-11/igt@kms_joiner@invalid-modeset-big-joiner.html
* igt@kms_joiner@invalid-modeset-force-big-joiner:
- shard-rkl: NOTRUN -> [SKIP][342] ([i915#12388])
[342]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-5/igt@kms_joiner@invalid-modeset-force-big-joiner.html
* igt@kms_joiner@invalid-modeset-force-ultra-joiner:
- shard-rkl: NOTRUN -> [SKIP][343] ([i915#12394])
[343]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-4/igt@kms_joiner@invalid-modeset-force-ultra-joiner.html
* igt@kms_joiner@switch-modeset-ultra-joiner-big-joiner:
- shard-mtlp: NOTRUN -> [SKIP][344] ([i915#13522])
[344]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-8/igt@kms_joiner@switch-modeset-ultra-joiner-big-joiner.html
* igt@kms_multipipe_modeset@basic-max-pipe-crc-check:
- shard-tglu: NOTRUN -> [SKIP][345] ([i915#1839])
[345]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-7/igt@kms_multipipe_modeset@basic-max-pipe-crc-check.html
* igt@kms_panel_fitting@atomic-fastset:
- shard-tglu: NOTRUN -> [SKIP][346] ([i915#6301]) +1 other test skip
[346]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-2/igt@kms_panel_fitting@atomic-fastset.html
* igt@kms_pipe_b_c_ivb@enable-pipe-c-while-b-has-3-lanes:
- shard-dg1: NOTRUN -> [SKIP][347] +17 other tests skip
[347]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-15/igt@kms_pipe_b_c_ivb@enable-pipe-c-while-b-has-3-lanes.html
* igt@kms_plane@plane-panning-bottom-right-suspend:
- shard-glk: NOTRUN -> [INCOMPLETE][348] ([i915#13026]) +1 other test incomplete
[348]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-glk1/igt@kms_plane@plane-panning-bottom-right-suspend.html
* igt@kms_plane_multiple@tiling-yf:
- shard-rkl: NOTRUN -> [SKIP][349] ([i915#3555]) +5 other tests skip
[349]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-1/igt@kms_plane_multiple@tiling-yf.html
* igt@kms_plane_scaling@intel-max-src-size:
- shard-mtlp: NOTRUN -> [SKIP][350] ([i915#6953])
[350]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-6/igt@kms_plane_scaling@intel-max-src-size.html
- shard-dg2: NOTRUN -> [SKIP][351] ([i915#6953] / [i915#9423])
[351]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-6/igt@kms_plane_scaling@intel-max-src-size.html
- shard-rkl: NOTRUN -> [SKIP][352] ([i915#6953])
[352]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-8/igt@kms_plane_scaling@intel-max-src-size.html
- shard-dg1: NOTRUN -> [SKIP][353] ([i915#6953])
[353]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-19/igt@kms_plane_scaling@intel-max-src-size.html
* igt@kms_plane_scaling@plane-downscale-factor-0-25-with-rotation:
- shard-dg2: NOTRUN -> [SKIP][354] ([i915#12247] / [i915#9423])
[354]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-2/igt@kms_plane_scaling@plane-downscale-factor-0-25-with-rotation.html
* igt@kms_plane_scaling@plane-downscale-factor-0-25-with-rotation@pipe-d:
- shard-dg2: NOTRUN -> [SKIP][355] ([i915#12247]) +3 other tests skip
[355]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-2/igt@kms_plane_scaling@plane-downscale-factor-0-25-with-rotation@pipe-d.html
* igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-rotation:
- shard-tglu-1: NOTRUN -> [SKIP][356] ([i915#3555]) +1 other test skip
[356]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-1/igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-rotation.html
* igt@kms_plane_scaling@plane-upscale-factor-0-25-with-rotation@pipe-d:
- shard-tglu-1: NOTRUN -> [SKIP][357] ([i915#12247]) +8 other tests skip
[357]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-1/igt@kms_plane_scaling@plane-upscale-factor-0-25-with-rotation@pipe-d.html
* igt@kms_plane_scaling@planes-downscale-factor-0-25-upscale-factor-0-25:
- shard-rkl: NOTRUN -> [SKIP][358] ([i915#12247] / [i915#6953])
[358]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-2/igt@kms_plane_scaling@planes-downscale-factor-0-25-upscale-factor-0-25.html
* igt@kms_plane_scaling@planes-downscale-factor-0-25-upscale-factor-0-25@pipe-a:
- shard-rkl: NOTRUN -> [SKIP][359] ([i915#12247]) +3 other tests skip
[359]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-2/igt@kms_plane_scaling@planes-downscale-factor-0-25-upscale-factor-0-25@pipe-a.html
* igt@kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-75:
- shard-mtlp: NOTRUN -> [SKIP][360] ([i915#12247] / [i915#6953]) +1 other test skip
[360]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-5/igt@kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-75.html
* igt@kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-75@pipe-d:
- shard-mtlp: NOTRUN -> [SKIP][361] ([i915#12247]) +12 other tests skip
[361]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-5/igt@kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-75@pipe-d.html
* igt@kms_pm_backlight@fade-with-dpms:
- shard-rkl: NOTRUN -> [SKIP][362] ([i915#5354])
[362]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-3/igt@kms_pm_backlight@fade-with-dpms.html
* igt@kms_pm_backlight@fade-with-suspend:
- shard-tglu: NOTRUN -> [SKIP][363] ([i915#9812]) +1 other test skip
[363]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-7/igt@kms_pm_backlight@fade-with-suspend.html
* igt@kms_pm_dc@dc5-psr:
- shard-tglu: NOTRUN -> [SKIP][364] ([i915#9685]) +2 other tests skip
[364]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-6/igt@kms_pm_dc@dc5-psr.html
* igt@kms_pm_dc@dc5-retention-flops:
- shard-tglu-1: NOTRUN -> [SKIP][365] ([i915#3828])
[365]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-1/igt@kms_pm_dc@dc5-retention-flops.html
* igt@kms_pm_dc@dc6-psr:
- shard-mtlp: NOTRUN -> [FAIL][366] ([i915#12912])
[366]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-4/igt@kms_pm_dc@dc6-psr.html
- shard-dg2-9: NOTRUN -> [SKIP][367] ([i915#9685])
[367]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@kms_pm_dc@dc6-psr.html
- shard-rkl: NOTRUN -> [SKIP][368] ([i915#9685])
[368]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-7/igt@kms_pm_dc@dc6-psr.html
- shard-dg1: NOTRUN -> [SKIP][369] ([i915#9685])
[369]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-13/igt@kms_pm_dc@dc6-psr.html
* igt@kms_pm_lpsp@kms-lpsp:
- shard-rkl: NOTRUN -> [SKIP][370] ([i915#9340])
[370]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-1/igt@kms_pm_lpsp@kms-lpsp.html
* igt@kms_pm_rpm@dpms-mode-unset-lpsp:
- shard-dg2-9: NOTRUN -> [SKIP][371] ([i915#9519])
[371]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@kms_pm_rpm@dpms-mode-unset-lpsp.html
* igt@kms_pm_rpm@dpms-mode-unset-non-lpsp:
- shard-tglu-1: NOTRUN -> [SKIP][372] ([i915#9519]) +1 other test skip
[372]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-1/igt@kms_pm_rpm@dpms-mode-unset-non-lpsp.html
* igt@kms_pm_rpm@fences-dpms:
- shard-dg2: NOTRUN -> [SKIP][373] ([i915#4077]) +5 other tests skip
[373]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-10/igt@kms_pm_rpm@fences-dpms.html
* igt@kms_pm_rpm@modeset-lpsp-stress-no-wait:
- shard-dg2: [PASS][374] -> [SKIP][375] ([i915#9519])
[374]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-dg2-4/igt@kms_pm_rpm@modeset-lpsp-stress-no-wait.html
[375]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-7/igt@kms_pm_rpm@modeset-lpsp-stress-no-wait.html
* igt@kms_pm_rpm@modeset-non-lpsp:
- shard-mtlp: NOTRUN -> [SKIP][376] ([i915#9519])
[376]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-2/igt@kms_pm_rpm@modeset-non-lpsp.html
* igt@kms_pm_rpm@modeset-non-lpsp-stress-no-wait:
- shard-rkl: [PASS][377] -> [SKIP][378] ([i915#9519]) +2 other tests skip
[377]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-rkl-8/igt@kms_pm_rpm@modeset-non-lpsp-stress-no-wait.html
[378]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-4/igt@kms_pm_rpm@modeset-non-lpsp-stress-no-wait.html
* igt@kms_pm_rpm@system-suspend-modeset:
- shard-glk: NOTRUN -> [INCOMPLETE][379] ([i915#10553])
[379]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-glk6/igt@kms_pm_rpm@system-suspend-modeset.html
* igt@kms_prime@basic-crc-hybrid:
- shard-tglu-1: NOTRUN -> [SKIP][380] ([i915#6524])
[380]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-1/igt@kms_prime@basic-crc-hybrid.html
* igt@kms_prime@basic-crc-vgem:
- shard-dg2: NOTRUN -> [SKIP][381] ([i915#6524] / [i915#6805])
[381]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-4/igt@kms_prime@basic-crc-vgem.html
- shard-dg1: NOTRUN -> [SKIP][382] ([i915#6524])
[382]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-17/igt@kms_prime@basic-crc-vgem.html
* igt@kms_prime@d3hot:
- shard-mtlp: NOTRUN -> [SKIP][383] ([i915#6524])
[383]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-6/igt@kms_prime@d3hot.html
* igt@kms_psr2_sf@fbc-pr-cursor-plane-move-continuous-exceed-sf:
- shard-dg2-9: NOTRUN -> [SKIP][384] ([i915#11520]) +5 other tests skip
[384]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@kms_psr2_sf@fbc-pr-cursor-plane-move-continuous-exceed-sf.html
* igt@kms_psr2_sf@fbc-pr-plane-move-sf-dmg-area:
- shard-mtlp: NOTRUN -> [SKIP][385] ([i915#12316]) +2 other tests skip
[385]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-1/igt@kms_psr2_sf@fbc-pr-plane-move-sf-dmg-area.html
* igt@kms_psr2_sf@fbc-psr2-cursor-plane-move-continuous-sf:
- shard-tglu-1: NOTRUN -> [SKIP][386] ([i915#11520]) +5 other tests skip
[386]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-1/igt@kms_psr2_sf@fbc-psr2-cursor-plane-move-continuous-sf.html
* igt@kms_psr2_sf@fbc-psr2-overlay-plane-update-sf-dmg-area:
- shard-snb: NOTRUN -> [SKIP][387] ([i915#11520]) +1 other test skip
[387]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-snb2/igt@kms_psr2_sf@fbc-psr2-overlay-plane-update-sf-dmg-area.html
* igt@kms_psr2_sf@fbc-psr2-primary-plane-update-sf-dmg-area:
- shard-glk: NOTRUN -> [SKIP][388] ([i915#11520]) +4 other tests skip
[388]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-glk6/igt@kms_psr2_sf@fbc-psr2-primary-plane-update-sf-dmg-area.html
* igt@kms_psr2_sf@pr-cursor-plane-move-continuous-sf:
- shard-tglu: NOTRUN -> [SKIP][389] ([i915#11520]) +7 other tests skip
[389]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-10/igt@kms_psr2_sf@pr-cursor-plane-move-continuous-sf.html
- shard-dg1: NOTRUN -> [SKIP][390] ([i915#11520])
[390]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-15/igt@kms_psr2_sf@pr-cursor-plane-move-continuous-sf.html
* igt@kms_psr2_sf@pr-primary-plane-update-sf-dmg-area-big-fb:
- shard-dg2: NOTRUN -> [SKIP][391] ([i915#11520]) +7 other tests skip
[391]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-11/igt@kms_psr2_sf@pr-primary-plane-update-sf-dmg-area-big-fb.html
- shard-rkl: NOTRUN -> [SKIP][392] ([i915#11520]) +8 other tests skip
[392]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-4/igt@kms_psr2_sf@pr-primary-plane-update-sf-dmg-area-big-fb.html
* igt@kms_psr2_su@page_flip-p010:
- shard-tglu: NOTRUN -> [SKIP][393] ([i915#9683])
[393]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-10/igt@kms_psr2_su@page_flip-p010.html
* igt@kms_psr@fbc-pr-primary-mmap-gtt:
- shard-dg2: NOTRUN -> [SKIP][394] ([i915#1072] / [i915#9732]) +20 other tests skip
[394]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-4/igt@kms_psr@fbc-pr-primary-mmap-gtt.html
* igt@kms_psr@fbc-psr-cursor-plane-move:
- shard-rkl: NOTRUN -> [SKIP][395] ([i915#1072] / [i915#9732]) +19 other tests skip
[395]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-7/igt@kms_psr@fbc-psr-cursor-plane-move.html
- shard-dg1: NOTRUN -> [SKIP][396] ([i915#1072] / [i915#9732]) +6 other tests skip
[396]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-13/igt@kms_psr@fbc-psr-cursor-plane-move.html
* igt@kms_psr@fbc-psr-primary-mmap-gtt:
- shard-dg2-9: NOTRUN -> [SKIP][397] ([i915#1072] / [i915#9732]) +12 other tests skip
[397]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@kms_psr@fbc-psr-primary-mmap-gtt.html
* igt@kms_psr@fbc-psr2-sprite-plane-onoff:
- shard-mtlp: NOTRUN -> [SKIP][398] ([i915#9688]) +17 other tests skip
[398]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-3/igt@kms_psr@fbc-psr2-sprite-plane-onoff.html
* igt@kms_psr@pr-suspend:
- shard-tglu-1: NOTRUN -> [SKIP][399] ([i915#9732]) +13 other tests skip
[399]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-1/igt@kms_psr@pr-suspend.html
* igt@kms_psr@psr2-cursor-plane-onoff:
- shard-tglu: NOTRUN -> [SKIP][400] ([i915#9732]) +25 other tests skip
[400]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-6/igt@kms_psr@psr2-cursor-plane-onoff.html
* igt@kms_rotation_crc@bad-tiling:
- shard-dg2: NOTRUN -> [SKIP][401] ([i915#12755])
[401]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-10/igt@kms_rotation_crc@bad-tiling.html
* igt@kms_rotation_crc@exhaust-fences:
- shard-mtlp: NOTRUN -> [SKIP][402] ([i915#4235])
[402]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-2/igt@kms_rotation_crc@exhaust-fences.html
* igt@kms_rotation_crc@primary-4-tiled-reflect-x-180:
- shard-tglu-1: NOTRUN -> [SKIP][403] ([i915#5289]) +1 other test skip
[403]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-1/igt@kms_rotation_crc@primary-4-tiled-reflect-x-180.html
* igt@kms_rotation_crc@primary-rotation-90:
- shard-rkl: [PASS][404] -> [DMESG-WARN][405] ([i915#12964]) +28 other tests dmesg-warn
[404]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-rkl-2/igt@kms_rotation_crc@primary-rotation-90.html
[405]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-2/igt@kms_rotation_crc@primary-rotation-90.html
* igt@kms_rotation_crc@primary-yf-tiled-reflect-x-180:
- shard-tglu: NOTRUN -> [SKIP][406] ([i915#5289]) +1 other test skip
[406]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-2/igt@kms_rotation_crc@primary-yf-tiled-reflect-x-180.html
* igt@kms_rotation_crc@primary-yf-tiled-reflect-x-90:
- shard-dg2: NOTRUN -> [SKIP][407] ([i915#12755] / [i915#5190])
[407]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-8/igt@kms_rotation_crc@primary-yf-tiled-reflect-x-90.html
- shard-rkl: NOTRUN -> [SKIP][408] ([i915#5289])
[408]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-3/igt@kms_rotation_crc@primary-yf-tiled-reflect-x-90.html
- shard-dg1: NOTRUN -> [SKIP][409] ([i915#5289])
[409]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-18/igt@kms_rotation_crc@primary-yf-tiled-reflect-x-90.html
- shard-mtlp: NOTRUN -> [SKIP][410] ([i915#12755])
[410]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-5/igt@kms_rotation_crc@primary-yf-tiled-reflect-x-90.html
* igt@kms_selftest@drm_framebuffer:
- shard-glk: NOTRUN -> [ABORT][411] ([i915#13179]) +1 other test abort
[411]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-glk8/igt@kms_selftest@drm_framebuffer.html
- shard-mtlp: NOTRUN -> [ABORT][412] ([i915#13179]) +1 other test abort
[412]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-7/igt@kms_selftest@drm_framebuffer.html
* igt@kms_setmode@basic-clone-single-crtc:
- shard-mtlp: NOTRUN -> [SKIP][413] ([i915#3555] / [i915#8809])
[413]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-2/igt@kms_setmode@basic-clone-single-crtc.html
* igt@kms_tiled_display@basic-test-pattern:
- shard-dg2-9: NOTRUN -> [SKIP][414] ([i915#8623])
[414]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@kms_tiled_display@basic-test-pattern.html
* igt@kms_universal_plane@cursor-fb-leak@pipe-d-edp-1:
- shard-mtlp: [PASS][415] -> [FAIL][416] ([i915#9196]) +1 other test fail
[415]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-mtlp-1/igt@kms_universal_plane@cursor-fb-leak@pipe-d-edp-1.html
[416]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-1/igt@kms_universal_plane@cursor-fb-leak@pipe-d-edp-1.html
* igt@kms_vrr@lobf:
- shard-dg2: NOTRUN -> [SKIP][417] ([i915#11920])
[417]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-11/igt@kms_vrr@lobf.html
* igt@kms_vrr@negative-basic:
- shard-dg2-9: NOTRUN -> [SKIP][418] ([i915#3555] / [i915#9906])
[418]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@kms_vrr@negative-basic.html
* igt@kms_vrr@seamless-rr-switch-drrs:
- shard-tglu-1: NOTRUN -> [SKIP][419] ([i915#9906])
[419]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-1/igt@kms_vrr@seamless-rr-switch-drrs.html
* igt@kms_vrr@seamless-rr-switch-vrr:
- shard-dg2: NOTRUN -> [SKIP][420] ([i915#9906])
[420]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-2/igt@kms_vrr@seamless-rr-switch-vrr.html
- shard-tglu: NOTRUN -> [SKIP][421] ([i915#9906])
[421]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-5/igt@kms_vrr@seamless-rr-switch-vrr.html
* igt@kms_writeback@writeback-check-output-xrgb2101010:
- shard-tglu-1: NOTRUN -> [SKIP][422] ([i915#2437] / [i915#9412])
[422]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-1/igt@kms_writeback@writeback-check-output-xrgb2101010.html
* igt@kms_writeback@writeback-fb-id:
- shard-tglu: NOTRUN -> [SKIP][423] ([i915#2437])
[423]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-9/igt@kms_writeback@writeback-fb-id.html
* igt@kms_writeback@writeback-invalid-parameters:
- shard-glk: NOTRUN -> [SKIP][424] ([i915#2437])
[424]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-glk2/igt@kms_writeback@writeback-invalid-parameters.html
- shard-rkl: NOTRUN -> [SKIP][425] ([i915#2437])
[425]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-4/igt@kms_writeback@writeback-invalid-parameters.html
* igt@perf_pmu@busy-accuracy-98@rcs0:
- shard-tglu: NOTRUN -> [FAIL][426] ([i915#4349]) +1 other test fail
[426]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-5/igt@perf_pmu@busy-accuracy-98@rcs0.html
* igt@perf_pmu@busy-start@vcs0:
- shard-glk: [PASS][427] -> [DMESG-WARN][428] ([i915#118]) +1 other test dmesg-warn
[427]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-glk2/igt@perf_pmu@busy-start@vcs0.html
[428]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-glk3/igt@perf_pmu@busy-start@vcs0.html
* igt@perf_pmu@frequency@gt0:
- shard-dg2: NOTRUN -> [FAIL][429] ([i915#12549] / [i915#6806]) +1 other test fail
[429]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-11/igt@perf_pmu@frequency@gt0.html
- shard-dg1: NOTRUN -> [FAIL][430] ([i915#12549] / [i915#6806]) +1 other test fail
[430]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-15/igt@perf_pmu@frequency@gt0.html
* igt@perf_pmu@invalid-init:
- shard-dg2: NOTRUN -> [FAIL][431] ([i915#13663])
[431]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-10/igt@perf_pmu@invalid-init.html
- shard-rkl: NOTRUN -> [FAIL][432] ([i915#13663])
[432]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-1/igt@perf_pmu@invalid-init.html
- shard-dg1: NOTRUN -> [FAIL][433] ([i915#13663])
[433]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-19/igt@perf_pmu@invalid-init.html
- shard-tglu: NOTRUN -> [FAIL][434] ([i915#13663])
[434]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-9/igt@perf_pmu@invalid-init.html
- shard-glk: NOTRUN -> [FAIL][435] ([i915#13663])
[435]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-glk7/igt@perf_pmu@invalid-init.html
* igt@perf_pmu@most-busy-check-all:
- shard-rkl: [PASS][436] -> [FAIL][437] ([i915#4349]) +1 other test fail
[436]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-rkl-6/igt@perf_pmu@most-busy-check-all.html
[437]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-7/igt@perf_pmu@most-busy-check-all.html
* igt@perf_pmu@rc6@other-idle-gt0:
- shard-rkl: NOTRUN -> [SKIP][438] ([i915#8516]) +1 other test skip
[438]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-4/igt@perf_pmu@rc6@other-idle-gt0.html
* igt@perf_pmu@semaphore-busy@bcs0:
- shard-mtlp: [PASS][439] -> [FAIL][440] ([i915#4349]) +5 other tests fail
[439]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-mtlp-1/igt@perf_pmu@semaphore-busy@bcs0.html
[440]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-3/igt@perf_pmu@semaphore-busy@bcs0.html
* igt@perf_pmu@semaphore-busy@vcs1:
- shard-dg1: [PASS][441] -> [FAIL][442] ([i915#4349]) +3 other tests fail
[441]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-dg1-18/igt@perf_pmu@semaphore-busy@vcs1.html
[442]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-14/igt@perf_pmu@semaphore-busy@vcs1.html
* igt@prime_vgem@basic-fence-read:
- shard-rkl: NOTRUN -> [SKIP][443] ([i915#3291] / [i915#3708])
[443]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-8/igt@prime_vgem@basic-fence-read.html
* igt@prime_vgem@basic-write:
- shard-dg2-9: NOTRUN -> [SKIP][444] ([i915#3291] / [i915#3708])
[444]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-9/igt@prime_vgem@basic-write.html
* igt@prime_vgem@fence-flip-hang:
- shard-rkl: NOTRUN -> [SKIP][445] ([i915#3708])
[445]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-6/igt@prime_vgem@fence-flip-hang.html
* igt@sriov_basic@enable-vfs-autoprobe-on:
- shard-dg2: NOTRUN -> [SKIP][446] ([i915#9917]) +1 other test skip
[446]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-4/igt@sriov_basic@enable-vfs-autoprobe-on.html
- shard-rkl: NOTRUN -> [SKIP][447] ([i915#9917]) +1 other test skip
[447]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-2/igt@sriov_basic@enable-vfs-autoprobe-on.html
- shard-dg1: NOTRUN -> [SKIP][448] ([i915#9917])
[448]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-17/igt@sriov_basic@enable-vfs-autoprobe-on.html
* igt@sriov_basic@enable-vfs-autoprobe-on@numvfs-1:
- shard-tglu: NOTRUN -> [FAIL][449] ([i915#12910]) +9 other tests fail
[449]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-5/igt@sriov_basic@enable-vfs-autoprobe-on@numvfs-1.html
* igt@sriov_basic@enable-vfs-autoprobe-on@numvfs-2:
- shard-mtlp: NOTRUN -> [FAIL][450] ([i915#12910]) +9 other tests fail
[450]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-1/igt@sriov_basic@enable-vfs-autoprobe-on@numvfs-2.html
* igt@sriov_basic@enable-vfs-bind-unbind-each-numvfs-all:
- shard-tglu-1: NOTRUN -> [FAIL][451] ([i915#12910])
[451]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-1/igt@sriov_basic@enable-vfs-bind-unbind-each-numvfs-all.html
#### Possible fixes ####
* igt@gem_eio@kms:
- shard-dg2: [FAIL][452] ([i915#5784]) -> [PASS][453]
[452]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-dg2-6/igt@gem_eio@kms.html
[453]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-2/igt@gem_eio@kms.html
* igt@gem_exec_suspend@basic-s0:
- shard-dg2: [INCOMPLETE][454] ([i915#11441] / [i915#13304]) -> [PASS][455]
[454]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-dg2-4/igt@gem_exec_suspend@basic-s0.html
[455]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-1/igt@gem_exec_suspend@basic-s0.html
* igt@gem_exec_suspend@basic-s0@lmem0:
- shard-dg2: [INCOMPLETE][456] ([i915#11441]) -> [PASS][457]
[456]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-dg2-4/igt@gem_exec_suspend@basic-s0@lmem0.html
[457]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-1/igt@gem_exec_suspend@basic-s0@lmem0.html
* igt@gem_pxp@verify-pxp-execution-after-suspend-resume:
- shard-rkl: [TIMEOUT][458] ([i915#12917] / [i915#12964]) -> [PASS][459]
[458]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-rkl-5/igt@gem_pxp@verify-pxp-execution-after-suspend-resume.html
[459]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-8/igt@gem_pxp@verify-pxp-execution-after-suspend-resume.html
* igt@gem_tiled_swapping@non-threaded:
- shard-rkl: [FAIL][460] ([i915#12941]) -> [PASS][461]
[460]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-rkl-5/igt@gem_tiled_swapping@non-threaded.html
[461]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-7/igt@gem_tiled_swapping@non-threaded.html
* igt@i915_hangman@gt-error-state-capture@vcs0:
- shard-mtlp: [ABORT][462] ([i915#13193]) -> [PASS][463] +2 other tests pass
[462]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-mtlp-7/igt@i915_hangman@gt-error-state-capture@vcs0.html
[463]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-3/igt@i915_hangman@gt-error-state-capture@vcs0.html
* igt@i915_module_load@reload-with-fault-injection:
- shard-tglu: [ABORT][464] ([i915#10887] / [i915#12817] / [i915#9820]) -> [PASS][465]
[464]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-tglu-5/igt@i915_module_load@reload-with-fault-injection.html
[465]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-6/igt@i915_module_load@reload-with-fault-injection.html
* igt@i915_selftest@live:
- shard-rkl: [DMESG-FAIL][466] ([i915#13550]) -> [PASS][467] +1 other test pass
[466]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-rkl-4/igt@i915_selftest@live.html
[467]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-1/igt@i915_selftest@live.html
* igt@kms_atomic_transition@plane-all-modeset-transition-fencing@pipe-a-hdmi-a-4:
- shard-dg1: [FAIL][468] ([i915#5956]) -> [PASS][469] +1 other test pass
[468]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-dg1-18/igt@kms_atomic_transition@plane-all-modeset-transition-fencing@pipe-a-hdmi-a-4.html
[469]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-14/igt@kms_atomic_transition@plane-all-modeset-transition-fencing@pipe-a-hdmi-a-4.html
* igt@kms_atomic_transition@plane-toggle-modeset-transition:
- shard-dg2: [FAIL][470] ([i915#5956]) -> [PASS][471]
[470]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-dg2-11/igt@kms_atomic_transition@plane-toggle-modeset-transition.html
[471]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-2/igt@kms_atomic_transition@plane-toggle-modeset-transition.html
* igt@kms_atomic_transition@plane-toggle-modeset-transition@pipe-a-hdmi-a-1:
- shard-tglu: [FAIL][472] ([i915#11808]) -> [PASS][473] +1 other test pass
[472]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-tglu-3/igt@kms_atomic_transition@plane-toggle-modeset-transition@pipe-a-hdmi-a-1.html
[473]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-5/igt@kms_atomic_transition@plane-toggle-modeset-transition@pipe-a-hdmi-a-1.html
* igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-180-hflip:
- shard-mtlp: [FAIL][474] ([i915#5138]) -> [PASS][475]
[474]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-mtlp-3/igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-180-hflip.html
[475]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-3/igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-180-hflip.html
* igt@kms_color@deep-color:
- shard-dg2: [SKIP][476] ([i915#3555]) -> [PASS][477]
[476]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-dg2-3/igt@kms_color@deep-color.html
[477]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-10/igt@kms_color@deep-color.html
* igt@kms_cursor_crc@cursor-sliding-64x21:
- shard-rkl: [FAIL][478] ([i915#13566]) -> [PASS][479] +2 other tests pass
[478]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-rkl-5/igt@kms_cursor_crc@cursor-sliding-64x21.html
[479]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-1/igt@kms_cursor_crc@cursor-sliding-64x21.html
* igt@kms_dp_linktrain_fallback@dp-fallback:
- shard-dg2: [SKIP][480] ([i915#12402]) -> [PASS][481]
[480]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-dg2-1/igt@kms_dp_linktrain_fallback@dp-fallback.html
[481]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-11/igt@kms_dp_linktrain_fallback@dp-fallback.html
* igt@kms_draw_crc@draw-method-pwrite:
- shard-rkl: [DMESG-WARN][482] ([i915#12964]) -> [PASS][483] +21 other tests pass
[482]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-rkl-5/igt@kms_draw_crc@draw-method-pwrite.html
[483]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-3/igt@kms_draw_crc@draw-method-pwrite.html
* igt@kms_flip@flip-vs-absolute-wf_vblank-interruptible:
- shard-dg2: [FAIL][484] ([i915#11989]) -> [PASS][485]
[484]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-dg2-2/igt@kms_flip@flip-vs-absolute-wf_vblank-interruptible.html
[485]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-4/igt@kms_flip@flip-vs-absolute-wf_vblank-interruptible.html
* igt@kms_flip@flip-vs-absolute-wf_vblank-interruptible@a-vga1:
- shard-snb: [FAIL][486] ([i915#11989]) -> [PASS][487] +5 other tests pass
[486]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-snb6/igt@kms_flip@flip-vs-absolute-wf_vblank-interruptible@a-vga1.html
[487]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-snb2/igt@kms_flip@flip-vs-absolute-wf_vblank-interruptible@a-vga1.html
* igt@kms_flip@flip-vs-blocking-wf-vblank@c-hdmi-a1:
- shard-tglu: [FAIL][488] ([i915#11989]) -> [PASS][489] +7 other tests pass
[488]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-tglu-9/igt@kms_flip@flip-vs-blocking-wf-vblank@c-hdmi-a1.html
[489]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-2/igt@kms_flip@flip-vs-blocking-wf-vblank@c-hdmi-a1.html
* igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-indfb-draw-mmap-cpu:
- shard-dg2: [FAIL][490] ([i915#6880]) -> [PASS][491] +1 other test pass
[490]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-dg2-11/igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-indfb-draw-mmap-cpu.html
[491]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-3/igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-indfb-draw-mmap-cpu.html
* igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-mmap-wc:
- shard-snb: [SKIP][492] -> [PASS][493] +3 other tests pass
[492]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-snb4/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-mmap-wc.html
[493]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-snb4/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-mmap-wc.html
* igt@kms_hdr@static-toggle:
- shard-dg2: [SKIP][494] ([i915#3555] / [i915#8228]) -> [PASS][495]
[494]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-dg2-3/igt@kms_hdr@static-toggle.html
[495]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-11/igt@kms_hdr@static-toggle.html
* igt@kms_pm_dc@dc6-dpms:
- shard-tglu: [FAIL][496] ([i915#9295]) -> [PASS][497]
[496]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-tglu-9/igt@kms_pm_dc@dc6-dpms.html
[497]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-10/igt@kms_pm_dc@dc6-dpms.html
* igt@kms_pm_rpm@dpms-mode-unset-lpsp:
- shard-rkl: [SKIP][498] ([i915#9519]) -> [PASS][499]
[498]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-rkl-5/igt@kms_pm_rpm@dpms-mode-unset-lpsp.html
[499]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-7/igt@kms_pm_rpm@dpms-mode-unset-lpsp.html
* igt@kms_pm_rpm@pm-caching:
- shard-rkl: [SKIP][500] -> [PASS][501] +1 other test pass
[500]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-rkl-5/igt@kms_pm_rpm@pm-caching.html
[501]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-8/igt@kms_pm_rpm@pm-caching.html
* igt@kms_setmode@basic@pipe-b-edp-1:
- shard-mtlp: [FAIL][502] ([i915#5465]) -> [PASS][503] +2 other tests pass
[502]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-mtlp-2/igt@kms_setmode@basic@pipe-b-edp-1.html
[503]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-3/igt@kms_setmode@basic@pipe-b-edp-1.html
* igt@kms_universal_plane@cursor-fb-leak:
- shard-dg1: [DMESG-WARN][504] ([i915#4423]) -> [PASS][505] +3 other tests pass
[504]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-dg1-13/igt@kms_universal_plane@cursor-fb-leak.html
[505]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-15/igt@kms_universal_plane@cursor-fb-leak.html
* igt@perf_pmu@module-unload:
- shard-snb: [INCOMPLETE][506] -> [PASS][507]
[506]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-snb6/igt@perf_pmu@module-unload.html
[507]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-snb4/igt@perf_pmu@module-unload.html
- shard-tglu: [ABORT][508] -> [PASS][509]
[508]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-tglu-4/igt@perf_pmu@module-unload.html
[509]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-tglu-3/igt@perf_pmu@module-unload.html
#### Warnings ####
* igt@gem_pxp@protected-raw-src-copy-not-readible:
- shard-rkl: [SKIP][510] ([i915#4270]) -> [TIMEOUT][511] ([i915#12917] / [i915#12964]) +1 other test timeout
[510]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-rkl-3/igt@gem_pxp@protected-raw-src-copy-not-readible.html
[511]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-7/igt@gem_pxp@protected-raw-src-copy-not-readible.html
* igt@i915_module_load@reload-with-fault-injection:
- shard-rkl: [ABORT][512] ([i915#9820]) -> [DMESG-WARN][513] ([i915#12964])
[512]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-rkl-7/igt@i915_module_load@reload-with-fault-injection.html
[513]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-5/igt@i915_module_load@reload-with-fault-injection.html
* igt@kms_content_protection@legacy:
- shard-dg2: [SKIP][514] ([i915#7118] / [i915#9424]) -> [FAIL][515] ([i915#7173]) +1 other test fail
[514]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-dg2-8/igt@kms_content_protection@legacy.html
[515]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-10/igt@kms_content_protection@legacy.html
* igt@kms_content_protection@lic-type-0:
- shard-dg2: [FAIL][516] ([i915#7173]) -> [SKIP][517] ([i915#9424])
[516]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-dg2-11/igt@kms_content_protection@lic-type-0.html
[517]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-6/igt@kms_content_protection@lic-type-0.html
* igt@kms_content_protection@type1:
- shard-dg2: [SKIP][518] ([i915#7118] / [i915#7162] / [i915#9424]) -> [SKIP][519] ([i915#7118] / [i915#9424])
[518]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-dg2-11/igt@kms_content_protection@type1.html
[519]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-6/igt@kms_content_protection@type1.html
* igt@kms_cursor_crc@cursor-onscreen-256x85:
- shard-rkl: [FAIL][520] ([i915#13566]) -> [DMESG-WARN][521] ([i915#12964])
[520]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-rkl-1/igt@kms_cursor_crc@cursor-onscreen-256x85.html
[521]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-5/igt@kms_cursor_crc@cursor-onscreen-256x85.html
* igt@kms_flip@2x-flip-vs-rmfb-interruptible:
- shard-dg1: [SKIP][522] ([i915#4423] / [i915#9934]) -> [SKIP][523] ([i915#9934])
[522]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-dg1-18/igt@kms_flip@2x-flip-vs-rmfb-interruptible.html
[523]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-15/igt@kms_flip@2x-flip-vs-rmfb-interruptible.html
* igt@kms_flip@flip-vs-suspend-interruptible:
- shard-glk: [INCOMPLETE][524] ([i915#12745] / [i915#1982] / [i915#4839]) -> [INCOMPLETE][525] ([i915#12745] / [i915#4839])
[524]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-glk6/igt@kms_flip@flip-vs-suspend-interruptible.html
[525]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-glk2/igt@kms_flip@flip-vs-suspend-interruptible.html
* igt@kms_flip@flip-vs-suspend-interruptible@a-hdmi-a1:
- shard-glk: [INCOMPLETE][526] ([i915#12745] / [i915#1982]) -> [INCOMPLETE][527] ([i915#12745])
[526]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-glk6/igt@kms_flip@flip-vs-suspend-interruptible@a-hdmi-a1.html
[527]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-glk2/igt@kms_flip@flip-vs-suspend-interruptible@a-hdmi-a1.html
* igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-spr-indfb-draw-pwrite:
- shard-dg2: [SKIP][528] ([i915#10433] / [i915#3458]) -> [SKIP][529] ([i915#3458])
[528]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-dg2-4/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-spr-indfb-draw-pwrite.html
[529]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg2-11/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-spr-indfb-draw-pwrite.html
* igt@kms_frontbuffer_tracking@psr-1p-primscrn-spr-indfb-draw-pwrite:
- shard-dg1: [SKIP][530] ([i915#3458] / [i915#4423]) -> [SKIP][531] ([i915#3458])
[530]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-dg1-13/igt@kms_frontbuffer_tracking@psr-1p-primscrn-spr-indfb-draw-pwrite.html
[531]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-13/igt@kms_frontbuffer_tracking@psr-1p-primscrn-spr-indfb-draw-pwrite.html
* igt@kms_hdr@bpc-switch-suspend:
- shard-dg1: [SKIP][532] ([i915#3555] / [i915#8228]) -> [SKIP][533] ([i915#3555] / [i915#4423] / [i915#8228])
[532]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-dg1-15/igt@kms_hdr@bpc-switch-suspend.html
[533]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-19/igt@kms_hdr@bpc-switch-suspend.html
* igt@kms_multipipe_modeset@basic-max-pipe-crc-check:
- shard-rkl: [SKIP][534] ([i915#1839] / [i915#4816]) -> [SKIP][535] ([i915#4070] / [i915#4816])
[534]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-rkl-8/igt@kms_multipipe_modeset@basic-max-pipe-crc-check.html
[535]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-rkl-6/igt@kms_multipipe_modeset@basic-max-pipe-crc-check.html
* igt@kms_psr@psr2-basic:
- shard-dg1: [SKIP][536] ([i915#1072] / [i915#9732]) -> [SKIP][537] ([i915#1072] / [i915#4423] / [i915#9732])
[536]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-dg1-12/igt@kms_psr@psr2-basic.html
[537]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-dg1-19/igt@kms_psr@psr2-basic.html
* igt@perf_pmu@busy-double-start:
- shard-mtlp: [INCOMPLETE][538] -> [FAIL][539] ([i915#4349]) +1 other test fail
[538]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_16138/shard-mtlp-4/igt@perf_pmu@busy-double-start.html
[539]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/shard-mtlp-1/igt@perf_pmu@busy-double-start.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[i915#10055]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10055
[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#10553]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10553
[i915#10656]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10656
[i915#1072]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/1072
[i915#10887]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10887
[i915#1099]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/1099
[i915#11078]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11078
[i915#11151]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11151
[i915#11441]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11441
[i915#11520]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11520
[i915#11616]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11616
[i915#11681]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11681
[i915#11713]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11713
[i915#118]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/118
[i915#11808]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11808
[i915#11920]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11920
[i915#11989]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11989
[i915#12247]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12247
[i915#12313]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12313
[i915#12316]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12316
[i915#12339]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12339
[i915#12353]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12353
[i915#12388]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12388
[i915#12392]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12392
[i915#12394]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12394
[i915#12402]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12402
[i915#12454]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12454
[i915#12455]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12455
[i915#12549]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12549
[i915#1257]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/1257
[i915#12712]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12712
[i915#12713]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12713
[i915#12739]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12739
[i915#12745]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12745
[i915#12755]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12755
[i915#12796]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12796
[i915#12797]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12797
[i915#12805]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12805
[i915#12817]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12817
[i915#12910]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12910
[i915#12912]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12912
[i915#12917]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12917
[i915#12941]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12941
[i915#12964]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12964
[i915#12967]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12967
[i915#13008]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13008
[i915#13026]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13026
[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#13193]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13193
[i915#13304]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13304
[i915#13356]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13356
[i915#13398]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13398
[i915#13465]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13465
[i915#13522]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13522
[i915#13547]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13547
[i915#13550]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13550
[i915#13566]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13566
[i915#13663]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13663
[i915#13688]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13688
[i915#13691]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13691
[i915#1769]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/1769
[i915#1825]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/1825
[i915#1839]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/1839
[i915#1982]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/1982
[i915#2437]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2437
[i915#2527]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2527
[i915#2587]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2587
[i915#2672]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2672
[i915#2681]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2681
[i915#280]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/280
[i915#284]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/284
[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#3458]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3458
[i915#3469]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3469
[i915#3539]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3539
[i915#3555]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3555
[i915#3591]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3591
[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#3804]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3804
[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#4070]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4070
[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#4235]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4235
[i915#4270]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4270
[i915#4349]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4349
[i915#4387]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4387
[i915#4423]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4423
[i915#4525]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4525
[i915#4538]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4538
[i915#4613]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4613
[i915#4771]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4771
[i915#4812]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4812
[i915#4816]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4816
[i915#4817]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4817
[i915#4839]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4839
[i915#4852]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4852
[i915#4860]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4860
[i915#4873]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4873
[i915#4879]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4879
[i915#4885]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4885
[i915#5138]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5138
[i915#5190]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5190
[i915#5286]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5286
[i915#5289]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5289
[i915#5354]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5354
[i915#5439]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5439
[i915#5465]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5465
[i915#5493]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5493
[i915#5784]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5784
[i915#5956]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5956
[i915#6095]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6095
[i915#6187]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6187
[i915#6228]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6228
[i915#6230]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6230
[i915#6245]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6245
[i915#6301]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6301
[i915#6334]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6334
[i915#6335]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6335
[i915#6524]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6524
[i915#658]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/658
[i915#6621]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6621
[i915#6805]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6805
[i915#6806]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6806
[i915#6880]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6880
[i915#6944]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6944
[i915#6953]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6953
[i915#7116]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7116
[i915#7118]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7118
[i915#7162]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7162
[i915#7173]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7173
[i915#7213]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7213
[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#7975]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7975
[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#8414]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8414
[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#8588]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8588
[i915#8623]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8623
[i915#8708]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8708
[i915#8709]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8709
[i915#8809]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8809
[i915#8813]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8813
[i915#8814]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8814
[i915#9010]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9010
[i915#9196]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9196
[i915#9295]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9295
[i915#9311]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9311
[i915#9323]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9323
[i915#9337]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9337
[i915#9340]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9340
[i915#9412]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9412
[i915#9423]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9423
[i915#9424]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9424
[i915#9519]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9519
[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#9809]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9809
[i915#9812]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9812
[i915#9820]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9820
[i915#9906]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9906
[i915#9917]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9917
[i915#9934]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9934
Build changes
-------------
* CI: CI-20190529 -> None
* IGT: IGT_8230 -> IGTPW_12602
* Piglit: piglit_4509 -> None
CI-20190529: 20190529
CI_DRM_16138: cbd747025a1ef985e1ebfa040aa0da4a5d77aacd @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_12602: a2d5e641e6e8d764681c10adbfbe02197d310f97 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
IGT_8230: 8230
piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12602/index.html
[-- Attachment #2: Type: text/html, Size: 177106 bytes --]
^ permalink raw reply [flat|nested] 8+ messages in thread
* ✗ Xe.CI.Full: failure for Add single engine busyness stats in GPUTOP (rev3)
2025-02-14 16:32 [PATCH i-g-t v2] Add single engine busyness stats in GPUTOP Soham Purkait
` (2 preceding siblings ...)
2025-02-15 1:41 ` ✗ i915.CI.Full: failure " Patchwork
@ 2025-02-16 1:02 ` Patchwork
2025-02-17 14:46 ` [PATCH i-g-t v2] Add single engine busyness stats in GPUTOP Kamil Konieczny
2025-02-21 4:17 ` Belgaumkar, Vinay
5 siblings, 0 replies; 8+ messages in thread
From: Patchwork @ 2025-02-16 1:02 UTC (permalink / raw)
To: Soham Purkait; +Cc: igt-dev
[-- Attachment #1: Type: text/plain, Size: 80080 bytes --]
== Series Details ==
Series: Add single engine busyness stats in GPUTOP (rev3)
URL : https://patchwork.freedesktop.org/series/143086/
State : failure
== Summary ==
CI Bug Log - changes from XEIGT_8230_full -> XEIGTPW_12602_full
====================================================
Summary
-------
**FAILURE**
Serious unknown changes coming with XEIGTPW_12602_full absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in XEIGTPW_12602_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 (4 -> 4)
------------------------------
No changes in participating hosts
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in XEIGTPW_12602_full:
### IGT changes ###
#### Possible regressions ####
* igt@kms_dp_linktrain_fallback@dp-fallback:
- shard-dg2-set2: [PASS][1] -> [SKIP][2]
[1]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-dg2-466/igt@kms_dp_linktrain_fallback@dp-fallback.html
[2]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-464/igt@kms_dp_linktrain_fallback@dp-fallback.html
* igt@kms_plane_lowres@tiling-x:
- shard-dg2-set2: [PASS][3] -> [INCOMPLETE][4] +1 other test incomplete
[3]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-dg2-466/igt@kms_plane_lowres@tiling-x.html
[4]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-466/igt@kms_plane_lowres@tiling-x.html
* igt@kms_plane_multiple@tiling-none:
- shard-dg2-set2: [PASS][5] -> [DMESG-WARN][6]
[5]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-dg2-433/igt@kms_plane_multiple@tiling-none.html
[6]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-466/igt@kms_plane_multiple@tiling-none.html
#### Warnings ####
* igt@kms_cdclk@mode-transition-all-outputs:
- shard-dg2-set2: [SKIP][7] ([Intel XE#314]) -> [FAIL][8]
[7]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-dg2-434/igt@kms_cdclk@mode-transition-all-outputs.html
[8]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-464/igt@kms_cdclk@mode-transition-all-outputs.html
* igt@xe_pm@s4-d3hot-basic-exec:
- shard-dg2-set2: [ABORT][9] ([Intel XE#4268]) -> [ABORT][10]
[9]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-dg2-432/igt@xe_pm@s4-d3hot-basic-exec.html
[10]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-463/igt@xe_pm@s4-d3hot-basic-exec.html
#### Suppressed ####
The following results come from untrusted machines, tests, or statuses.
They do not affect the overall result.
* {igt@kms_pipe_stress@stress-xrgb8888-ytiled}:
- shard-bmg: NOTRUN -> [SKIP][11]
[11]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-5/igt@kms_pipe_stress@stress-xrgb8888-ytiled.html
- shard-dg2-set2: NOTRUN -> [SKIP][12]
[12]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-433/igt@kms_pipe_stress@stress-xrgb8888-ytiled.html
- shard-lnl: NOTRUN -> [SKIP][13]
[13]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-5/igt@kms_pipe_stress@stress-xrgb8888-ytiled.html
Known issues
------------
Here are the changes found in XEIGTPW_12602_full that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@core_hotunplug@hotreplug-lateclose:
- shard-lnl: NOTRUN -> [ABORT][14] ([Intel XE#3914])
[14]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-3/igt@core_hotunplug@hotreplug-lateclose.html
* igt@kms_addfb_basic@invalid-smem-bo-on-discrete:
- shard-lnl: NOTRUN -> [SKIP][15] ([Intel XE#3157])
[15]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-7/igt@kms_addfb_basic@invalid-smem-bo-on-discrete.html
* igt@kms_async_flips@alternate-sync-async-flip:
- shard-bmg: [PASS][16] -> [FAIL][17] ([Intel XE#827]) +1 other test fail
[16]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-bmg-5/igt@kms_async_flips@alternate-sync-async-flip.html
[17]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-4/igt@kms_async_flips@alternate-sync-async-flip.html
* igt@kms_async_flips@async-flip-with-page-flip-events-atomic:
- shard-lnl: [PASS][18] -> [FAIL][19] ([Intel XE#3719] / [Intel XE#911]) +3 other tests fail
[18]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-lnl-6/igt@kms_async_flips@async-flip-with-page-flip-events-atomic.html
[19]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-2/igt@kms_async_flips@async-flip-with-page-flip-events-atomic.html
* igt@kms_atomic_transition@plane-all-modeset-transition:
- shard-lnl: NOTRUN -> [SKIP][20] ([Intel XE#3279])
[20]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-7/igt@kms_atomic_transition@plane-all-modeset-transition.html
* igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-180-hflip:
- shard-lnl: NOTRUN -> [SKIP][21] ([Intel XE#1407]) +6 other tests skip
[21]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-2/igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-180-hflip.html
* igt@kms_big_fb@x-tiled-32bpp-rotate-90:
- shard-bmg: NOTRUN -> [SKIP][22] ([Intel XE#2327]) +5 other tests skip
[22]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-7/igt@kms_big_fb@x-tiled-32bpp-rotate-90.html
* igt@kms_big_fb@x-tiled-64bpp-rotate-90:
- shard-dg2-set2: NOTRUN -> [SKIP][23] ([Intel XE#316]) +5 other tests skip
[23]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-466/igt@kms_big_fb@x-tiled-64bpp-rotate-90.html
* igt@kms_big_fb@y-tiled-addfb-size-offset-overflow:
- shard-bmg: NOTRUN -> [SKIP][24] ([Intel XE#607])
[24]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-1/igt@kms_big_fb@y-tiled-addfb-size-offset-overflow.html
- shard-dg2-set2: NOTRUN -> [SKIP][25] ([Intel XE#607])
[25]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-433/igt@kms_big_fb@y-tiled-addfb-size-offset-overflow.html
- shard-lnl: NOTRUN -> [SKIP][26] ([Intel XE#1477])
[26]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-5/igt@kms_big_fb@y-tiled-addfb-size-offset-overflow.html
* igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-0-hflip:
- shard-bmg: NOTRUN -> [SKIP][27] ([Intel XE#1124]) +13 other tests skip
[27]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-4/igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-0-hflip.html
* igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-180-hflip-async-flip:
- shard-dg2-set2: NOTRUN -> [SKIP][28] ([Intel XE#1124]) +11 other tests skip
[28]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-466/igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-180-hflip-async-flip.html
- shard-lnl: NOTRUN -> [SKIP][29] ([Intel XE#1124]) +14 other tests skip
[29]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-8/igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-180-hflip-async-flip.html
* igt@kms_bw@connected-linear-tiling-2-displays-2560x1440p:
- shard-bmg: [PASS][30] -> [SKIP][31] ([Intel XE#2314] / [Intel XE#2894])
[30]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-bmg-5/igt@kms_bw@connected-linear-tiling-2-displays-2560x1440p.html
[31]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-4/igt@kms_bw@connected-linear-tiling-2-displays-2560x1440p.html
* igt@kms_bw@connected-linear-tiling-2-displays-3840x2160p:
- shard-dg2-set2: [PASS][32] -> [SKIP][33] ([Intel XE#2191])
[32]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-dg2-466/igt@kms_bw@connected-linear-tiling-2-displays-3840x2160p.html
[33]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-464/igt@kms_bw@connected-linear-tiling-2-displays-3840x2160p.html
* igt@kms_bw@connected-linear-tiling-3-displays-2160x1440p:
- shard-lnl: NOTRUN -> [SKIP][34] ([Intel XE#2191]) +2 other tests skip
[34]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-6/igt@kms_bw@connected-linear-tiling-3-displays-2160x1440p.html
* igt@kms_bw@connected-linear-tiling-3-displays-3840x2160p:
- shard-bmg: NOTRUN -> [SKIP][35] ([Intel XE#2314] / [Intel XE#2894]) +2 other tests skip
[35]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-1/igt@kms_bw@connected-linear-tiling-3-displays-3840x2160p.html
* igt@kms_bw@connected-linear-tiling-4-displays-1920x1080p:
- shard-dg2-set2: NOTRUN -> [SKIP][36] ([Intel XE#2191]) +2 other tests skip
[36]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-433/igt@kms_bw@connected-linear-tiling-4-displays-1920x1080p.html
- shard-lnl: NOTRUN -> [SKIP][37] ([Intel XE#1512]) +1 other test skip
[37]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-5/igt@kms_bw@connected-linear-tiling-4-displays-1920x1080p.html
* igt@kms_bw@linear-tiling-3-displays-3840x2160p:
- shard-dg2-set2: NOTRUN -> [SKIP][38] ([Intel XE#367]) +2 other tests skip
[38]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-463/igt@kms_bw@linear-tiling-3-displays-3840x2160p.html
- shard-lnl: NOTRUN -> [SKIP][39] ([Intel XE#367]) +1 other test skip
[39]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-6/igt@kms_bw@linear-tiling-3-displays-3840x2160p.html
* igt@kms_bw@linear-tiling-4-displays-2160x1440p:
- shard-bmg: NOTRUN -> [SKIP][40] ([Intel XE#367]) +2 other tests skip
[40]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-7/igt@kms_bw@linear-tiling-4-displays-2160x1440p.html
* igt@kms_ccs@bad-rotation-90-y-tiled-gen12-rc-ccs:
- shard-lnl: NOTRUN -> [SKIP][41] ([Intel XE#2887]) +11 other tests skip
[41]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-6/igt@kms_ccs@bad-rotation-90-y-tiled-gen12-rc-ccs.html
* igt@kms_ccs@crc-primary-basic-4-tiled-mtl-rc-ccs@pipe-b-hdmi-a-6:
- shard-dg2-set2: NOTRUN -> [SKIP][42] ([Intel XE#787]) +148 other tests skip
[42]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-433/igt@kms_ccs@crc-primary-basic-4-tiled-mtl-rc-ccs@pipe-b-hdmi-a-6.html
* igt@kms_ccs@crc-primary-rotation-180-4-tiled-bmg-ccs:
- shard-bmg: NOTRUN -> [DMESG-WARN][43] ([Intel XE#4172]) +30 other tests dmesg-warn
[43]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-4/igt@kms_ccs@crc-primary-rotation-180-4-tiled-bmg-ccs.html
- shard-dg2-set2: NOTRUN -> [SKIP][44] ([Intel XE#2907])
[44]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-466/igt@kms_ccs@crc-primary-rotation-180-4-tiled-bmg-ccs.html
* igt@kms_ccs@crc-primary-rotation-180-4-tiled-bmg-ccs@pipe-b-edp-1:
- shard-lnl: NOTRUN -> [SKIP][45] ([Intel XE#2669]) +3 other tests skip
[45]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-4/igt@kms_ccs@crc-primary-rotation-180-4-tiled-bmg-ccs@pipe-b-edp-1.html
* igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs:
- shard-dg2-set2: NOTRUN -> [SKIP][46] ([Intel XE#3442])
[46]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-463/igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs.html
* igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-rc-ccs:
- shard-bmg: NOTRUN -> [SKIP][47] ([Intel XE#3432])
[47]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-4/igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-rc-ccs.html
- shard-lnl: NOTRUN -> [SKIP][48] ([Intel XE#3432])
[48]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-7/igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-rc-ccs.html
* igt@kms_ccs@missing-ccs-buffer-4-tiled-mtl-mc-ccs@pipe-d-dp-4:
- shard-dg2-set2: NOTRUN -> [SKIP][49] ([Intel XE#455] / [Intel XE#787]) +38 other tests skip
[49]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-466/igt@kms_ccs@missing-ccs-buffer-4-tiled-mtl-mc-ccs@pipe-d-dp-4.html
* igt@kms_ccs@missing-ccs-buffer-y-tiled-gen12-rc-ccs:
- shard-bmg: NOTRUN -> [SKIP][50] ([Intel XE#2887]) +13 other tests skip
[50]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-1/igt@kms_ccs@missing-ccs-buffer-y-tiled-gen12-rc-ccs.html
* igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs-cc:
- shard-dg2-set2: [PASS][51] -> [INCOMPLETE][52] ([Intel XE#1727] / [Intel XE#3124] / [Intel XE#4010]) +1 other test incomplete
[51]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-dg2-432/igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs-cc.html
[52]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-434/igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs-cc.html
* igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs-cc@pipe-c-dp-4:
- shard-dg2-set2: NOTRUN -> [DMESG-WARN][53] ([Intel XE#1727] / [Intel XE#3113])
[53]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-434/igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs-cc@pipe-c-dp-4.html
* igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs-cc@pipe-d-hdmi-a-6:
- shard-dg2-set2: NOTRUN -> [INCOMPLETE][54] ([Intel XE#3124] / [Intel XE#4010])
[54]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-434/igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs-cc@pipe-d-hdmi-a-6.html
* igt@kms_chamelium_audio@hdmi-audio-edid:
- shard-bmg: NOTRUN -> [SKIP][55] ([Intel XE#2252]) +14 other tests skip
[55]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-5/igt@kms_chamelium_audio@hdmi-audio-edid.html
* igt@kms_chamelium_color@ctm-red-to-blue:
- shard-bmg: NOTRUN -> [SKIP][56] ([Intel XE#2325]) +1 other test skip
[56]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-7/igt@kms_chamelium_color@ctm-red-to-blue.html
- shard-dg2-set2: NOTRUN -> [SKIP][57] ([Intel XE#306]) +1 other test skip
[57]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-434/igt@kms_chamelium_color@ctm-red-to-blue.html
* igt@kms_chamelium_color@degamma:
- shard-lnl: NOTRUN -> [SKIP][58] ([Intel XE#306])
[58]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-4/igt@kms_chamelium_color@degamma.html
* igt@kms_chamelium_hpd@vga-hpd:
- shard-dg2-set2: NOTRUN -> [SKIP][59] ([Intel XE#373]) +12 other tests skip
[59]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-434/igt@kms_chamelium_hpd@vga-hpd.html
* igt@kms_chamelium_hpd@vga-hpd-enable-disable-mode:
- shard-lnl: NOTRUN -> [SKIP][60] ([Intel XE#373]) +14 other tests skip
[60]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-4/igt@kms_chamelium_hpd@vga-hpd-enable-disable-mode.html
* igt@kms_content_protection@legacy:
- shard-bmg: NOTRUN -> [DMESG-FAIL][61] ([Intel XE#4172]) +3 other tests dmesg-fail
[61]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-7/igt@kms_content_protection@legacy.html
* igt@kms_content_protection@lic-type-0:
- shard-dg2-set2: NOTRUN -> [FAIL][62] ([Intel XE#1178]) +1 other test fail
[62]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-463/igt@kms_content_protection@lic-type-0.html
* igt@kms_content_protection@lic-type-0@pipe-a-dp-4:
- shard-dg2-set2: NOTRUN -> [FAIL][63] ([Intel XE#3304])
[63]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-463/igt@kms_content_protection@lic-type-0@pipe-a-dp-4.html
* igt@kms_content_protection@uevent:
- shard-dg2-set2: NOTRUN -> [DMESG-FAIL][64] ([Intel XE#1033]) +1 other test dmesg-fail
[64]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-466/igt@kms_content_protection@uevent.html
- shard-lnl: NOTRUN -> [SKIP][65] ([Intel XE#3278]) +2 other tests skip
[65]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-4/igt@kms_content_protection@uevent.html
* igt@kms_cursor_crc@cursor-random-32x32:
- shard-bmg: NOTRUN -> [SKIP][66] ([Intel XE#2320]) +4 other tests skip
[66]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-5/igt@kms_cursor_crc@cursor-random-32x32.html
- shard-lnl: NOTRUN -> [SKIP][67] ([Intel XE#1424]) +4 other tests skip
[67]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-8/igt@kms_cursor_crc@cursor-random-32x32.html
* igt@kms_cursor_legacy@2x-flip-vs-cursor-legacy:
- shard-dg2-set2: [PASS][68] -> [SKIP][69] ([Intel XE#309]) +2 other tests skip
[68]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-dg2-463/igt@kms_cursor_legacy@2x-flip-vs-cursor-legacy.html
[69]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-464/igt@kms_cursor_legacy@2x-flip-vs-cursor-legacy.html
* igt@kms_cursor_legacy@cursor-vs-flip-atomic-transitions:
- shard-dg2-set2: [PASS][70] -> [DMESG-WARN][71] ([Intel XE#1033]) +76 other tests dmesg-warn
[70]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-dg2-434/igt@kms_cursor_legacy@cursor-vs-flip-atomic-transitions.html
[71]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-463/igt@kms_cursor_legacy@cursor-vs-flip-atomic-transitions.html
* igt@kms_cursor_legacy@cursorb-vs-flipa-atomic-transitions-varying-size:
- shard-bmg: [PASS][72] -> [SKIP][73] ([Intel XE#2291]) +5 other tests skip
[72]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-bmg-1/igt@kms_cursor_legacy@cursorb-vs-flipa-atomic-transitions-varying-size.html
[73]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-4/igt@kms_cursor_legacy@cursorb-vs-flipa-atomic-transitions-varying-size.html
* igt@kms_cursor_legacy@cursorb-vs-flipa-toggle:
- shard-lnl: NOTRUN -> [SKIP][74] ([Intel XE#309]) +6 other tests skip
[74]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-5/igt@kms_cursor_legacy@cursorb-vs-flipa-toggle.html
* igt@kms_cursor_legacy@cursorb-vs-flipb-atomic-transitions-varying-size:
- shard-bmg: NOTRUN -> [SKIP][75] ([Intel XE#2291]) +3 other tests skip
[75]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-4/igt@kms_cursor_legacy@cursorb-vs-flipb-atomic-transitions-varying-size.html
* igt@kms_cursor_legacy@cursorb-vs-flipb-varying-size:
- shard-dg2-set2: NOTRUN -> [SKIP][76] ([Intel XE#309])
[76]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-464/igt@kms_cursor_legacy@cursorb-vs-flipb-varying-size.html
* igt@kms_cursor_legacy@short-busy-flip-before-cursor-atomic-transitions-varying-size:
- shard-dg2-set2: NOTRUN -> [SKIP][77] ([Intel XE#323])
[77]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-433/igt@kms_cursor_legacy@short-busy-flip-before-cursor-atomic-transitions-varying-size.html
- shard-lnl: NOTRUN -> [SKIP][78] ([Intel XE#323])
[78]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-3/igt@kms_cursor_legacy@short-busy-flip-before-cursor-atomic-transitions-varying-size.html
- shard-bmg: NOTRUN -> [SKIP][79] ([Intel XE#2286])
[79]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-7/igt@kms_cursor_legacy@short-busy-flip-before-cursor-atomic-transitions-varying-size.html
* igt@kms_display_modes@extended-mode-basic:
- shard-dg2-set2: [PASS][80] -> [SKIP][81] ([Intel XE#4302])
[80]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-dg2-463/igt@kms_display_modes@extended-mode-basic.html
[81]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-464/igt@kms_display_modes@extended-mode-basic.html
* igt@kms_dsc@dsc-basic:
- shard-bmg: NOTRUN -> [SKIP][82] ([Intel XE#2244])
[82]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-4/igt@kms_dsc@dsc-basic.html
- shard-lnl: NOTRUN -> [SKIP][83] ([Intel XE#2244])
[83]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-2/igt@kms_dsc@dsc-basic.html
* igt@kms_feature_discovery@psr1:
- shard-bmg: NOTRUN -> [SKIP][84] ([Intel XE#2374])
[84]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-7/igt@kms_feature_discovery@psr1.html
* igt@kms_flip@2x-flip-vs-absolute-wf_vblank:
- shard-lnl: NOTRUN -> [SKIP][85] ([Intel XE#1421]) +5 other tests skip
[85]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-2/igt@kms_flip@2x-flip-vs-absolute-wf_vblank.html
- shard-bmg: NOTRUN -> [SKIP][86] ([Intel XE#2316])
[86]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-4/igt@kms_flip@2x-flip-vs-absolute-wf_vblank.html
* igt@kms_flip@2x-flip-vs-dpms-off-vs-modeset:
- shard-bmg: [PASS][87] -> [SKIP][88] ([Intel XE#2316]) +2 other tests skip
[87]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-bmg-7/igt@kms_flip@2x-flip-vs-dpms-off-vs-modeset.html
[88]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-4/igt@kms_flip@2x-flip-vs-dpms-off-vs-modeset.html
- shard-dg2-set2: [PASS][89] -> [DMESG-WARN][90] ([Intel XE#2955])
[89]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-dg2-434/igt@kms_flip@2x-flip-vs-dpms-off-vs-modeset.html
[90]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-466/igt@kms_flip@2x-flip-vs-dpms-off-vs-modeset.html
* igt@kms_flip@2x-flip-vs-expired-vblank:
- shard-dg2-set2: NOTRUN -> [SKIP][91] ([Intel XE#310])
[91]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-464/igt@kms_flip@2x-flip-vs-expired-vblank.html
* igt@kms_flip@2x-nonexisting-fb:
- shard-dg2-set2: [PASS][92] -> [SKIP][93] ([Intel XE#310]) +3 other tests skip
[92]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-dg2-434/igt@kms_flip@2x-nonexisting-fb.html
[93]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-464/igt@kms_flip@2x-nonexisting-fb.html
* igt@kms_flip@2x-wf_vblank-ts-check@ac-dp2-hdmi-a3:
- shard-bmg: [PASS][94] -> [FAIL][95] ([Intel XE#2882]) +3 other tests fail
[94]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-bmg-7/igt@kms_flip@2x-wf_vblank-ts-check@ac-dp2-hdmi-a3.html
[95]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-5/igt@kms_flip@2x-wf_vblank-ts-check@ac-dp2-hdmi-a3.html
* igt@kms_flip@bo-too-big@d-dp4:
- shard-dg2-set2: NOTRUN -> [DMESG-WARN][96] ([Intel XE#1033]) +35 other tests dmesg-warn
[96]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-433/igt@kms_flip@bo-too-big@d-dp4.html
* igt@kms_flip@flip-vs-expired-vblank-interruptible@a-dp4:
- shard-dg2-set2: NOTRUN -> [FAIL][97] ([Intel XE#301]) +2 other tests fail
[97]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-433/igt@kms_flip@flip-vs-expired-vblank-interruptible@a-dp4.html
* igt@kms_flip@flip-vs-expired-vblank@a-hdmi-a6:
- shard-dg2-set2: [PASS][98] -> [FAIL][99] ([Intel XE#301]) +1 other test fail
[98]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-dg2-463/igt@kms_flip@flip-vs-expired-vblank@a-hdmi-a6.html
[99]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-464/igt@kms_flip@flip-vs-expired-vblank@a-hdmi-a6.html
* igt@kms_flip@modeset-vs-vblank-race:
- shard-bmg: [PASS][100] -> [DMESG-WARN][101] ([Intel XE#2955])
[100]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-bmg-7/igt@kms_flip@modeset-vs-vblank-race.html
[101]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-1/igt@kms_flip@modeset-vs-vblank-race.html
- shard-dg2-set2: NOTRUN -> [DMESG-WARN][102] ([Intel XE#2955])
[102]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-463/igt@kms_flip@modeset-vs-vblank-race.html
* igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-32bpp-yftileccs-upscaling:
- shard-bmg: NOTRUN -> [SKIP][103] ([Intel XE#2293] / [Intel XE#2380]) +2 other tests skip
[103]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-4/igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-32bpp-yftileccs-upscaling.html
* igt@kms_flip_scaled_crc@flip-64bpp-linear-to-16bpp-linear-downscaling:
- shard-lnl: NOTRUN -> [SKIP][104] ([Intel XE#1397] / [Intel XE#1745])
[104]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-4/igt@kms_flip_scaled_crc@flip-64bpp-linear-to-16bpp-linear-downscaling.html
* igt@kms_flip_scaled_crc@flip-64bpp-linear-to-16bpp-linear-downscaling@pipe-a-default-mode:
- shard-lnl: NOTRUN -> [SKIP][105] ([Intel XE#1397])
[105]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-4/igt@kms_flip_scaled_crc@flip-64bpp-linear-to-16bpp-linear-downscaling@pipe-a-default-mode.html
* igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilegen12rcccs-upscaling:
- shard-dg2-set2: NOTRUN -> [SKIP][106] ([Intel XE#455]) +13 other tests skip
[106]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-433/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilegen12rcccs-upscaling.html
- shard-lnl: NOTRUN -> [SKIP][107] ([Intel XE#1401] / [Intel XE#1745]) +2 other tests skip
[107]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-5/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilegen12rcccs-upscaling.html
* igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilegen12rcccs-upscaling@pipe-a-default-mode:
- shard-lnl: NOTRUN -> [SKIP][108] ([Intel XE#1401]) +2 other tests skip
[108]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-5/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilegen12rcccs-upscaling@pipe-a-default-mode.html
* igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilegen12rcccs-upscaling@pipe-a-valid-mode:
- shard-bmg: NOTRUN -> [SKIP][109] ([Intel XE#2293]) +2 other tests skip
[109]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-1/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilegen12rcccs-upscaling@pipe-a-valid-mode.html
* igt@kms_force_connector_basic@force-connector-state:
- shard-lnl: NOTRUN -> [SKIP][110] ([Intel XE#352])
[110]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-7/igt@kms_force_connector_basic@force-connector-state.html
* igt@kms_frontbuffer_tracking@drrs-1p-offscren-pri-indfb-draw-blt:
- shard-bmg: NOTRUN -> [SKIP][111] ([Intel XE#2311]) +29 other tests skip
[111]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-1/igt@kms_frontbuffer_tracking@drrs-1p-offscren-pri-indfb-draw-blt.html
* igt@kms_frontbuffer_tracking@drrs-1p-primscrn-spr-indfb-onoff:
- shard-lnl: NOTRUN -> [SKIP][112] ([Intel XE#651]) +16 other tests skip
[112]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-6/igt@kms_frontbuffer_tracking@drrs-1p-primscrn-spr-indfb-onoff.html
* igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-shrfb-pgflip-blt:
- shard-dg2-set2: [PASS][113] -> [SKIP][114] ([Intel XE#656]) +4 other tests skip
[113]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-dg2-466/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-shrfb-pgflip-blt.html
[114]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-464/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-shrfb-pgflip-blt.html
* igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-onoff:
- shard-bmg: NOTRUN -> [SKIP][115] ([Intel XE#4141]) +14 other tests skip
[115]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-1/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-onoff.html
* igt@kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-cur-indfb-onoff:
- shard-dg2-set2: NOTRUN -> [SKIP][116] ([Intel XE#656]) +4 other tests skip
[116]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-464/igt@kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-cur-indfb-onoff.html
* igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-spr-indfb-onoff:
- shard-dg2-set2: NOTRUN -> [SKIP][117] ([Intel XE#651]) +27 other tests skip
[117]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-466/igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-spr-indfb-onoff.html
* igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-spr-indfb-draw-blt:
- shard-bmg: NOTRUN -> [SKIP][118] ([Intel XE#2312]) +10 other tests skip
[118]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-4/igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-spr-indfb-draw-blt.html
* igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-spr-indfb-onoff:
- shard-bmg: NOTRUN -> [SKIP][119] ([Intel XE#2313]) +23 other tests skip
[119]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-5/igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-spr-indfb-onoff.html
* igt@kms_frontbuffer_tracking@psr-1p-primscrn-spr-indfb-move:
- shard-dg2-set2: NOTRUN -> [SKIP][120] ([Intel XE#653]) +25 other tests skip
[120]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-466/igt@kms_frontbuffer_tracking@psr-1p-primscrn-spr-indfb-move.html
* igt@kms_frontbuffer_tracking@psr-2p-scndscrn-pri-indfb-draw-render:
- shard-lnl: NOTRUN -> [SKIP][121] ([Intel XE#656]) +44 other tests skip
[121]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-3/igt@kms_frontbuffer_tracking@psr-2p-scndscrn-pri-indfb-draw-render.html
* igt@kms_hdmi_inject@inject-audio:
- shard-lnl: NOTRUN -> [SKIP][122] ([Intel XE#1470] / [Intel XE#2853])
[122]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-2/igt@kms_hdmi_inject@inject-audio.html
* igt@kms_hdr@static-toggle-dpms:
- shard-lnl: NOTRUN -> [SKIP][123] ([Intel XE#1503]) +1 other test skip
[123]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-8/igt@kms_hdr@static-toggle-dpms.html
* igt@kms_joiner@basic-force-ultra-joiner:
- shard-bmg: NOTRUN -> [SKIP][124] ([Intel XE#2934])
[124]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-4/igt@kms_joiner@basic-force-ultra-joiner.html
- shard-dg2-set2: NOTRUN -> [SKIP][125] ([Intel XE#2925])
[125]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-464/igt@kms_joiner@basic-force-ultra-joiner.html
- shard-lnl: NOTRUN -> [SKIP][126] ([Intel XE#2934])
[126]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-2/igt@kms_joiner@basic-force-ultra-joiner.html
* igt@kms_joiner@invalid-modeset-big-joiner:
- shard-bmg: NOTRUN -> [SKIP][127] ([Intel XE#346])
[127]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-7/igt@kms_joiner@invalid-modeset-big-joiner.html
- shard-dg2-set2: NOTRUN -> [SKIP][128] ([Intel XE#346])
[128]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-433/igt@kms_joiner@invalid-modeset-big-joiner.html
- shard-lnl: NOTRUN -> [SKIP][129] ([Intel XE#346])
[129]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-4/igt@kms_joiner@invalid-modeset-big-joiner.html
* igt@kms_plane_cursor@primary@pipe-a-hdmi-a-6-size-256:
- shard-dg2-set2: NOTRUN -> [FAIL][130] ([Intel XE#616]) +3 other tests fail
[130]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-466/igt@kms_plane_cursor@primary@pipe-a-hdmi-a-6-size-256.html
* igt@kms_plane_multiple@tiling-yf:
- shard-bmg: NOTRUN -> [SKIP][131] ([Intel XE#2493])
[131]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-1/igt@kms_plane_multiple@tiling-yf.html
- shard-lnl: NOTRUN -> [SKIP][132] ([Intel XE#2493])
[132]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-4/igt@kms_plane_multiple@tiling-yf.html
* igt@kms_plane_scaling@intel-max-src-size:
- shard-lnl: NOTRUN -> [SKIP][133] ([Intel XE#3307])
[133]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-6/igt@kms_plane_scaling@intel-max-src-size.html
* igt@kms_plane_scaling@intel-max-src-size@pipe-a-hdmi-a-6:
- shard-dg2-set2: NOTRUN -> [DMESG-WARN][134] ([Intel XE#4212]) +1 other test dmesg-warn
[134]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-463/igt@kms_plane_scaling@intel-max-src-size@pipe-a-hdmi-a-6.html
* igt@kms_plane_scaling@plane-downscale-factor-0-25-with-modifiers@pipe-a:
- shard-dg2-set2: NOTRUN -> [SKIP][135] ([Intel XE#2763]) +2 other tests skip
[135]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-466/igt@kms_plane_scaling@plane-downscale-factor-0-25-with-modifiers@pipe-a.html
* igt@kms_plane_scaling@plane-downscale-factor-0-25-with-modifiers@pipe-d:
- shard-dg2-set2: NOTRUN -> [SKIP][136] ([Intel XE#2763] / [Intel XE#455]) +1 other test skip
[136]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-466/igt@kms_plane_scaling@plane-downscale-factor-0-25-with-modifiers@pipe-d.html
* igt@kms_plane_scaling@plane-downscale-factor-0-25-with-rotation:
- shard-bmg: NOTRUN -> [SKIP][137] ([Intel XE#2763]) +4 other tests skip
[137]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-4/igt@kms_plane_scaling@plane-downscale-factor-0-25-with-rotation.html
* igt@kms_plane_scaling@plane-downscale-factor-0-5-with-pixel-format@pipe-c:
- shard-lnl: NOTRUN -> [SKIP][138] ([Intel XE#2763]) +11 other tests skip
[138]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-2/igt@kms_plane_scaling@plane-downscale-factor-0-5-with-pixel-format@pipe-c.html
* igt@kms_pm_backlight@fade:
- shard-bmg: NOTRUN -> [SKIP][139] ([Intel XE#870]) +1 other test skip
[139]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-1/igt@kms_pm_backlight@fade.html
- shard-dg2-set2: NOTRUN -> [SKIP][140] ([Intel XE#870]) +1 other test skip
[140]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-463/igt@kms_pm_backlight@fade.html
* igt@kms_pm_dc@dc3co-vpb-simulation:
- shard-bmg: NOTRUN -> [SKIP][141] ([Intel XE#2391])
[141]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-1/igt@kms_pm_dc@dc3co-vpb-simulation.html
- shard-dg2-set2: NOTRUN -> [SKIP][142] ([Intel XE#1122]) +1 other test skip
[142]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-433/igt@kms_pm_dc@dc3co-vpb-simulation.html
- shard-lnl: NOTRUN -> [SKIP][143] ([Intel XE#736])
[143]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-5/igt@kms_pm_dc@dc3co-vpb-simulation.html
* igt@kms_pm_dc@dc5-retention-flops:
- shard-dg2-set2: NOTRUN -> [SKIP][144] ([Intel XE#3309])
[144]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-433/igt@kms_pm_dc@dc5-retention-flops.html
* igt@kms_pm_rpm@dpms-non-lpsp:
- shard-lnl: NOTRUN -> [SKIP][145] ([Intel XE#1439] / [Intel XE#3141])
[145]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-8/igt@kms_pm_rpm@dpms-non-lpsp.html
* igt@kms_pm_rpm@modeset-lpsp:
- shard-bmg: NOTRUN -> [SKIP][146] ([Intel XE#1439] / [Intel XE#3141] / [Intel XE#836]) +1 other test skip
[146]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-4/igt@kms_pm_rpm@modeset-lpsp.html
* igt@kms_pm_rpm@system-suspend-modeset:
- shard-dg2-set2: NOTRUN -> [DMESG-WARN][147] ([Intel XE#1033] / [Intel XE#2042])
[147]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-434/igt@kms_pm_rpm@system-suspend-modeset.html
* igt@kms_psr2_sf@fbc-pr-cursor-plane-move-continuous-sf:
- shard-bmg: NOTRUN -> [SKIP][148] ([Intel XE#1489]) +8 other tests skip
[148]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-1/igt@kms_psr2_sf@fbc-pr-cursor-plane-move-continuous-sf.html
* igt@kms_psr2_sf@pr-overlay-plane-move-continuous-sf:
- shard-lnl: NOTRUN -> [SKIP][149] ([Intel XE#2893]) +3 other tests skip
[149]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-7/igt@kms_psr2_sf@pr-overlay-plane-move-continuous-sf.html
* igt@kms_psr2_sf@psr2-cursor-plane-move-continuous-exceed-fully-sf:
- shard-dg2-set2: NOTRUN -> [SKIP][150] ([Intel XE#1489]) +7 other tests skip
[150]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-463/igt@kms_psr2_sf@psr2-cursor-plane-move-continuous-exceed-fully-sf.html
* igt@kms_psr2_su@page_flip-p010:
- shard-bmg: NOTRUN -> [SKIP][151] ([Intel XE#2387])
[151]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-1/igt@kms_psr2_su@page_flip-p010.html
- shard-lnl: NOTRUN -> [SKIP][152] ([Intel XE#1128])
[152]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-5/igt@kms_psr2_su@page_flip-p010.html
* igt@kms_psr@fbc-psr-sprite-render:
- shard-dg2-set2: NOTRUN -> [SKIP][153] ([Intel XE#2850] / [Intel XE#929]) +19 other tests skip
[153]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-463/igt@kms_psr@fbc-psr-sprite-render.html
* igt@kms_psr@pr-no-drrs:
- shard-lnl: NOTRUN -> [SKIP][154] ([Intel XE#1406]) +6 other tests skip
[154]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-7/igt@kms_psr@pr-no-drrs.html
* igt@kms_psr@psr-primary-page-flip:
- shard-bmg: NOTRUN -> [SKIP][155] ([Intel XE#2234] / [Intel XE#2850]) +15 other tests skip
[155]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-5/igt@kms_psr@psr-primary-page-flip.html
* igt@kms_psr@psr2-dpms:
- shard-lnl: [PASS][156] -> [FAIL][157] ([Intel XE#3924]) +3 other tests fail
[156]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-lnl-4/igt@kms_psr@psr2-dpms.html
[157]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-5/igt@kms_psr@psr2-dpms.html
* igt@kms_rotation_crc@bad-tiling:
- shard-dg2-set2: NOTRUN -> [SKIP][158] ([Intel XE#3414]) +2 other tests skip
[158]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-466/igt@kms_rotation_crc@bad-tiling.html
* igt@kms_rotation_crc@primary-rotation-90:
- shard-bmg: NOTRUN -> [SKIP][159] ([Intel XE#3414] / [Intel XE#3904]) +1 other test skip
[159]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-7/igt@kms_rotation_crc@primary-rotation-90.html
- shard-lnl: NOTRUN -> [SKIP][160] ([Intel XE#3414] / [Intel XE#3904]) +2 other tests skip
[160]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-3/igt@kms_rotation_crc@primary-rotation-90.html
* igt@kms_setmode@invalid-clone-exclusive-crtc:
- shard-bmg: NOTRUN -> [SKIP][161] ([Intel XE#1435])
[161]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-1/igt@kms_setmode@invalid-clone-exclusive-crtc.html
- shard-lnl: NOTRUN -> [SKIP][162] ([Intel XE#1435])
[162]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-7/igt@kms_setmode@invalid-clone-exclusive-crtc.html
* igt@kms_tiled_display@basic-test-pattern:
- shard-bmg: NOTRUN -> [SKIP][163] ([Intel XE#2426])
[163]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-7/igt@kms_tiled_display@basic-test-pattern.html
- shard-dg2-set2: NOTRUN -> [FAIL][164] ([Intel XE#1729])
[164]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-434/igt@kms_tiled_display@basic-test-pattern.html
* igt@kms_tv_load_detect@load-detect:
- shard-dg2-set2: NOTRUN -> [SKIP][165] ([Intel XE#330])
[165]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-434/igt@kms_tv_load_detect@load-detect.html
- shard-lnl: NOTRUN -> [SKIP][166] ([Intel XE#330])
[166]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-4/igt@kms_tv_load_detect@load-detect.html
- shard-bmg: NOTRUN -> [SKIP][167] ([Intel XE#2450])
[167]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-1/igt@kms_tv_load_detect@load-detect.html
* igt@xe_compute@ccs-mode-compute-kernel:
- shard-lnl: NOTRUN -> [SKIP][168] ([Intel XE#1447])
[168]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-7/igt@xe_compute@ccs-mode-compute-kernel.html
* igt@xe_eudebug@basic-close:
- shard-dg2-set2: NOTRUN -> [SKIP][169] ([Intel XE#2905]) +11 other tests skip
[169]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-464/igt@xe_eudebug@basic-close.html
* igt@xe_eudebug@basic-read-event:
- shard-bmg: NOTRUN -> [SKIP][170] ([Intel XE#2905]) +12 other tests skip
[170]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-1/igt@xe_eudebug@basic-read-event.html
* igt@xe_eudebug@discovery-empty-clients:
- shard-lnl: NOTRUN -> [SKIP][171] ([Intel XE#2905]) +13 other tests skip
[171]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-8/igt@xe_eudebug@discovery-empty-clients.html
* igt@xe_evict@evict-beng-large-multi-vm:
- shard-dg2-set2: NOTRUN -> [DMESG-WARN][172] ([Intel XE#1033] / [Intel XE#1473])
[172]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-463/igt@xe_evict@evict-beng-large-multi-vm.html
* igt@xe_evict_ccs@evict-overcommit-standalone-instantfree-reopen:
- shard-lnl: NOTRUN -> [SKIP][173] ([Intel XE#688]) +5 other tests skip
[173]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-5/igt@xe_evict_ccs@evict-overcommit-standalone-instantfree-reopen.html
* igt@xe_exec_basic@multigpu-many-execqueues-many-vm-bindexecqueue-userptr:
- shard-bmg: NOTRUN -> [SKIP][174] ([Intel XE#2322]) +11 other tests skip
[174]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-4/igt@xe_exec_basic@multigpu-many-execqueues-many-vm-bindexecqueue-userptr.html
* igt@xe_exec_basic@multigpu-once-userptr-invalidate:
- shard-lnl: NOTRUN -> [SKIP][175] ([Intel XE#1392]) +12 other tests skip
[175]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-6/igt@xe_exec_basic@multigpu-once-userptr-invalidate.html
* igt@xe_exec_fault_mode@many-userptr:
- shard-dg2-set2: NOTRUN -> [SKIP][176] ([Intel XE#288]) +24 other tests skip
[176]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-464/igt@xe_exec_fault_mode@many-userptr.html
* igt@xe_exec_mix_modes@exec-simple-batch-store-lr:
- shard-dg2-set2: NOTRUN -> [SKIP][177] ([Intel XE#2360]) +2 other tests skip
[177]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-433/igt@xe_exec_mix_modes@exec-simple-batch-store-lr.html
* igt@xe_exec_sip_eudebug@wait-writesip-nodebug@drm_xe_engine_class_render0:
- shard-bmg: [PASS][178] -> [DMESG-WARN][179] ([Intel XE#4172]) +75 other tests dmesg-warn
[178]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-bmg-4/igt@xe_exec_sip_eudebug@wait-writesip-nodebug@drm_xe_engine_class_render0.html
[179]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-4/igt@xe_exec_sip_eudebug@wait-writesip-nodebug@drm_xe_engine_class_render0.html
* igt@xe_live_ktest@xe_migrate:
- shard-lnl: NOTRUN -> [SKIP][180] ([Intel XE#1192])
[180]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-5/igt@xe_live_ktest@xe_migrate.html
* igt@xe_live_ktest@xe_migrate@xe_validate_ccs_kunit:
- shard-dg2-set2: NOTRUN -> [SKIP][181] ([Intel XE#2229])
[181]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-466/igt@xe_live_ktest@xe_migrate@xe_validate_ccs_kunit.html
* igt@xe_mmap@small-bar:
- shard-lnl: NOTRUN -> [SKIP][182] ([Intel XE#512])
[182]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-4/igt@xe_mmap@small-bar.html
* igt@xe_mmap@vram:
- shard-lnl: NOTRUN -> [SKIP][183] ([Intel XE#1416])
[183]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-5/igt@xe_mmap@vram.html
* igt@xe_module_load@force-load:
- shard-bmg: NOTRUN -> [SKIP][184] ([Intel XE#2457])
[184]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-7/igt@xe_module_load@force-load.html
- shard-dg2-set2: NOTRUN -> [SKIP][185] ([Intel XE#378])
[185]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-464/igt@xe_module_load@force-load.html
- shard-lnl: NOTRUN -> [SKIP][186] ([Intel XE#378])
[186]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-7/igt@xe_module_load@force-load.html
* igt@xe_oa@non-privileged-map-oa-buffer:
- shard-dg2-set2: NOTRUN -> [SKIP][187] ([Intel XE#2541] / [Intel XE#3573]) +4 other tests skip
[187]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-466/igt@xe_oa@non-privileged-map-oa-buffer.html
* igt@xe_pat@display-vs-wb-transient:
- shard-dg2-set2: NOTRUN -> [SKIP][188] ([Intel XE#1337])
[188]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-434/igt@xe_pat@display-vs-wb-transient.html
* igt@xe_pm@d3cold-mocs:
- shard-bmg: NOTRUN -> [SKIP][189] ([Intel XE#2284])
[189]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-4/igt@xe_pm@d3cold-mocs.html
- shard-dg2-set2: NOTRUN -> [SKIP][190] ([Intel XE#2284])
[190]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-464/igt@xe_pm@d3cold-mocs.html
- shard-lnl: NOTRUN -> [SKIP][191] ([Intel XE#2284])
[191]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-7/igt@xe_pm@d3cold-mocs.html
* igt@xe_pm@d3cold-multiple-execs:
- shard-dg2-set2: NOTRUN -> [SKIP][192] ([Intel XE#2284] / [Intel XE#366])
[192]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-433/igt@xe_pm@d3cold-multiple-execs.html
* igt@xe_pm@s3-multiple-execs:
- shard-dg2-set2: NOTRUN -> [DMESG-WARN][193] ([Intel XE#1033] / [Intel XE#569])
[193]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-433/igt@xe_pm@s3-multiple-execs.html
* igt@xe_pm@s3-vm-bind-unbind-all:
- shard-dg2-set2: [PASS][194] -> [DMESG-WARN][195] ([Intel XE#1033] / [Intel XE#569]) +1 other test dmesg-warn
[194]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-dg2-433/igt@xe_pm@s3-vm-bind-unbind-all.html
[195]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-463/igt@xe_pm@s3-vm-bind-unbind-all.html
* igt@xe_pm@s3-vm-bind-userptr:
- shard-bmg: [PASS][196] -> [DMESG-WARN][197] ([Intel XE#4172] / [Intel XE#569]) +2 other tests dmesg-warn
[196]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-bmg-7/igt@xe_pm@s3-vm-bind-userptr.html
[197]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-1/igt@xe_pm@s3-vm-bind-userptr.html
* igt@xe_query@multigpu-query-invalid-extension:
- shard-bmg: NOTRUN -> [SKIP][198] ([Intel XE#944]) +2 other tests skip
[198]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-4/igt@xe_query@multigpu-query-invalid-extension.html
* igt@xe_query@multigpu-query-topology:
- shard-lnl: NOTRUN -> [SKIP][199] ([Intel XE#944]) +1 other test skip
[199]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-5/igt@xe_query@multigpu-query-topology.html
* igt@xe_query@multigpu-query-uc-fw-version-guc:
- shard-dg2-set2: NOTRUN -> [SKIP][200] ([Intel XE#944]) +2 other tests skip
[200]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-464/igt@xe_query@multigpu-query-uc-fw-version-guc.html
* igt@xe_sriov_auto_provisioning@resources-released-on-vfs-disabling:
- shard-bmg: NOTRUN -> [SKIP][201] ([Intel XE#4130])
[201]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-4/igt@xe_sriov_auto_provisioning@resources-released-on-vfs-disabling.html
- shard-dg2-set2: NOTRUN -> [SKIP][202] ([Intel XE#4130])
[202]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-466/igt@xe_sriov_auto_provisioning@resources-released-on-vfs-disabling.html
- shard-lnl: NOTRUN -> [SKIP][203] ([Intel XE#4130])
[203]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-4/igt@xe_sriov_auto_provisioning@resources-released-on-vfs-disabling.html
* igt@xe_sriov_flr@flr-vf1-clear:
- shard-dg2-set2: NOTRUN -> [SKIP][204] ([Intel XE#3342])
[204]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-463/igt@xe_sriov_flr@flr-vf1-clear.html
* igt@xe_wedged@wedged-mode-toggle:
- shard-dg2-set2: NOTRUN -> [ABORT][205] ([Intel XE#3075] / [Intel XE#3084])
[205]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-464/igt@xe_wedged@wedged-mode-toggle.html
#### Possible fixes ####
* igt@kms_async_flips@alternate-sync-async-flip-atomic:
- shard-bmg: [FAIL][206] ([Intel XE#3701] / [Intel XE#3718] / [Intel XE#827]) -> [PASS][207]
[206]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-bmg-5/igt@kms_async_flips@alternate-sync-async-flip-atomic.html
[207]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-7/igt@kms_async_flips@alternate-sync-async-flip-atomic.html
* igt@kms_async_flips@alternate-sync-async-flip-atomic@pipe-d-dp-2:
- shard-bmg: [FAIL][208] ([Intel XE#3746] / [Intel XE#827]) -> [PASS][209]
[208]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-bmg-5/igt@kms_async_flips@alternate-sync-async-flip-atomic@pipe-d-dp-2.html
[209]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-7/igt@kms_async_flips@alternate-sync-async-flip-atomic@pipe-d-dp-2.html
* igt@kms_bw@connected-linear-tiling-2-displays-1920x1080p:
- shard-bmg: [SKIP][210] ([Intel XE#2314] / [Intel XE#2894]) -> [PASS][211] +1 other test pass
[210]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-bmg-4/igt@kms_bw@connected-linear-tiling-2-displays-1920x1080p.html
[211]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-5/igt@kms_bw@connected-linear-tiling-2-displays-1920x1080p.html
* igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-rc-ccs-cc:
- shard-dg2-set2: [DMESG-WARN][212] -> [PASS][213] +1 other test pass
[212]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-dg2-466/igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-rc-ccs-cc.html
[213]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-434/igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-rc-ccs-cc.html
* igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-rc-ccs-cc@pipe-d-dp-4:
- shard-dg2-set2: [DMESG-WARN][214] ([Intel XE#1033]) -> [PASS][215] +32 other tests pass
[214]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-dg2-466/igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-rc-ccs-cc@pipe-d-dp-4.html
[215]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-434/igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-rc-ccs-cc@pipe-d-dp-4.html
* igt@kms_cursor_legacy@2x-long-cursor-vs-flip-atomic:
- shard-dg2-set2: [SKIP][216] ([Intel XE#309]) -> [PASS][217] +1 other test pass
[216]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-dg2-464/igt@kms_cursor_legacy@2x-long-cursor-vs-flip-atomic.html
[217]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-433/igt@kms_cursor_legacy@2x-long-cursor-vs-flip-atomic.html
* igt@kms_cursor_legacy@cursora-vs-flipb-toggle:
- shard-bmg: [SKIP][218] ([Intel XE#2291]) -> [PASS][219]
[218]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-bmg-4/igt@kms_cursor_legacy@cursora-vs-flipb-toggle.html
[219]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-7/igt@kms_cursor_legacy@cursora-vs-flipb-toggle.html
* igt@kms_dp_aux_dev:
- shard-dg2-set2: [SKIP][220] ([Intel XE#3009]) -> [PASS][221]
[220]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-dg2-464/igt@kms_dp_aux_dev.html
[221]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-466/igt@kms_dp_aux_dev.html
* igt@kms_feature_discovery@display-2x:
- shard-bmg: [SKIP][222] ([Intel XE#2373]) -> [PASS][223]
[222]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-bmg-4/igt@kms_feature_discovery@display-2x.html
[223]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-5/igt@kms_feature_discovery@display-2x.html
* igt@kms_flip@2x-flip-vs-wf_vblank-interruptible:
- shard-dg2-set2: [SKIP][224] ([Intel XE#310]) -> [PASS][225] +1 other test pass
[224]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-dg2-464/igt@kms_flip@2x-flip-vs-wf_vblank-interruptible.html
[225]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-433/igt@kms_flip@2x-flip-vs-wf_vblank-interruptible.html
* igt@kms_flip@2x-plain-flip-fb-recreate-interruptible:
- shard-bmg: [SKIP][226] ([Intel XE#2316]) -> [PASS][227] +4 other tests pass
[226]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-bmg-4/igt@kms_flip@2x-plain-flip-fb-recreate-interruptible.html
[227]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-7/igt@kms_flip@2x-plain-flip-fb-recreate-interruptible.html
* igt@kms_flip@flip-vs-absolute-wf_vblank:
- shard-lnl: [FAIL][228] ([Intel XE#886]) -> [PASS][229] +2 other tests pass
[228]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-lnl-2/igt@kms_flip@flip-vs-absolute-wf_vblank.html
[229]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-3/igt@kms_flip@flip-vs-absolute-wf_vblank.html
* igt@kms_flip@flip-vs-expired-vblank-interruptible@b-hdmi-a6:
- shard-dg2-set2: [FAIL][230] ([Intel XE#301]) -> [PASS][231]
[230]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-dg2-464/igt@kms_flip@flip-vs-expired-vblank-interruptible@b-hdmi-a6.html
[231]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-433/igt@kms_flip@flip-vs-expired-vblank-interruptible@b-hdmi-a6.html
* igt@kms_flip@flip-vs-expired-vblank@d-hdmi-a3:
- shard-bmg: [DMESG-FAIL][232] ([Intel XE#4172]) -> [PASS][233] +1 other test pass
[232]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-bmg-5/igt@kms_flip@flip-vs-expired-vblank@d-hdmi-a3.html
[233]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-7/igt@kms_flip@flip-vs-expired-vblank@d-hdmi-a3.html
* igt@kms_flip@single-buffer-flip-vs-dpms-off-vs-modeset-interruptible:
- shard-bmg: [DMESG-WARN][234] -> [PASS][235]
[234]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-bmg-5/igt@kms_flip@single-buffer-flip-vs-dpms-off-vs-modeset-interruptible.html
[235]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-5/igt@kms_flip@single-buffer-flip-vs-dpms-off-vs-modeset-interruptible.html
* igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-cur-indfb-draw-render:
- shard-dg2-set2: [SKIP][236] ([Intel XE#656]) -> [PASS][237] +3 other tests pass
[236]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-dg2-464/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-cur-indfb-draw-render.html
[237]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-463/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-cur-indfb-draw-render.html
* igt@kms_pipe_crc_basic@suspend-read-crc:
- shard-bmg: [INCOMPLETE][238] ([Intel XE#3663] / [Intel XE#4016]) -> [PASS][239]
[238]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-bmg-4/igt@kms_pipe_crc_basic@suspend-read-crc.html
[239]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-7/igt@kms_pipe_crc_basic@suspend-read-crc.html
* igt@kms_pipe_crc_basic@suspend-read-crc@pipe-c-dp-2:
- shard-bmg: [INCOMPLETE][240] ([Intel XE#3663]) -> [PASS][241]
[240]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-bmg-4/igt@kms_pipe_crc_basic@suspend-read-crc@pipe-c-dp-2.html
[241]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-7/igt@kms_pipe_crc_basic@suspend-read-crc@pipe-c-dp-2.html
* igt@kms_pm_dc@dc5-psr:
- shard-lnl: [FAIL][242] ([Intel XE#718]) -> [PASS][243]
[242]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-lnl-8/igt@kms_pm_dc@dc5-psr.html
[243]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-lnl-2/igt@kms_pm_dc@dc5-psr.html
* igt@kms_vblank@ts-continuation-suspend:
- shard-bmg: [DMESG-WARN][244] ([Intel XE#4172]) -> [PASS][245] +26 other tests pass
[244]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-bmg-4/igt@kms_vblank@ts-continuation-suspend.html
[245]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-5/igt@kms_vblank@ts-continuation-suspend.html
* igt@xe_evict@evict-small-cm:
- shard-dg2-set2: [DMESG-WARN][246] ([Intel XE#1033] / [Intel XE#1473]) -> [PASS][247]
[246]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-dg2-432/igt@xe_evict@evict-small-cm.html
[247]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-434/igt@xe_evict@evict-small-cm.html
* igt@xe_exec_basic@multigpu-no-exec-basic-defer-mmap:
- shard-dg2-set2: [SKIP][248] ([Intel XE#1392]) -> [PASS][249] +4 other tests pass
[248]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-dg2-432/igt@xe_exec_basic@multigpu-no-exec-basic-defer-mmap.html
[249]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-466/igt@xe_exec_basic@multigpu-no-exec-basic-defer-mmap.html
#### Warnings ####
* igt@kms_ccs@ccs-on-another-bo-yf-tiled-ccs@pipe-d-hdmi-a-6:
- shard-dg2-set2: [SKIP][250] ([Intel XE#787]) -> [SKIP][251] ([Intel XE#455] / [Intel XE#787]) +2 other tests skip
[250]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-dg2-466/igt@kms_ccs@ccs-on-another-bo-yf-tiled-ccs@pipe-d-hdmi-a-6.html
[251]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-464/igt@kms_ccs@ccs-on-another-bo-yf-tiled-ccs@pipe-d-hdmi-a-6.html
* igt@kms_ccs@random-ccs-data-4-tiled-mtl-mc-ccs@pipe-d-hdmi-a-6:
- shard-dg2-set2: [SKIP][252] ([Intel XE#455] / [Intel XE#787]) -> [SKIP][253] ([Intel XE#787]) +3 other tests skip
[252]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-dg2-464/igt@kms_ccs@random-ccs-data-4-tiled-mtl-mc-ccs@pipe-d-hdmi-a-6.html
[253]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-466/igt@kms_ccs@random-ccs-data-4-tiled-mtl-mc-ccs@pipe-d-hdmi-a-6.html
* igt@kms_cursor_legacy@cursorb-vs-flipa-atomic-transitions:
- shard-dg2-set2: [DMESG-WARN][254] ([Intel XE#1033]) -> [SKIP][255] ([Intel XE#309]) +1 other test skip
[254]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-dg2-463/igt@kms_cursor_legacy@cursorb-vs-flipa-atomic-transitions.html
[255]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-464/igt@kms_cursor_legacy@cursorb-vs-flipa-atomic-transitions.html
- shard-bmg: [DMESG-WARN][256] ([Intel XE#4172]) -> [SKIP][257] ([Intel XE#2291])
[256]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-bmg-5/igt@kms_cursor_legacy@cursorb-vs-flipa-atomic-transitions.html
[257]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-4/igt@kms_cursor_legacy@cursorb-vs-flipa-atomic-transitions.html
* igt@kms_cursor_legacy@cursorb-vs-flipa-legacy:
- shard-dg2-set2: [SKIP][258] ([Intel XE#309]) -> [DMESG-WARN][259] ([Intel XE#1033]) +1 other test dmesg-warn
[258]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-dg2-464/igt@kms_cursor_legacy@cursorb-vs-flipa-legacy.html
[259]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-463/igt@kms_cursor_legacy@cursorb-vs-flipa-legacy.html
* igt@kms_flip@2x-dpms-vs-vblank-race-interruptible:
- shard-dg2-set2: [SKIP][260] ([Intel XE#310]) -> [DMESG-WARN][261] ([Intel XE#2955])
[260]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-dg2-464/igt@kms_flip@2x-dpms-vs-vblank-race-interruptible.html
[261]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-466/igt@kms_flip@2x-dpms-vs-vblank-race-interruptible.html
* igt@kms_flip@2x-flip-vs-absolute-wf_vblank:
- shard-dg2-set2: [DMESG-WARN][262] ([Intel XE#1033]) -> [SKIP][263] ([Intel XE#310])
[262]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-dg2-432/igt@kms_flip@2x-flip-vs-absolute-wf_vblank.html
[263]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-464/igt@kms_flip@2x-flip-vs-absolute-wf_vblank.html
* igt@kms_flip@2x-flip-vs-expired-vblank:
- shard-bmg: [FAIL][264] ([Intel XE#3321]) -> [SKIP][265] ([Intel XE#2316])
[264]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-bmg-7/igt@kms_flip@2x-flip-vs-expired-vblank.html
[265]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-4/igt@kms_flip@2x-flip-vs-expired-vblank.html
* igt@kms_flip@2x-plain-flip-interruptible:
- shard-dg2-set2: [SKIP][266] ([Intel XE#310]) -> [DMESG-WARN][267] ([Intel XE#1033])
[266]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-dg2-464/igt@kms_flip@2x-plain-flip-interruptible.html
[267]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-463/igt@kms_flip@2x-plain-flip-interruptible.html
* igt@kms_flip@2x-wf_vblank-ts-check-interruptible:
- shard-bmg: [SKIP][268] ([Intel XE#2316]) -> [DMESG-WARN][269] ([Intel XE#4172]) +1 other test dmesg-warn
[268]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-bmg-4/igt@kms_flip@2x-wf_vblank-ts-check-interruptible.html
[269]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-1/igt@kms_flip@2x-wf_vblank-ts-check-interruptible.html
* igt@kms_flip@flip-vs-expired-vblank:
- shard-dg2-set2: [DMESG-FAIL][270] ([Intel XE#1033]) -> [FAIL][271] ([Intel XE#301])
[270]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-dg2-463/igt@kms_flip@flip-vs-expired-vblank.html
[271]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-464/igt@kms_flip@flip-vs-expired-vblank.html
* igt@kms_frontbuffer_tracking@drrs-2p-pri-indfb-multidraw:
- shard-bmg: [SKIP][272] ([Intel XE#2311]) -> [SKIP][273] ([Intel XE#2312]) +15 other tests skip
[272]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-bmg-5/igt@kms_frontbuffer_tracking@drrs-2p-pri-indfb-multidraw.html
[273]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-4/igt@kms_frontbuffer_tracking@drrs-2p-pri-indfb-multidraw.html
* igt@kms_frontbuffer_tracking@drrs-2p-primscrn-pri-indfb-draw-mmap-wc:
- shard-bmg: [SKIP][274] ([Intel XE#2312]) -> [SKIP][275] ([Intel XE#2311]) +7 other tests skip
[274]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-bmg-4/igt@kms_frontbuffer_tracking@drrs-2p-primscrn-pri-indfb-draw-mmap-wc.html
[275]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-7/igt@kms_frontbuffer_tracking@drrs-2p-primscrn-pri-indfb-draw-mmap-wc.html
* igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-render:
- shard-bmg: [SKIP][276] ([Intel XE#4141]) -> [SKIP][277] ([Intel XE#2312]) +6 other tests skip
[276]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-bmg-1/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-render.html
[277]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-4/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-render.html
* igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-move:
- shard-bmg: [SKIP][278] ([Intel XE#2312]) -> [SKIP][279] ([Intel XE#4141]) +3 other tests skip
[278]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-bmg-4/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-move.html
[279]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-7/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-move.html
* igt@kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-pri-shrfb-draw-blt:
- shard-dg2-set2: [SKIP][280] ([Intel XE#656]) -> [SKIP][281] ([Intel XE#651]) +7 other tests skip
[280]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-dg2-464/igt@kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-pri-shrfb-draw-blt.html
[281]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-433/igt@kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-pri-shrfb-draw-blt.html
* igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-cur-indfb-draw-blt:
- shard-dg2-set2: [SKIP][282] ([Intel XE#651]) -> [SKIP][283] ([Intel XE#656]) +11 other tests skip
[282]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-dg2-433/igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-cur-indfb-draw-blt.html
[283]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-464/igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-cur-indfb-draw-blt.html
* igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-cur-indfb-draw-blt:
- shard-bmg: [SKIP][284] ([Intel XE#2312]) -> [SKIP][285] ([Intel XE#2313]) +8 other tests skip
[284]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-bmg-4/igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-cur-indfb-draw-blt.html
[285]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-7/igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-cur-indfb-draw-blt.html
* igt@kms_frontbuffer_tracking@psr-2p-primscrn-cur-indfb-onoff:
- shard-bmg: [SKIP][286] ([Intel XE#2313]) -> [SKIP][287] ([Intel XE#2312]) +9 other tests skip
[286]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-bmg-7/igt@kms_frontbuffer_tracking@psr-2p-primscrn-cur-indfb-onoff.html
[287]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-4/igt@kms_frontbuffer_tracking@psr-2p-primscrn-cur-indfb-onoff.html
* igt@kms_frontbuffer_tracking@psr-2p-primscrn-pri-shrfb-draw-mmap-wc:
- shard-dg2-set2: [SKIP][288] ([Intel XE#656]) -> [SKIP][289] ([Intel XE#653]) +6 other tests skip
[288]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-dg2-464/igt@kms_frontbuffer_tracking@psr-2p-primscrn-pri-shrfb-draw-mmap-wc.html
[289]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-463/igt@kms_frontbuffer_tracking@psr-2p-primscrn-pri-shrfb-draw-mmap-wc.html
* igt@kms_frontbuffer_tracking@psr-2p-primscrn-shrfb-plflip-blt:
- shard-dg2-set2: [SKIP][290] ([Intel XE#653]) -> [SKIP][291] ([Intel XE#656]) +7 other tests skip
[290]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-dg2-466/igt@kms_frontbuffer_tracking@psr-2p-primscrn-shrfb-plflip-blt.html
[291]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-464/igt@kms_frontbuffer_tracking@psr-2p-primscrn-shrfb-plflip-blt.html
* igt@xe_evict@evict-large-multi-vm:
- shard-bmg: [DMESG-WARN][292] ([Intel XE#4172]) -> [DMESG-WARN][293] ([Intel XE#1473] / [Intel XE#4172])
[292]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-bmg-5/igt@xe_evict@evict-large-multi-vm.html
[293]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-4/igt@xe_evict@evict-large-multi-vm.html
* igt@xe_pm@s4-mocs:
- shard-dg2-set2: [ABORT][294] ([Intel XE#1033] / [Intel XE#4268]) -> [ABORT][295] ([Intel XE#4268])
[294]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-dg2-433/igt@xe_pm@s4-mocs.html
[295]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-464/igt@xe_pm@s4-mocs.html
* igt@xe_pm@s4-vm-bind-userptr:
- shard-dg2-set2: [ABORT][296] ([Intel XE#4268]) -> [ABORT][297] ([Intel XE#1033] / [Intel XE#4268]) +1 other test abort
[296]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-dg2-434/igt@xe_pm@s4-vm-bind-userptr.html
[297]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-dg2-464/igt@xe_pm@s4-vm-bind-userptr.html
- shard-bmg: [ABORT][298] ([Intel XE#4268]) -> [ABORT][299] ([Intel XE#4172] / [Intel XE#4268])
[298]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8230/shard-bmg-1/igt@xe_pm@s4-vm-bind-userptr.html
[299]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/shard-bmg-4/igt@xe_pm@s4-vm-bind-userptr.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[Intel XE#1033]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1033
[Intel XE#1122]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1122
[Intel XE#1124]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1124
[Intel XE#1128]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1128
[Intel XE#1178]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1178
[Intel XE#1192]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1192
[Intel XE#1337]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1337
[Intel XE#1392]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1392
[Intel XE#1397]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1397
[Intel XE#1401]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1401
[Intel XE#1406]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1406
[Intel XE#1407]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1407
[Intel XE#1416]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1416
[Intel XE#1421]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1421
[Intel XE#1424]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1424
[Intel XE#1435]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1435
[Intel XE#1439]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1439
[Intel XE#1447]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1447
[Intel XE#1470]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1470
[Intel XE#1473]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1473
[Intel XE#1477]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1477
[Intel XE#1489]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1489
[Intel XE#1503]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1503
[Intel XE#1512]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1512
[Intel XE#1727]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1727
[Intel XE#1729]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1729
[Intel XE#1745]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1745
[Intel XE#2042]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2042
[Intel XE#2191]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2191
[Intel XE#2229]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2229
[Intel XE#2234]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2234
[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#2286]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2286
[Intel XE#2291]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2291
[Intel XE#2293]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2293
[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#2314]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2314
[Intel XE#2316]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2316
[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#2360]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2360
[Intel XE#2373]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2373
[Intel XE#2374]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2374
[Intel XE#2380]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2380
[Intel XE#2387]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2387
[Intel XE#2391]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2391
[Intel XE#2426]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2426
[Intel XE#2450]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2450
[Intel XE#2457]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2457
[Intel XE#2493]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2493
[Intel XE#2541]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2541
[Intel XE#2669]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2669
[Intel XE#2763]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2763
[Intel XE#2850]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2850
[Intel XE#2853]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2853
[Intel XE#288]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/288
[Intel XE#2882]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2882
[Intel XE#2887]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2887
[Intel XE#2893]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2893
[Intel XE#2894]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2894
[Intel XE#2905]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2905
[Intel XE#2907]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2907
[Intel XE#2925]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2925
[Intel XE#2934]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2934
[Intel XE#2955]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2955
[Intel XE#3009]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3009
[Intel XE#301]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/301
[Intel XE#306]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/306
[Intel XE#3075]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3075
[Intel XE#3084]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3084
[Intel XE#309]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/309
[Intel XE#310]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/310
[Intel XE#3113]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3113
[Intel XE#3124]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3124
[Intel XE#314]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/314
[Intel XE#3141]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3141
[Intel XE#3157]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3157
[Intel XE#316]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/316
[Intel XE#323]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/323
[Intel XE#3278]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3278
[Intel XE#3279]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3279
[Intel XE#330]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/330
[Intel XE#3304]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3304
[Intel XE#3307]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3307
[Intel XE#3309]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3309
[Intel XE#3321]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3321
[Intel XE#3342]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3342
[Intel XE#3414]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3414
[Intel XE#3432]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3432
[Intel XE#3442]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3442
[Intel XE#346]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/346
[Intel XE#352]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/352
[Intel XE#3573]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3573
[Intel XE#366]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/366
[Intel XE#3663]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3663
[Intel XE#367]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/367
[Intel XE#3701]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3701
[Intel XE#3718]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3718
[Intel XE#3719]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3719
[Intel XE#373]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/373
[Intel XE#3746]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3746
[Intel XE#378]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/378
[Intel XE#3904]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3904
[Intel XE#3914]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3914
[Intel XE#3924]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3924
[Intel XE#4010]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4010
[Intel XE#4016]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4016
[Intel XE#4130]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4130
[Intel XE#4141]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4141
[Intel XE#4172]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4172
[Intel XE#4212]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4212
[Intel XE#4268]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4268
[Intel XE#4302]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4302
[Intel XE#455]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/455
[Intel XE#512]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/512
[Intel XE#569]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/569
[Intel XE#607]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/607
[Intel XE#616]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/616
[Intel XE#651]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/651
[Intel XE#653]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/653
[Intel XE#656]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/656
[Intel XE#688]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/688
[Intel XE#718]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/718
[Intel XE#736]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/736
[Intel XE#787]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/787
[Intel XE#827]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/827
[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#886]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/886
[Intel XE#911]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/911
[Intel XE#929]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/929
[Intel XE#944]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/944
Build changes
-------------
* IGT: IGT_8230 -> IGTPW_12602
* Linux: xe-2665-57457d93f156d8b4bdff8d138127d81b8f97d8c9 -> xe-2668-200d035cec6632bcb33ad946aa7bfec6309d2ab6
IGTPW_12602: a2d5e641e6e8d764681c10adbfbe02197d310f97 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
IGT_8230: 8230
xe-2665-57457d93f156d8b4bdff8d138127d81b8f97d8c9: 57457d93f156d8b4bdff8d138127d81b8f97d8c9
xe-2668-200d035cec6632bcb33ad946aa7bfec6309d2ab6: 200d035cec6632bcb33ad946aa7bfec6309d2ab6
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12602/index.html
[-- Attachment #2: Type: text/html, Size: 94929 bytes --]
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH i-g-t v2] Add single engine busyness stats in GPUTOP
2025-02-14 16:32 [PATCH i-g-t v2] Add single engine busyness stats in GPUTOP Soham Purkait
` (3 preceding siblings ...)
2025-02-16 1:02 ` ✗ Xe.CI.Full: " Patchwork
@ 2025-02-17 14:46 ` Kamil Konieczny
2025-02-21 4:17 ` Belgaumkar, Vinay
5 siblings, 0 replies; 8+ messages in thread
From: Kamil Konieczny @ 2025-02-17 14:46 UTC (permalink / raw)
To: Soham Purkait
Cc: igt-dev, riana.tauro, lucas.demarchi, vinay.belgaumkar,
anshuman.gupta, rodrigo.vivi
Hi Soham,
On 2025-02-14 at 22:02:00 +0530, Soham Purkait wrote:
> Add single engine busyness support in GPUTOP.
> This uses the PMU interface to display the
> busyness of each engine instances.
I didn't read all your patch, only looked in few places.
>
> ENGINES BUSY
> Render/3D/0 | 96.5% ███████████████████████████████████████▍|
> Blitter/0 | 91.6% █████████████████████████████████████ |
> Video/0 | 56.2% ███████████████████████████ |
> VideoEnhance/0| 97.7% ████████████████████████████████████████|
> Compute/0 | 48.5% ███████████████████████▍ |
>
> v1 : fixed cosmetic issues
>
> v2 : fix for refactoring GPUTOP into a
> vendor-agnostic tool (Lucas)
>
> ---
> lib/igt_device_scan.c | 82 ++++++++
> lib/igt_device_scan.h | 5 +
Please send changes to this lib in separate patch.
> lib/igt_perf.c | 53 ++++++
> lib/igt_perf.h | 2 +
Same here.
> tools/gputop/common_gputop.c | 51 +++++
> tools/gputop/common_gputop.h | 16 ++
> tools/{ => gputop}/gputop.c | 246 ++++++++++++++++++++----
> tools/gputop/meson.build | 6 +
> tools/gputop/xe_gputop.c | 359 +++++++++++++++++++++++++++++++++++
> tools/gputop/xe_gputop.h | 74 ++++++++
> tools/meson.build | 6 +-
> 11 files changed, 858 insertions(+), 42 deletions(-)
> create mode 100644 tools/gputop/common_gputop.c
> create mode 100644 tools/gputop/common_gputop.h
> rename tools/{ => gputop}/gputop.c (65%)
> create mode 100644 tools/gputop/meson.build
> create mode 100644 tools/gputop/xe_gputop.c
> create mode 100644 tools/gputop/xe_gputop.h
>
> diff --git a/lib/igt_device_scan.c b/lib/igt_device_scan.c
> index 711bedc5c..c71db0094 100644
> --- a/lib/igt_device_scan.c
> +++ b/lib/igt_device_scan.c
> @@ -773,6 +773,9 @@ __copy_dev_to_card(struct igt_device *dev, struct igt_device_card *card)
> if (dev->drm_render != NULL)
> safe_strncpy(card->render, dev->drm_render,
> sizeof(card->render));
> + if (dev->driver != NULL)
> + safe_strncpy(card->driver, dev->driver,
> + sizeof(card->driver));
>
> if (dev->pci_slot_name != NULL)
> safe_strncpy(card->pci_slot_name, dev->pci_slot_name,
> @@ -820,6 +823,61 @@ static bool __find_first_intel_card_by_driver_name(struct igt_device_card *card,
> return false;
> }
>
> +/*
> + * Iterate over all igt_devices array and find all discrete/integrated card.
> + * @card: double pointer to igt_device_card structure, containing
> + * an array of igt_device_card structure upon successful return.
> + */
> +static int __find_all_intel_card_by_driver_name(struct igt_device_card **card,
> + bool want_discrete, const char *drv_name)
> +{
> + int count = 0;
> + struct igt_device *dev;
> + int is_integrated;
> + struct igt_device_card *tmp;
> + struct igt_device_card *crd =
> + (struct igt_device_card *)calloc(1, sizeof(struct igt_device_card));
> +
> + igt_assert(drv_name);
> + memset(card, 0, sizeof(*card));
> +
> + igt_list_for_each_entry(dev, &igt_devs.all, link) {
> + if (!is_pci_subsystem(dev) || strcmp(dev->driver, drv_name))
> + continue;
> +
> + is_integrated = !strncmp(dev->pci_slot_name, INTEGRATED_I915_GPU_PCI_ID,
> + PCI_SLOT_NAME_SIZE);
> +
> + if (want_discrete && !is_integrated) {
> + __copy_dev_to_card(dev, (crd + count));
> + count++;
> + tmp = realloc(crd, sizeof(struct igt_device_card) * (1 + count));
> + if (!tmp) {
> + free(crd);
> + return -1;
> + }
> + crd = tmp;
> +
> + } else if (!want_discrete && is_integrated) {
> + __copy_dev_to_card(dev, (crd + count));
> + count++;
> + tmp = realloc(crd, sizeof(struct igt_device_card) * (1 + count));
> + if (!tmp) {
> + free(crd);
> + return -1;
> + }
> + crd = tmp;
> + }
> + }
> + if (count == 0) {
> + free(crd);
> + return 0;
> + }
> +
> + *card = crd;
> + return count;
> +}
> +
> bool igt_device_find_first_i915_discrete_card(struct igt_device_card *card)
> {
> igt_assert(card);
> @@ -866,6 +924,30 @@ bool igt_device_find_xe_integrated_card(struct igt_device_card *card)
> return __find_first_intel_card_by_driver_name(card, false, "xe");
> }
>
> +int igt_device_find_all_xe_integrated_card(struct igt_device_card **card)
> +{
> + igt_assert(card);
> + return __find_all_intel_card_by_driver_name(card, false, "xe");
> +}
> +
> +int igt_device_find_all_i915_integrated_card(struct igt_device_card **card)
> +{
> + igt_assert(card);
> + return __find_all_intel_card_by_driver_name(card, false, "i915");
> +}
> +
> +int igt_device_find_all_xe_discrete_card(struct igt_device_card **card)
> +{
> + igt_assert(card);
> + return __find_all_intel_card_by_driver_name(card, true, "xe");
> +}
> +
> +int igt_device_find_all_i915_discrete_card(struct igt_device_card **card)
> +{
> + igt_assert(card);
> + return __find_all_intel_card_by_driver_name(card, true, "i915");
> +}
> +
> static struct igt_device *igt_device_from_syspath(const char *syspath)
> {
> struct igt_device *dev;
> diff --git a/lib/igt_device_scan.h b/lib/igt_device_scan.h
> index 92741fe3c..da107292a 100644
> --- a/lib/igt_device_scan.h
> +++ b/lib/igt_device_scan.h
> @@ -59,6 +59,7 @@ struct igt_device_card {
> char subsystem[NAME_MAX];
> char card[NAME_MAX];
> char render[NAME_MAX];
> + char driver[NAME_MAX];
> char pci_slot_name[PCI_SLOT_NAME_SIZE+1];
> uint16_t pci_vendor, pci_device;
> };
> @@ -92,6 +93,10 @@ bool igt_device_find_first_i915_discrete_card(struct igt_device_card *card);
> bool igt_device_find_integrated_card(struct igt_device_card *card);
> bool igt_device_find_first_xe_discrete_card(struct igt_device_card *card);
> bool igt_device_find_xe_integrated_card(struct igt_device_card *card);
> +int igt_device_find_all_i915_discrete_card(struct igt_device_card **card);
> +int igt_device_find_all_i915_integrated_card(struct igt_device_card **card);
> +int igt_device_find_all_xe_integrated_card(struct igt_device_card **card);
> +int igt_device_find_all_xe_discrete_card(struct igt_device_card **card);
> char *igt_device_get_pretty_name(struct igt_device_card *card, bool numeric);
> int igt_open_card(struct igt_device_card *card);
> int igt_open_render(struct igt_device_card *card);
> diff --git a/lib/igt_perf.c b/lib/igt_perf.c
> index 3866c6d77..3f2f3311f 100644
> --- a/lib/igt_perf.c
> +++ b/lib/igt_perf.c
> @@ -129,6 +129,59 @@ uint64_t igt_perf_type_id(const char *device)
> return strtoull(buf, NULL, 0);
> }
>
> +int igt_perf_format(const char *device, const char *name, char *buff, int buflen)
> +{
> + char buf[NAME_MAX];
> + ssize_t ret;
> + int fd;
> +
> + snprintf(buf, sizeof(buf),
> + "/sys/bus/event_source/devices/%s/format/%s", device, name);
> +
> + fd = open(buf, O_RDONLY);
> + if (fd < 0)
> + return -1;
> +
> + ret = read(fd, buff, buflen - 1);
> + close(fd);
> + if (ret < 1)
> + return -1;
> +
> + buf[ret] = '\0';
> +
> + return 0;
> +}
> +
> +uint64_t xe_perf_event_config(int xe, const char *pmu_str)
Why 'xe_' prefix here? imho this should be 'igt_'
> +{
> + char buf[150];
> + ssize_t ret;
> + int fd;
> + uint64_t config;
> + char device[30];
> +
> + snprintf(buf, sizeof(buf),
> + "/sys/bus/event_source/devices/%s/events/%s",
> + xe_perf_device(xe, device, sizeof(device)),
This looks generic, not restricted to Xe driver.
> + pmu_str);
> +
> + fd = open(buf, O_RDONLY);
> + if (fd < 0)
> + return 0;
> +
> + ret = read(fd, buf, sizeof(buf) - 1);
> + close(fd);
> + if (ret < 1)
> + return 0;
> +
> + buf[ret] = '\0';
> + ret = sscanf(buf, "event=0x%lx", &config);
> + if (ret != 1)
> + return 0;
> +
> + return config;
> +}
> +
> int igt_perf_events_dir(int i915)
> {
> char buf[80];
> diff --git a/lib/igt_perf.h b/lib/igt_perf.h
> index 3d9ba2917..26b9ffa29 100644
> --- a/lib/igt_perf.h
> +++ b/lib/igt_perf.h
> @@ -54,9 +54,11 @@ perf_event_open(struct perf_event_attr *attr,
> }
>
> uint64_t igt_perf_type_id(const char *device);
> +uint64_t xe_perf_event_config(int xe, const char *pmu_event);
> int igt_perf_events_dir(int i915);
> int igt_perf_open(uint64_t type, uint64_t config);
> int igt_perf_open_group(uint64_t type, uint64_t config, int group);
> +int igt_perf_format(const char *device, const char *name, char *buff, int buflen);
>
> const char *i915_perf_device(int i915, char *buf, int buflen);
> uint64_t i915_perf_type_id(int i915);
> diff --git a/tools/gputop/common_gputop.c b/tools/gputop/common_gputop.c
> new file mode 100644
> index 000000000..1188d8e6a
> --- /dev/null
> +++ b/tools/gputop/common_gputop.c
> @@ -0,0 +1,51 @@
> +// SPDX-License-Identifier: MIT
> +/*
> + * Copyright © 2025 Intel Corporation
> + */
> +#include <stdio.h>
> +#include <stdlib.h>
> +#include "common_gputop.h"
> +
> +static const char * const bars[] = { " ", "▏", "▎", "▍", "▌", "▋", "▊", "▉", "█" };
> +
> +void n_spaces(const unsigned int n)
> +{
> + unsigned int i;
> +
> + for (i = 0; i < n; i++)
> + putchar(' ');
> +}
> +
> +void print_percentage_bar(double percent, int max_len)
> +{
> + 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;
> +
> + bar_len = ceil(w * percent * len / 100.0);
> + if (bar_len > w * len)
> + bar_len = w * len;
> +
> + for (i = bar_len; i >= w; i -= w)
> + printf("%s", bars[w]);
> + if (i)
> + printf("%s", bars[i]);
> +
> + len -= (bar_len + (w - 1)) / w;
> + n_spaces(len);
> +
> + putchar('|');
> +}
> +
> +int print_engines_footer(int lines, int con_w, int con_h)
> +{
> + if (lines++ < con_h)
> + printf("\n");
> +
> + return lines;
> +}
> diff --git a/tools/gputop/common_gputop.h b/tools/gputop/common_gputop.h
> new file mode 100644
> index 000000000..29ba48d86
> --- /dev/null
> +++ b/tools/gputop/common_gputop.h
> @@ -0,0 +1,16 @@
> +// SPDX-License-Identifier: MIT
> +/*
> + * Copyright © 2025 Intel Corporation
> + */
> +#ifndef COMMON_GPUTOP_H
> +#define COMMON_GPUTOP_H
> +
> +#include <stdio.h>
> +#include <stdlib.h>
> +#include <math.h>
Move above std*h headers.
> +
> +void print_percentage_bar(double percent, int max_len);
> +int print_engines_footer(int lines, int con_w, int con_h);
> +void n_spaces(const unsigned int n);
> +
> +#endif // COMMON_GPUTOP_H
> diff --git a/tools/gputop.c b/tools/gputop/gputop.c
> similarity index 65%
> rename from tools/gputop.c
> rename to tools/gputop/gputop.c
> index 43b01f566..e53d1f087 100644
> --- a/tools/gputop.c
> +++ b/tools/gputop/gputop.c
> @@ -1,8 +1,7 @@
> // SPDX-License-Identifier: MIT
> /*
> - * Copyright © 2023 Intel Corporation
> + * Copyright © 2025 Intel Corporation
Do not erase years, add new one for example:
* Copyright © 2023-2025 Intel Corporation
Regards,
Kamil
[...cut...]
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH i-g-t v2] Add single engine busyness stats in GPUTOP
2025-02-14 16:32 [PATCH i-g-t v2] Add single engine busyness stats in GPUTOP Soham Purkait
` (4 preceding siblings ...)
2025-02-17 14:46 ` [PATCH i-g-t v2] Add single engine busyness stats in GPUTOP Kamil Konieczny
@ 2025-02-21 4:17 ` Belgaumkar, Vinay
2025-02-21 13:51 ` Riana Tauro
5 siblings, 1 reply; 8+ messages in thread
From: Belgaumkar, Vinay @ 2025-02-21 4:17 UTC (permalink / raw)
To: Soham Purkait, igt-dev, riana.tauro, lucas.demarchi
Cc: anshuman.gupta, rodrigo.vivi
On 2/14/2025 8:32 AM, Soham Purkait wrote:
> Add single engine busyness support in GPUTOP.
> This uses the PMU interface to display the
> busyness of each engine instances.
>
> ENGINES BUSY
> Render/3D/0 | 96.5% ███████████████████████████████████████▍|
> Blitter/0 | 91.6% █████████████████████████████████████ |
> Video/0 | 56.2% ███████████████████████████ |
> VideoEnhance/0| 97.7% ████████████████████████████████████████|
> Compute/0 | 48.5% ███████████████████████▍ |
>
> v1 : fixed cosmetic issues
>
> v2 : fix for refactoring GPUTOP into a
> vendor-agnostic tool (Lucas)
>
> ---
> lib/igt_device_scan.c | 82 ++++++++
> lib/igt_device_scan.h | 5 +
> lib/igt_perf.c | 53 ++++++
> lib/igt_perf.h | 2 +
> tools/gputop/common_gputop.c | 51 +++++
> tools/gputop/common_gputop.h | 16 ++
> tools/{ => gputop}/gputop.c | 246 ++++++++++++++++++++----
> tools/gputop/meson.build | 6 +
> tools/gputop/xe_gputop.c | 359 +++++++++++++++++++++++++++++++++++
> tools/gputop/xe_gputop.h | 74 ++++++++
> tools/meson.build | 6 +-
> 11 files changed, 858 insertions(+), 42 deletions(-)
> create mode 100644 tools/gputop/common_gputop.c
> create mode 100644 tools/gputop/common_gputop.h
> rename tools/{ => gputop}/gputop.c (65%)
> create mode 100644 tools/gputop/meson.build
> create mode 100644 tools/gputop/xe_gputop.c
> create mode 100644 tools/gputop/xe_gputop.h
>
> diff --git a/lib/igt_device_scan.c b/lib/igt_device_scan.c
> index 711bedc5c..c71db0094 100644
> --- a/lib/igt_device_scan.c
> +++ b/lib/igt_device_scan.c
> @@ -773,6 +773,9 @@ __copy_dev_to_card(struct igt_device *dev, struct igt_device_card *card)
> if (dev->drm_render != NULL)
> safe_strncpy(card->render, dev->drm_render,
> sizeof(card->render));
> + if (dev->driver != NULL)
> + safe_strncpy(card->driver, dev->driver,
> + sizeof(card->driver));
>
> if (dev->pci_slot_name != NULL)
> safe_strncpy(card->pci_slot_name, dev->pci_slot_name,
> @@ -820,6 +823,61 @@ static bool __find_first_intel_card_by_driver_name(struct igt_device_card *card,
> return false;
> }
>
> +/*
> + * Iterate over all igt_devices array and find all discrete/integrated card.
> + * @card: double pointer to igt_device_card structure, containing
> + * an array of igt_device_card structure upon successful return.
> + */
> +static int __find_all_intel_card_by_driver_name(struct igt_device_card **card,
> + bool want_discrete, const char *drv_name)
> +{
> + int count = 0;
> + struct igt_device *dev;
> + int is_integrated;
> + struct igt_device_card *tmp;
> + struct igt_device_card *crd =
> + (struct igt_device_card *)calloc(1, sizeof(struct igt_device_card));
> +
> + igt_assert(drv_name);
> + memset(card, 0, sizeof(*card));
> +
> + igt_list_for_each_entry(dev, &igt_devs.all, link) {
> + if (!is_pci_subsystem(dev) || strcmp(dev->driver, drv_name))
> + continue;
> +
> + is_integrated = !strncmp(dev->pci_slot_name, INTEGRATED_I915_GPU_PCI_ID,
> + PCI_SLOT_NAME_SIZE);
> +
> + if (want_discrete && !is_integrated) {
> + __copy_dev_to_card(dev, (crd + count));
> + count++;
> + tmp = realloc(crd, sizeof(struct igt_device_card) * (1 + count));
> + if (!tmp) {
> + free(crd);
> + return -1;
> + }
> + crd = tmp;
> +
> + } else if (!want_discrete && is_integrated) {
> + __copy_dev_to_card(dev, (crd + count));
> + count++;
> + tmp = realloc(crd, sizeof(struct igt_device_card) * (1 + count));
> + if (!tmp) {
> + free(crd);
> + return -1;
> + }
> + crd = tmp;
> + }
> + }
> + if (count == 0) {
> + free(crd);
> + return 0;
> + }
> +
> + *card = crd;
> + return count;
> +}
> +
> bool igt_device_find_first_i915_discrete_card(struct igt_device_card *card)
> {
> igt_assert(card);
> @@ -866,6 +924,30 @@ bool igt_device_find_xe_integrated_card(struct igt_device_card *card)
> return __find_first_intel_card_by_driver_name(card, false, "xe");
> }
>
> +int igt_device_find_all_xe_integrated_card(struct igt_device_card **card)
> +{
> + igt_assert(card);
> + return __find_all_intel_card_by_driver_name(card, false, "xe");
> +}
> +
> +int igt_device_find_all_i915_integrated_card(struct igt_device_card **card)
> +{
> + igt_assert(card);
> + return __find_all_intel_card_by_driver_name(card, false, "i915");
> +}
> +
> +int igt_device_find_all_xe_discrete_card(struct igt_device_card **card)
> +{
> + igt_assert(card);
> + return __find_all_intel_card_by_driver_name(card, true, "xe");
> +}
> +
> +int igt_device_find_all_i915_discrete_card(struct igt_device_card **card)
> +{
> + igt_assert(card);
> + return __find_all_intel_card_by_driver_name(card, true, "i915");
> +}
> +
> static struct igt_device *igt_device_from_syspath(const char *syspath)
> {
> struct igt_device *dev;
> diff --git a/lib/igt_device_scan.h b/lib/igt_device_scan.h
> index 92741fe3c..da107292a 100644
> --- a/lib/igt_device_scan.h
> +++ b/lib/igt_device_scan.h
> @@ -59,6 +59,7 @@ struct igt_device_card {
> char subsystem[NAME_MAX];
> char card[NAME_MAX];
> char render[NAME_MAX];
> + char driver[NAME_MAX];
> char pci_slot_name[PCI_SLOT_NAME_SIZE+1];
> uint16_t pci_vendor, pci_device;
> };
> @@ -92,6 +93,10 @@ bool igt_device_find_first_i915_discrete_card(struct igt_device_card *card);
> bool igt_device_find_integrated_card(struct igt_device_card *card);
> bool igt_device_find_first_xe_discrete_card(struct igt_device_card *card);
> bool igt_device_find_xe_integrated_card(struct igt_device_card *card);
> +int igt_device_find_all_i915_discrete_card(struct igt_device_card **card);
> +int igt_device_find_all_i915_integrated_card(struct igt_device_card **card);
> +int igt_device_find_all_xe_integrated_card(struct igt_device_card **card);
> +int igt_device_find_all_xe_discrete_card(struct igt_device_card **card);
> char *igt_device_get_pretty_name(struct igt_device_card *card, bool numeric);
> int igt_open_card(struct igt_device_card *card);
> int igt_open_render(struct igt_device_card *card);
> diff --git a/lib/igt_perf.c b/lib/igt_perf.c
> index 3866c6d77..3f2f3311f 100644
> --- a/lib/igt_perf.c
> +++ b/lib/igt_perf.c
> @@ -129,6 +129,59 @@ uint64_t igt_perf_type_id(const char *device)
> return strtoull(buf, NULL, 0);
> }
>
> +int igt_perf_format(const char *device, const char *name, char *buff, int buflen)
> +{
> + char buf[NAME_MAX];
> + ssize_t ret;
> + int fd;
> +
> + snprintf(buf, sizeof(buf),
> + "/sys/bus/event_source/devices/%s/format/%s", device, name);
> +
> + fd = open(buf, O_RDONLY);
> + if (fd < 0)
> + return -1;
> +
> + ret = read(fd, buff, buflen - 1);
> + close(fd);
> + if (ret < 1)
> + return -1;
> +
> + buf[ret] = '\0';
> +
> + return 0;
> +}
> +
> +uint64_t xe_perf_event_config(int xe, const char *pmu_str)
The above 2 functions are already merged in IGT as part of my C6 tests,
you can remove them from this patch.
Thanks,
Vinay.
> +{
> + char buf[150];
> + ssize_t ret;
> + int fd;
> + uint64_t config;
> + char device[30];
> +
> + snprintf(buf, sizeof(buf),
> + "/sys/bus/event_source/devices/%s/events/%s",
> + xe_perf_device(xe, device, sizeof(device)),
> + pmu_str);
> +
> + fd = open(buf, O_RDONLY);
> + if (fd < 0)
> + return 0;
> +
> + ret = read(fd, buf, sizeof(buf) - 1);
> + close(fd);
> + if (ret < 1)
> + return 0;
> +
> + buf[ret] = '\0';
> + ret = sscanf(buf, "event=0x%lx", &config);
> + if (ret != 1)
> + return 0;
> +
> + return config;
> +}
> +
> int igt_perf_events_dir(int i915)
> {
> char buf[80];
> diff --git a/lib/igt_perf.h b/lib/igt_perf.h
> index 3d9ba2917..26b9ffa29 100644
> --- a/lib/igt_perf.h
> +++ b/lib/igt_perf.h
> @@ -54,9 +54,11 @@ perf_event_open(struct perf_event_attr *attr,
> }
>
> uint64_t igt_perf_type_id(const char *device);
> +uint64_t xe_perf_event_config(int xe, const char *pmu_event);
> int igt_perf_events_dir(int i915);
> int igt_perf_open(uint64_t type, uint64_t config);
> int igt_perf_open_group(uint64_t type, uint64_t config, int group);
> +int igt_perf_format(const char *device, const char *name, char *buff, int buflen);
>
> const char *i915_perf_device(int i915, char *buf, int buflen);
> uint64_t i915_perf_type_id(int i915);
> diff --git a/tools/gputop/common_gputop.c b/tools/gputop/common_gputop.c
> new file mode 100644
> index 000000000..1188d8e6a
> --- /dev/null
> +++ b/tools/gputop/common_gputop.c
> @@ -0,0 +1,51 @@
> +// SPDX-License-Identifier: MIT
> +/*
> + * Copyright © 2025 Intel Corporation
> + */
> +#include <stdio.h>
> +#include <stdlib.h>
> +#include "common_gputop.h"
> +
> +static const char * const bars[] = { " ", "▏", "▎", "▍", "▌", "▋", "▊", "▉", "█" };
> +
> +void n_spaces(const unsigned int n)
> +{
> + unsigned int i;
> +
> + for (i = 0; i < n; i++)
> + putchar(' ');
> +}
> +
> +void print_percentage_bar(double percent, int max_len)
> +{
> + 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;
> +
> + bar_len = ceil(w * percent * len / 100.0);
> + if (bar_len > w * len)
> + bar_len = w * len;
> +
> + for (i = bar_len; i >= w; i -= w)
> + printf("%s", bars[w]);
> + if (i)
> + printf("%s", bars[i]);
> +
> + len -= (bar_len + (w - 1)) / w;
> + n_spaces(len);
> +
> + putchar('|');
> +}
> +
> +int print_engines_footer(int lines, int con_w, int con_h)
> +{
> + if (lines++ < con_h)
> + printf("\n");
> +
> + return lines;
> +}
> diff --git a/tools/gputop/common_gputop.h b/tools/gputop/common_gputop.h
> new file mode 100644
> index 000000000..29ba48d86
> --- /dev/null
> +++ b/tools/gputop/common_gputop.h
> @@ -0,0 +1,16 @@
> +// SPDX-License-Identifier: MIT
> +/*
> + * Copyright © 2025 Intel Corporation
> + */
> +#ifndef COMMON_GPUTOP_H
> +#define COMMON_GPUTOP_H
> +
> +#include <stdio.h>
> +#include <stdlib.h>
> +#include <math.h>
> +
> +void print_percentage_bar(double percent, int max_len);
> +int print_engines_footer(int lines, int con_w, int con_h);
> +void n_spaces(const unsigned int n);
> +
> +#endif // COMMON_GPUTOP_H
> diff --git a/tools/gputop.c b/tools/gputop/gputop.c
> similarity index 65%
> rename from tools/gputop.c
> rename to tools/gputop/gputop.c
> index 43b01f566..e53d1f087 100644
> --- a/tools/gputop.c
> +++ b/tools/gputop/gputop.c
> @@ -1,8 +1,7 @@
> // SPDX-License-Identifier: MIT
> /*
> - * Copyright © 2023 Intel Corporation
> + * Copyright © 2025 Intel Corporation
> */
> -
> #include <assert.h>
> #include <ctype.h>
> #include <dirent.h>
> @@ -31,49 +30,78 @@
> #include "igt_drm_fdinfo.h"
> #include "igt_profiling.h"
> #include "drmtest.h"
> +#include "xe/xe_query.h"
> +#include "igt_perf.h"
> +#include "igt_device_scan.h"
> +#include "xe_gputop.h"
>
> -enum utilization_type {
> - UTILIZATION_TYPE_ENGINE_TIME,
> - UTILIZATION_TYPE_TOTAL_CYCLES,
> +/*
> + * Supported Drivers
> + */
> +static const char * const drivers[] = {
> + "xe",
> +// "i915", yet to implement
> + /*Keep the last one NULL*/
> + NULL
> };
>
> -static const char *bars[] = { " ", "▏", "▎", "▍", "▌", "▋", "▊", "▉", "█" };
> -
> -#define ANSI_HEADER "\033[7m"
> -#define ANSI_RESET "\033[0m"
> +/*
> + * Number of supported drivers needs to be adjusted
> + * as per the letgth of the drivers[] array.
> + */
> +#define NUM_DRIVER 1
>
> -static void n_spaces(const unsigned int n)
> -{
> - unsigned int i;
> +/*
> + * Supported operations on driver instances.
> + * Update the array of function pointers for
> + * each individual driver specific function.
> + * Maintain the sequence as per drivers[] array.
> + */
> +void *(*discover_engines[NUM_DRIVER])(const void *obj) = {
> + xe_discover_engines
> +};
>
> - for (i = 0; i < n; i++)
> - putchar(' ');
> -}
> +void (*pmu_sample[NUM_DRIVER])(const void *obj) = {
> + xe_pmu_sample
> +};
>
> -static void print_percentage_bar(double percent, int max_len)
> -{
> - int bar_len, i, len = max_len - 1;
> - const int w = 8;
> +int (*pmu_init[NUM_DRIVER])(const void *obj) = {
> + xe_pmu_init
> +};
>
> - len -= printf("|%5.1f%% ", percent);
> +int (*print_engines[NUM_DRIVER])(const void *obj, int lines, int w, int h) = {
> + xe_print_engines
> +};
>
> - /* no space left for bars, do what we can */
> - if (len < 0)
> - len = 0;
> +/*
> + * Update this devices[] array with initialized
> + * values as per drivers[] array
> + */
> +struct gputop_device {
> + bool driver_present;
> + int len;
> + void *instances;
> +} devices[] = {
> + {false, 0, NULL}
> +};
>
> - bar_len = ceil(w * percent * len / 100.0);
> - if (bar_len > w * len)
> - bar_len = w * len;
> +enum utilization_type {
> + UTILIZATION_TYPE_ENGINE_TIME,
> + UTILIZATION_TYPE_TOTAL_CYCLES,
> +};
>
> - for (i = bar_len; i >= w; i -= w)
> - printf("%s", bars[w]);
> - if (i)
> - printf("%s", bars[i]);
> +#define ANSI_HEADER "\033[7m"
> +#define ANSI_RESET "\033[0m"
>
> - len -= (bar_len + (w - 1)) / w;
> - n_spaces(len);
> +void xe_populate_device_instances(struct gputop_device *dv);
>
> - putchar('|');
> +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;
> }
>
> static int
> @@ -305,7 +333,6 @@ static int client_cmp(const void *_a, const void *_b, void *unused)
> return 1;
> else
> return -1;
> -
> }
>
> static void update_console_size(int *w, int *h)
> @@ -333,6 +360,7 @@ static void clrscr(void)
> struct gputop_args {
> long n_iter;
> unsigned long delay_usec;
> + char *device;
> };
>
> static void help(void)
> @@ -343,16 +371,18 @@ static void help(void)
> "\t-h, --help show this help\n"
> "\t-d, --delay =SEC[.TENTHS] iterative delay as SECS [.TENTHS]\n"
> "\t-n, --iterations =NUMBER number of executions\n"
> + "\t-D, --device Device filter"
> , program_invocation_short_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[] = "hn:d:D:";
> static const struct option cmdopts[] = {
> {"help", no_argument, 0, 'h'},
> {"delay", required_argument, 0, 'd'},
> {"iterations", required_argument, 0, 'n'},
> + {"device", required_argument, 0, 'D'},
> { }
> };
>
> @@ -360,6 +390,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->device = NULL;
>
> for (;;) {
> int c, idx = 0;
> @@ -383,6 +414,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();
> return 0;
> @@ -403,6 +437,56 @@ static void sigint_handler(int sig)
> stop_top = true;
> }
>
> +void xe_populate_device_instances(struct gputop_device *dv)
> +{
> + struct igt_device_card *card_int = NULL, *card_dis = NULL, *cards_combi = NULL;
> + int count_int = 0, count_dis = 0;
> +
> + count_int = igt_device_find_all_xe_integrated_card(&card_int);
> + count_dis = igt_device_find_all_xe_discrete_card(&card_dis);
> +
> + if (count_int > 0 || count_dis > 0) {
> + // Allocate memory for the combined array
> + cards_combi = (struct igt_device_card *)calloc((count_int + count_dis),
> + sizeof(struct igt_device_card));
> + if (!cards_combi) {
> + fprintf(stderr, "Memory allocation failed for igt_device_card\n");
> + if (card_int)
> + free(card_int);
> + if (card_dis)
> + free(card_dis);
> + exit(EXIT_FAILURE);
> + }
> +
> + if (card_int) {
> + memcpy(cards_combi, card_int,
> + count_int * sizeof(struct igt_device_card));
> + free(card_int);
> + }
> +
> + if (card_dis) {
> + memcpy(cards_combi + count_int,
> + card_dis, count_dis * sizeof(struct igt_device_card));
> + free(card_dis);
> + }
> +
> + dv->driver_present = true;
> + dv->len = count_int + count_dis;
> + dv->instances = calloc(dv->len, sizeof(struct xe_gputop));
> + for (int i = 0; i < count_int; i++) {
> + xe_gputop_init((struct xe_gputop *)dv->instances + i,
> + cards_combi + i
> + );
> + }
> +
> + for (int i = 0; i < count_dis; i++) {
> + xe_gputop_init((struct xe_gputop *)dv->instances + count_int + i,
> + cards_combi + count_int + i
> + );
> + }
> + }
> +}
> +
> int main(int argc, char **argv)
> {
> struct gputop_args args;
> @@ -422,6 +506,85 @@ int main(int argc, char **argv)
> n = args.n_iter;
> period_us = args.delay_usec;
>
> + igt_devices_scan();
> +
> + if (args.device) {
> + struct igt_device_card *card = calloc(1, sizeof(struct igt_device_card));
> +
> + if (!igt_device_card_match(args.device, card)) {
> + printf("No device found for the filter\n"
> + "Showing for all devices\n");
> + free(card);
> + } else {
> + int driver_no = find_Driver(card);
> +
> + if (driver_no < 0) {
> + fprintf(stderr, "The driver %s could not be found.", card->driver);
> + exit(EXIT_FAILURE);
> + }
> +
> + devices[driver_no].driver_present = true;
> + devices[driver_no].len = 1;
> + switch (driver_no) {
> + case 0:
> + devices[driver_no].instances =
> + calloc(1, sizeof(struct xe_gputop));
> + xe_gputop_init(devices[driver_no].instances,
> + card
> + );
> + break;
> + }
> + goto explore_devices;
> + }
> + }
> +
> + for (int i = 0; drivers[i]; i++) {
> + switch (i) {
> + case 0: // xe
> + xe_populate_device_instances(devices + i);
> + break;
> + }
> + }
> +
> +explore_devices:
> +
> + for (int i = 0; drivers[i]; i++) {
> + if (devices[i].driver_present) {
> + for (int j = 0; j < devices[i].len; j++) {
> + if (!discover_engines[i](devices[i].instances + j)) {
> + fprintf(stderr,
> + "Failed to discover engines! (%s)\n",
> + strerror(errno));
> + return EXIT_FAILURE;
> + }
> + ret = pmu_init[i](devices[i].instances + j);
> +
> + if (ret) {
> + fprintf(stderr,
> + "Failed to initialize PMU! (%s)\n",
> + strerror(errno));
> + if (errno == EACCES && geteuid())
> + fprintf(stderr,
> + "\n"
> + "When running as a normal user CAP_PERFMON is required to access performance\n"
> + "monitoring. See \"man 7 capabilities\", \"man 8 setcap\", or contact your\n"
> + "distribution vendor for assistance.\n"
> + "\n"
> + "More information can be found at 'Perf events and tool security' document:\n"
> + "https://www.kernel.org/doc/html/latest/admin-guide/perf-security.html\n");
> +
> + igt_devices_free();
> + return EXIT_FAILURE;
> + }
> + }
> + }
> + }
> +
> + for (int i = 0; drivers[i]; i++) {
> + for (int j = 0; devices[i].driver_present && j < devices[i].len; j++)
> + pmu_sample[i](devices[i].instances + j);
> + }
> +
> clients = igt_drm_clients_init(NULL);
> if (!clients)
> exit(1);
> @@ -442,7 +605,7 @@ 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);
> igt_drm_clients_sort(clients, client_cmp);
> @@ -450,6 +613,14 @@ int main(int argc, char **argv)
> update_console_size(&con_w, &con_h);
> clrscr();
>
> + for (int i = 0; drivers[i]; i++) {
> + for (int j = 0; devices[i].driver_present && j < devices[i].len; j++) {
> + pmu_sample[i](devices[i].instances + j);
> + lines = print_engines[i](devices[i].instances + j,
> + lines, con_w, con_h);
> + }
> + }
> +
> if (!clients->num_clients) {
> const char *msg = " (No GPU clients yet. Start workload to see stats)";
>
> @@ -457,7 +628,7 @@ int main(int argc, char **argv)
> (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. */
> @@ -489,3 +660,4 @@ int main(int argc, char **argv)
>
> return 0;
> }
> +
> diff --git a/tools/gputop/meson.build b/tools/gputop/meson.build
> new file mode 100644
> index 000000000..0512ac3d6
> --- /dev/null
> +++ b/tools/gputop/meson.build
> @@ -0,0 +1,6 @@
> +gputop_src = [ 'gputop.c', 'common_gputop.c', 'xe_gputop.c']
> +executable('gputop', sources : gputop_src,
> + install : true,
> + install_rpath : bindir_rpathdir,
> + dependencies : [igt_deps,lib_igt_perf,lib_igt_drm_clients,lib_igt_drm_fdinfo,lib_igt_profiling,math],
> + install: true)
> diff --git a/tools/gputop/xe_gputop.c b/tools/gputop/xe_gputop.c
> new file mode 100644
> index 000000000..2751a6e4e
> --- /dev/null
> +++ b/tools/gputop/xe_gputop.c
> @@ -0,0 +1,359 @@
> +/* SPDX-License-Identifier: MIT */
> +/*
> + * Copyright © 2025 Intel Corporation
> + */
> +
> +#include "xe_gputop.h"
> +#include "common_gputop.h"
> +
> +#define engine_ptr(engines, n) (&(engines)->engine + (n))
> +
> +static void __update_sample(struct xe_pmu_counter *counter, uint64_t val)
> +{
> + counter->val.prev = counter->val.cur;
> + counter->val.cur = val;
> +}
> +
> +static void update_sample(struct xe_pmu_counter *counter, uint64_t *val)
> +{
> + if (counter->present)
> + __update_sample(counter, val[counter->idx]);
> +}
> +
> +static const char *class_display_name(unsigned int class)
> +{
> + switch (class) {
> + case DRM_XE_ENGINE_CLASS_RENDER:
> + return "Render/3D";
> + case DRM_XE_ENGINE_CLASS_COPY:
> + return "Blitter";
> + case DRM_XE_ENGINE_CLASS_VIDEO_DECODE:
> + return "Video";
> + case DRM_XE_ENGINE_CLASS_VIDEO_ENHANCE:
> + return "VideoEnhance";
> + case DRM_XE_ENGINE_CLASS_COMPUTE:
> + return "Compute";
> + default:
> + return "[unknown]";
> + }
> +}
> +
> +static inline void *clean_up(void *engines)
> +{
> + if (engines)
> + free(engines);
> +
> + return NULL;
> +}
> +
> +static int _open_pmu(uint64_t type, unsigned int *cnt, struct xe_pmu_counter *pmu, int *fd)
> +{
> + int fd__ = igt_perf_open_group(type, pmu->config, *fd);
> +
> + if (fd__ >= 0) {
> + if (*fd == -1)
> + *fd = fd__;
> + pmu->present = true;
> + pmu->idx = (*cnt)++;
> + }
> +
> + return fd__;
> +}
> +
> +/* tr_pmu_name()
> + *
> + * Transliterate pci_slot_id to sysfs device name entry for discrete GPU.
> + * Discrete GPU PCI ID ("xxxx:yy:zz.z") device = "xe_xxxx_yy_zz.z".
> + */
> +static char *tr_pmu_name(const struct igt_device_card *card)
> +{
> + int ret;
> + const int bufsize = 16;
> + char *buf, *device = NULL;
> +
> + assert(card->pci_slot_name[0]);
> +
> + device = malloc(bufsize);
> + assert(device);
> +
> + ret = snprintf(device, bufsize, "xe_%s", card->pci_slot_name);
> + assert(ret == (bufsize - 1));
> +
> + buf = device;
> + for (; *buf; buf++)
> + if (*buf == ':')
> + *buf = '_';
> +
> + return device;
> +}
> +
> +void xe_gputop_init(struct xe_gputop *obj,
> + struct igt_device_card *card)
> +{
> + obj->pmu_device = tr_pmu_name(card);
> + obj->card = card;
> +}
> +
> +static int pmu_format_shift(int xe, const char *name)
> +{
> + int start, end, ret;
> + int format;
> + char device[80], buff[80];
> +
> + format = igt_perf_format(xe_perf_device(xe, device, sizeof(device)),
> + name, buff, sizeof(buff));
> + if (format)
> + return 0;
> +
> + ret = sscanf(buff, "config:%d-%d", &start, &end);
> + igt_assert(ret >= 1);
> +
> + return start;
> +}
> +
> +static int engine_cmp(const void *__a, const void *__b)
> +{
> + const struct xe_engine *a = (struct xe_engine *)__a;
> + const struct xe_engine *b = (struct xe_engine *)__b;
> +
> + if (a->drm_xe_engine.engine_class != b->drm_xe_engine.engine_class)
> + return a->drm_xe_engine.engine_class - b->drm_xe_engine.engine_class;
> + else
> + return a->drm_xe_engine.engine_instance - b->drm_xe_engine.engine_instance;
> +}
> +
> +void *xe_discover_engines(const void *obj)
> +{
> + struct igt_device_card *card = ((struct xe_gputop *)obj)->card;
> + struct xe_engines *engines;
> + int ret = 0;
> + DIR *d;
> + struct drm_xe_engine_class_instance *hwe;
> + int card_fd;
> +
> + if (!card || !strlen(card->card) || !strlen(card->render))
> + return NULL;
> +
> + if (strlen(card->card)) {
> + card_fd = igt_open_card(card);
> + } else if (strlen(card->render)) {
> + card_fd = igt_open_render(card);
> + } else {
> + fprintf(stderr, "Failed to detect device!\n");
> + return clean_up(engines);
> + }
> + xe_device_get(card_fd);
> + engines = malloc(sizeof(struct xe_engines));
> + if (!engines)
> + return NULL;
> +
> + memset(engines, 0, sizeof(*xe_engines));
> +
> + engines->num_engines = 0;
> + engines->device = ((struct xe_gputop *)obj)->pmu_device;
> + xe_for_each_engine(card_fd, hwe) {
> + uint64_t engine_class, engine_instance, gt_shift, param_config;
> + struct xe_engine *engine;
> +
> + engine = engine_ptr(engines, engines->num_engines);
> + 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");
> + 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->busy.config = xe_perf_event_config(card_fd, "engine-active-ticks")
> + | param_config;
> + engine->total.config = xe_perf_event_config(card_fd, "engine-total-ticks")
> + | param_config;
> +
> + if (engine->busy.config == -1 || engine->total.config == -1) {
> + ret = ENOENT;
> + break;
> + }
> +
> + ret = asprintf(&engine->display_name, "%s/%u",
> + class_display_name(engine->drm_xe_engine.engine_class),
> + engine->drm_xe_engine.engine_instance);
> +
> + if (ret <= 0) {
> + ret = errno;
> + break;
> + }
> + ret = asprintf(&engine->short_name, "%s/%u",
> + xe_engine_class_short_string(engine->drm_xe_engine.engine_class),
> + engine->drm_xe_engine.engine_instance);
> +
> + if (ret <= 0) {
> + ret = errno;
> + break;
> + }
> +
> + engines->num_engines++;
> + engines = realloc(engines, sizeof(struct xe_engines) +
> + engines->num_engines * sizeof(struct xe_engine));
> + if (!engines) {
> + ret = errno;
> + break;
> + }
> + }
> +
> + if (!ret) {
> + errno = ret;
> + return clean_up(engines);
> + }
> +
> + qsort(engine_ptr(engines, 0), engines->num_engines,
> + sizeof(struct xe_engine), engine_cmp);
> +
> + engines->root = d;
> + ((struct xe_gputop *)obj)->eng_obj = engines;
> +
> + return engines;
> +}
> +
> +static uint64_t pmu_read_multi(int fd, unsigned int num, uint64_t *val)
> +{
> + uint64_t buf[2 + num];
> + unsigned int i;
> + ssize_t len;
> +
> + memset(buf, 0, sizeof(buf));
> +
> + len = read(fd, buf, sizeof(buf));
> + assert(len == sizeof(buf));
> +
> + for (i = 0; i < num; i++)
> + val[i] = buf[2 + i];
> +
> + return buf[1];
> +}
> +
> +void xe_pmu_sample(const void *obj)
> +{
> + struct xe_engines *engines = ((struct xe_gputop *)obj)->eng_obj;
> + const int num_val = engines->num_counters;
> + uint64_t val[2 + num_val];
> + unsigned int i;
> +
> + engines->ts.prev = engines->ts.cur;
> + engines->ts.cur = pmu_read_multi(engines->fd, num_val, val);
> +
> + for (i = 0; i < engines->num_engines; i++) {
> + struct xe_engine *engine = engine_ptr(engines, i);
> +
> + update_sample(&engine->busy, val);
> + update_sample(&engine->total, val);
> + }
> +}
> +
> +int xe_pmu_init(const void *obj)
> +{
> + struct xe_engines *engines = ((struct xe_gputop *)obj)->eng_obj;
> + unsigned int i;
> + int fd;
> + struct xe_engine *engine;
> + uint64_t type = igt_perf_type_id(engines->device);
> +
> + engines->fd = -1;
> + engines->num_counters = 0;
> +
> + engine = engine_ptr(engines, 0);
> + fd = _open_pmu(type, &engines->num_counters, &engine->busy, &engines->fd);
> + if (fd < 0)
> + return -1;
> + fd = _open_pmu(type, &engines->num_counters, &engine->total, &engines->fd);
> + if (fd < 0)
> + return -1;
> +
> + for (i = 1; i < engines->num_engines; i++) {
> + engine = engine_ptr(engines, i);
> + fd = _open_pmu(type, &engines->num_counters, &engine->busy, &engines->fd);
> + if (fd < 0)
> + return -1;
> + fd = _open_pmu(type, &engines->num_counters, &engine->total, &engines->fd);
> + if (fd < 0)
> + return -1;
> + }
> + return 0;
> +}
> +
> +static double pmu_calc_total(struct xe_pmu_pair *p)
> +{
> + double v;
> +
> + v = (p->cur - p->prev) / 1e9;
> + return v;
> +}
> +
> +static double pmu_calc(struct xe_pmu_pair *p, double total_tick)
> +{
> + double bz = (p->cur - p->prev) / 1e9;
> + double total;
> +
> + total = (bz * 100) / total_tick;
> + return total;
> +}
> +
> +static int
> +print_engines_header(struct xe_engines *engines,
> + int lines, int con_w, int con_h)
> +{
> + const char *a;
> +
> + for (unsigned int i = 0;
> + i < engines->num_engines && lines < con_h;
> + i++) {
> + struct xe_engine *engine = engine_ptr(engines, i);
> +
> + if (!engine->num_counters)
> + continue;
> +
> + a = " ENGINES BUSY ";
> +
> + printf("\033[7m%s%*s\033[0m\n",
> + a,
> + (int)(con_w - strlen(a)), " ");
> +
> + lines++;
> +
> + break;
> + }
> +
> + return lines;
> +}
> +
> +static int
> +print_engine(struct xe_engines *engines, unsigned int i,
> + int lines, int con_w, int con_h)
> +{
> + struct xe_engine *engine = engine_ptr(engines, i);
> + double total_tick = pmu_calc_total(&engine->total.val);
> + double percentage = pmu_calc(&engine->busy.val, total_tick);
> +
> + printf("%*s", (int)(strlen(" ENGINES")), engine->display_name);
> + //printf(" %5.1f", percentage);
> + print_percentage_bar(percentage, con_w - strlen(" ENGINES"));
> + printf("\n");
> +
> + return ++lines;
> +}
> +
> +int xe_print_engines(const void *obj, int lines, int w, int h)
> +{
> + struct xe_engines *engines = ((struct xe_gputop *)obj)->eng_obj;
> + struct xe_engines *show;
> +
> + show = engines;
> +
> + lines = print_engines_header(show, lines, w, h);
> +
> + for (unsigned int i = 0; i < show->num_engines && lines < h; i++)
> + lines = print_engine(show, i, lines, w, h);
> +
> + lines = print_engines_footer(lines, w, h);
> +
> + return lines;
> +}
> +
> diff --git a/tools/gputop/xe_gputop.h b/tools/gputop/xe_gputop.h
> new file mode 100644
> index 000000000..0f7291563
> --- /dev/null
> +++ b/tools/gputop/xe_gputop.h
> @@ -0,0 +1,74 @@
> +/* SPDX-License-Identifier: MIT
> + *
> + * Copyright © 2025 Intel Corporation
> + */
> +
> +#ifndef __XE_GPUTOP_H__
> +#define __XE_GPUTOP_H__
> +
> +#include <dirent.h>
> +
> +#include "igt_device_scan.h"
> +#include "xe/xe_query.h"
> +#include "igt_perf.h"
> +#include "common_gputop.h"
> +
> +struct xe_pmu_pair {
> + uint64_t cur;
> + uint64_t prev;
> +};
> +
> +struct xe_pmu_counter {
> + uint64_t type;
> + uint64_t config;
> + unsigned int idx;
> + struct xe_pmu_pair val;
> + bool present;
> +};
> +
> +struct xe_engine {
> + const char *name;
> + char *display_name;
> + char *short_name;
> + struct drm_xe_engine_class_instance drm_xe_engine;
> + unsigned int num_counters;
> + struct xe_pmu_counter busy;
> + struct xe_pmu_counter total;
> +};
> +
> +struct xe_engines {
> + unsigned int num_engines;
> + unsigned int num_classes;
> + unsigned int num_counters;
> + DIR *root;
> + int fd;
> + struct xe_pmu_pair ts;
> + bool discrete;
> + char *device;
> + int num_gts;
> +
> + /* Do not edit below this line.
> + * This structure is reallocated every time a new engine is
> + * found and size is increased by sizeof (engine).
> + */
> +
> + struct xe_engine engine;
> +
> +};
> +
> +struct xe_gputop {
> + char *pmu_device;
> + struct igt_device_card *card;
> + struct xe_engines *eng_obj;
> +};
> +
> +void xe_gputop_init(struct xe_gputop *obj,
> + struct igt_device_card *card);
> +
> +void *xe_discover_engines(const void *obj);
> +void xe_pmu_sample(const void *obj);
> +int xe_pmu_init(const void *obj);
> +int xe_print_engines(const void *obj, int lines, int w, int h);
> +
> +#endif // __XE_GPUTOP_H__
> +
> diff --git a/tools/meson.build b/tools/meson.build
> index f091af380..7a9fdfb9c 100644
> --- a/tools/meson.build
> +++ b/tools/meson.build
> @@ -68,11 +68,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,
> @@ -121,3 +116,4 @@ endif
> subdir('i915-perf')
> subdir('xe-perf')
> subdir('null_state_gen')
> +subdir('gputop')
> \ No newline at end of file
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH i-g-t v2] Add single engine busyness stats in GPUTOP
2025-02-21 4:17 ` Belgaumkar, Vinay
@ 2025-02-21 13:51 ` Riana Tauro
0 siblings, 0 replies; 8+ messages in thread
From: Riana Tauro @ 2025-02-21 13:51 UTC (permalink / raw)
To: Soham Purkait
Cc: anshuman.gupta, rodrigo.vivi, lucas.demarchi, Belgaumkar, Vinay,
igt-dev
Hi Soham
On 2/21/2025 9:47 AM, Belgaumkar, Vinay wrote:
>
> On 2/14/2025 8:32 AM, Soham Purkait wrote:
>> Add single engine busyness support in GPUTOP.
%s/busyness/engine activity
>> This uses the PMU interface to display the
>> busyness of each engine instances.
>>
>> ENGINES BUSY
>> Render/3D/0 | 96.5% ███████████████████████████████████████▍|
>> Blitter/0 | 91.6% █████████████████████████████████████ |
>> Video/0 | 56.2% ███████████████████████████ |
>> VideoEnhance/0| 97.7% ████████████████████████████████████████|
>> Compute/0 | 48.5% ███████████████████████▍ |
>>
>> v1 : fixed cosmetic issues
>>
>> v2 : fix for refactoring GPUTOP into a
>> vendor-agnostic tool (Lucas)
>>
>> ---
>> lib/igt_device_scan.c | 82 ++++++++
>> lib/igt_device_scan.h | 5 +
>> lib/igt_perf.c | 53 ++++++
>> lib/igt_perf.h | 2 +
>> tools/gputop/common_gputop.c | 51 +++++
>> tools/gputop/common_gputop.h | 16 ++
>> tools/{ => gputop}/gputop.c | 246 ++++++++++++++++++++----
>> tools/gputop/meson.build | 6 +
>> tools/gputop/xe_gputop.c | 359 +++++++++++++++++++++++++++++++++++
>> tools/gputop/xe_gputop.h | 74 ++++++++
>> tools/meson.build | 6 +-
>> 11 files changed, 858 insertions(+), 42 deletions(-)
>> create mode 100644 tools/gputop/common_gputop.c
>> create mode 100644 tools/gputop/common_gputop.h
>> rename tools/{ => gputop}/gputop.c (65%)
>> create mode 100644 tools/gputop/meson.build
>> create mode 100644 tools/gputop/xe_gputop.c
>> create mode 100644 tools/gputop/xe_gputop.h
>>
>> diff --git a/lib/igt_device_scan.c b/lib/igt_device_scan.c
>> index 711bedc5c..c71db0094 100644
>> --- a/lib/igt_device_scan.c
>> +++ b/lib/igt_device_scan.c
>> @@ -773,6 +773,9 @@ __copy_dev_to_card(struct igt_device *dev, struct
>> igt_device_card *card)
>> if (dev->drm_render != NULL)
>> safe_strncpy(card->render, dev->drm_render,
>> sizeof(card->render));
>> + if (dev->driver != NULL)
>> + safe_strncpy(card->driver, dev->driver,
>> + sizeof(card->driver));
>> if (dev->pci_slot_name != NULL)
>> safe_strncpy(card->pci_slot_name, dev->pci_slot_name,
>> @@ -820,6 +823,61 @@ static bool
>> __find_first_intel_card_by_driver_name(struct igt_device_card *card,
>> return false;
>> }
>> +/*
>> + * Iterate over all igt_devices array and find all discrete/
>> integrated card.
>> + * @card: double pointer to igt_device_card structure, containing
>> + * an array of igt_device_card structure upon successful return.
>> + */
>> +static int __find_all_intel_card_by_driver_name(struct
>> igt_device_card **card,
>> + bool want_discrete, const char *drv_name)
>> +{
>> + int count = 0;
>> + struct igt_device *dev;
>> + int is_integrated;
>> + struct igt_device_card *tmp;
>> + struct igt_device_card *crd =
>> + (struct igt_device_card *)calloc(1, sizeof(struct
>> igt_device_card));
>> +
>> + igt_assert(drv_name);
>> + memset(card, 0, sizeof(*card));
>> +
>> + igt_list_for_each_entry(dev, &igt_devs.all, link) {
>> + if (!is_pci_subsystem(dev) || strcmp(dev->driver, drv_name))
>> + continue;
>> +
>> + is_integrated = !strncmp(dev->pci_slot_name,
>> INTEGRATED_I915_GPU_PCI_ID,
>> + PCI_SLOT_NAME_SIZE);
>> +
>> + if (want_discrete && !is_integrated) {
>> + __copy_dev_to_card(dev, (crd + count));
>> + count++;
>> + tmp = realloc(crd, sizeof(struct igt_device_card) * (1 +
>> count));
>> + if (!tmp) {
>> + free(crd);
>> + return -1;
>> + }
>> + crd = tmp;
>> +
>> + } else if (!want_discrete && is_integrated) {
>> + __copy_dev_to_card(dev, (crd + count));
>> + count++;
>> + tmp = realloc(crd, sizeof(struct igt_device_card) * (1 +
>> count));
>> + if (!tmp) {
>> + free(crd);
>> + return -1;
>> + }
>> + crd = tmp;
>> + }
>> + }
>> + if (count == 0) {
>> + free(crd);
>> + return 0;
>> + }
>> +
>> + *card = crd;
>> + return count;
>> +}
>> +
>> bool igt_device_find_first_i915_discrete_card(struct igt_device_card
>> *card)
>> {
>> igt_assert(card);
>> @@ -866,6 +924,30 @@ bool igt_device_find_xe_integrated_card(struct
>> igt_device_card *card)
>> return __find_first_intel_card_by_driver_name(card, false, "xe");
>> }
>> +int igt_device_find_all_xe_integrated_card(struct igt_device_card
>> **card)
>> +{
>> + igt_assert(card);
>> + return __find_all_intel_card_by_driver_name(card, false, "xe");
>> +}
>> +
>> +int igt_device_find_all_i915_integrated_card(struct igt_device_card
>> **card)
>> +{
>> + igt_assert(card);
>> + return __find_all_intel_card_by_driver_name(card, false, "i915");
>> +}
>> +
>> +int igt_device_find_all_xe_discrete_card(struct igt_device_card **card)
>> +{
>> + igt_assert(card);
>> + return __find_all_intel_card_by_driver_name(card, true, "xe");
>> +}
>> +
>> +int igt_device_find_all_i915_discrete_card(struct igt_device_card
>> **card)
>> +{
>> + igt_assert(card);
>> + return __find_all_intel_card_by_driver_name(card, true, "i915");
>> +}
>> +
>> static struct igt_device *igt_device_from_syspath(const char *syspath)
>> {
>> struct igt_device *dev;
>> diff --git a/lib/igt_device_scan.h b/lib/igt_device_scan.h
>> index 92741fe3c..da107292a 100644
>> --- a/lib/igt_device_scan.h
>> +++ b/lib/igt_device_scan.h
>> @@ -59,6 +59,7 @@ struct igt_device_card {
>> char subsystem[NAME_MAX];
>> char card[NAME_MAX];
>> char render[NAME_MAX];
>> + char driver[NAME_MAX];
>> char pci_slot_name[PCI_SLOT_NAME_SIZE+1];
>> uint16_t pci_vendor, pci_device;
>> };
>> @@ -92,6 +93,10 @@ bool
>> igt_device_find_first_i915_discrete_card(struct igt_device_card *card);
>> bool igt_device_find_integrated_card(struct igt_device_card *card);
>> bool igt_device_find_first_xe_discrete_card(struct igt_device_card
>> *card);
>> bool igt_device_find_xe_integrated_card(struct igt_device_card *card);
>> +int igt_device_find_all_i915_discrete_card(struct igt_device_card
>> **card);
>> +int igt_device_find_all_i915_integrated_card(struct igt_device_card
>> **card);
>> +int igt_device_find_all_xe_integrated_card(struct igt_device_card
>> **card);
>> +int igt_device_find_all_xe_discrete_card(struct igt_device_card **card);
>> char *igt_device_get_pretty_name(struct igt_device_card *card, bool
>> numeric);
>> int igt_open_card(struct igt_device_card *card);
>> int igt_open_render(struct igt_device_card *card);
>> diff --git a/lib/igt_perf.c b/lib/igt_perf.c
>> index 3866c6d77..3f2f3311f 100644
>> --- a/lib/igt_perf.c
>> +++ b/lib/igt_perf.c
>> @@ -129,6 +129,59 @@ uint64_t igt_perf_type_id(const char *device)
>> return strtoull(buf, NULL, 0);
>> }
>> +int igt_perf_format(const char *device, const char *name, char *buff,
>> int buflen)
>> +{
>> + char buf[NAME_MAX];
>> + ssize_t ret;
>> + int fd;
>> +
>> + snprintf(buf, sizeof(buf),
>> + "/sys/bus/event_source/devices/%s/format/%s", device, name);
>> +
>> + fd = open(buf, O_RDONLY);
>> + if (fd < 0)
>> + return -1;
>> +
>> + ret = read(fd, buff, buflen - 1);
>> + close(fd);
>> + if (ret < 1)
>> + return -1;
>> +
>> + buf[ret] = '\0';
>> +
>> + return 0;
>> +}
>> +
>> +uint64_t xe_perf_event_config(int xe, const char *pmu_str)
>
> The above 2 functions are already merged in IGT as part of my C6 tests,
> you can remove them from this patch.
>
> Thanks,
>
> Vinay.
>
>> +{
>> + char buf[150];
>> + ssize_t ret;
>> + int fd;
>> + uint64_t config;
>> + char device[30];
>> +
>> + snprintf(buf, sizeof(buf),
>> + "/sys/bus/event_source/devices/%s/events/%s",
>> + xe_perf_device(xe, device, sizeof(device)),
>> + pmu_str);
>> +
>> + fd = open(buf, O_RDONLY);
>> + if (fd < 0)
>> + return 0;
>> +
>> + ret = read(fd, buf, sizeof(buf) - 1);
>> + close(fd);
>> + if (ret < 1)
>> + return 0;
>> +
>> + buf[ret] = '\0';
>> + ret = sscanf(buf, "event=0x%lx", &config);
>> + if (ret != 1)
>> + return 0;
>> +
>> + return config;
>> +}
>> +
>> int igt_perf_events_dir(int i915)
>> {
>> char buf[80];
>> diff --git a/lib/igt_perf.h b/lib/igt_perf.h
>> index 3d9ba2917..26b9ffa29 100644
>> --- a/lib/igt_perf.h
>> +++ b/lib/igt_perf.h
>> @@ -54,9 +54,11 @@ perf_event_open(struct perf_event_attr *attr,
>> }
>> uint64_t igt_perf_type_id(const char *device);
>> +uint64_t xe_perf_event_config(int xe, const char *pmu_event);
>> int igt_perf_events_dir(int i915);
>> int igt_perf_open(uint64_t type, uint64_t config);
>> int igt_perf_open_group(uint64_t type, uint64_t config, int group);
>> +int igt_perf_format(const char *device, const char *name, char *buff,
>> int buflen);
>> const char *i915_perf_device(int i915, char *buf, int buflen);
>> uint64_t i915_perf_type_id(int i915);
>> diff --git a/tools/gputop/common_gputop.c b/tools/gputop/common_gputop.c
>> new file mode 100644
>> index 000000000..1188d8e6a
>> --- /dev/null
>> +++ b/tools/gputop/common_gputop.c
different name? print or format?
>> @@ -0,0 +1,51 @@
>> +// SPDX-License-Identifier: MIT
>> +/*
>> + * Copyright © 2025 Intel Corporation
>> + */
>> +#include <stdio.h>
>> +#include <stdlib.h>
>> +#include "common_gputop.h"
>> +
>> +static const char * const bars[] = { " ", "▏", "▎", "▍", "▌", "▋",
>> "▊", "▉", "█" };
>> +
>> +void n_spaces(const unsigned int n)
add spaces?
>> +{
>> + unsigned int i;
>> +
>> + for (i = 0; i < n; i++)
>> + putchar(' ');
>> +}
>> +
>> +void print_percentage_bar(double percent, int max_len)
>> +{
>> + 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;
>> +
>> + bar_len = ceil(w * percent * len / 100.0);
>> + if (bar_len > w * len)
>> + bar_len = w * len;
>> +
>> + for (i = bar_len; i >= w; i -= w)
>> + printf("%s", bars[w]);
>> + if (i)
>> + printf("%s", bars[i]);
>> +
>> + len -= (bar_len + (w - 1)) / w;
>> + n_spaces(len);
>> +
>> + putchar('|');
>> +}
>> +
>> +int print_engines_footer(int lines, int con_w, int con_h)
what is con_w and con_h here?
>> +{
>> + if (lines++ < con_h)
>> + printf("\n");
>> +
>> + return lines;
>> +}
>> diff --git a/tools/gputop/common_gputop.h b/tools/gputop/common_gputop.h
>> new file mode 100644
>> index 000000000..29ba48d86
>> --- /dev/null
>> +++ b/tools/gputop/common_gputop.h
>> @@ -0,0 +1,16 @@
>> +// SPDX-License-Identifier: MIT
>> +/*
>> + * Copyright © 2025 Intel Corporation
>> + */
>> +#ifndef COMMON_GPUTOP_H
>> +#define COMMON_GPUTOP_H
>> +
>> +#include <stdio.h>
>> +#include <stdlib.h>
headers are already included in .c. Can be removed here
>> +#include <math.h>
>> +
>> +void print_percentage_bar(double percent, int max_len);
>> +int print_engines_footer(int lines, int con_w, int con_h);
>> +void n_spaces(const unsigned int n);
>> +
>> +#endif // COMMON_GPUTOP_H
Do not use //
>> diff --git a/tools/gputop.c b/tools/gputop/gputop.c
>> similarity index 65%
>> rename from tools/gputop.c
>> rename to tools/gputop/gputop.c
>> index 43b01f566..e53d1f087 100644
>> --- a/tools/gputop.c
>> +++ b/tools/gputop/gputop.c
>> @@ -1,8 +1,7 @@
>> // SPDX-License-Identifier: MIT
>> /*
>> - * Copyright © 2023 Intel Corporation
>> + * Copyright © 2025 Intel Corporation
retain the prev year or append to it
>> */
>> -
>> #include <assert.h>
>> #include <ctype.h>
>> #include <dirent.h>
>> @@ -31,49 +30,78 @@
>> #include "igt_drm_fdinfo.h"
>> #include "igt_profiling.h"
>> #include "drmtest.h"
>> +#include "xe/xe_query.h"
>> +#include "igt_perf.h"
>> +#include "igt_device_scan.h"
>> +#include "xe_gputop.h"
alphabetical
>> -enum utilization_type {
>> - UTILIZATION_TYPE_ENGINE_TIME,
>> - UTILIZATION_TYPE_TOTAL_CYCLES,
>> +/*
>> + * Supported Drivers
>> + */
>> +static const char * const drivers[] = {
>> + "xe",
>> +// "i915", yet to implement
do not use //
>> + /*Keep the last one NULL*/
>> + NULL
>> };
>> -static const char *bars[] = { " ", "▏", "▎", "▍", "▌", "▋", "▊", "▉",
>> "█" };
>> -
>> -#define ANSI_HEADER "\033[7m"
>> -#define ANSI_RESET "\033[0m"
>> +/*
>> + * Number of supported drivers needs to be adjusted
>> + * as per the letgth of the drivers[] array.
>> + */
>> +#define NUM_DRIVER 1
>> -static void n_spaces(const unsigned int n)
>> -{
>> - unsigned int i;
>> +/*
>> + * Supported operations on driver instances.
>> + * Update the array of function pointers for
>> + * each individual driver specific function.
>> + * Maintain the sequence as per drivers[] array.
>> + */
>> +void *(*discover_engines[NUM_DRIVER])(const void *obj) = {
>> + xe_discover_engines
>> +};
This could be struct with all the function pointers
>> - for (i = 0; i < n; i++)
>> - putchar(' ');
>> -}
>> +void (*pmu_sample[NUM_DRIVER])(const void *obj) = {
>> + xe_pmu_sample
>> +};
>> -static void print_percentage_bar(double percent, int max_len)
>> -{
>> - int bar_len, i, len = max_len - 1;
>> - const int w = 8;
>> +int (*pmu_init[NUM_DRIVER])(const void *obj) = {
>> + xe_pmu_init
>> +};
>> - len -= printf("|%5.1f%% ", percent);
>> +int (*print_engines[NUM_DRIVER])(const void *obj, int lines, int w,
>> int h) = {
>> + xe_print_engines
>> +};
>> - /* no space left for bars, do what we can */
>> - if (len < 0)
>> - len = 0;
>> +/*
>> + * Update this devices[] array with initialized
>> + * values as per drivers[] array
>> + */
>> +struct gputop_device {
>> + bool driver_present;
>> + int len;
>> + void *instances;
>> +} devices[] = {
>> + {false, 0, NULL}
>> +};
>> - bar_len = ceil(w * percent * len / 100.0);
>> - if (bar_len > w * len)
>> - bar_len = w * len;
>> +enum utilization_type {
>> + UTILIZATION_TYPE_ENGINE_TIME,
>> + UTILIZATION_TYPE_TOTAL_CYCLES,
>> +};
ENGINE_ACTIVE_TICKS and ENGINE_TOTAL_TICKS?
>> - for (i = bar_len; i >= w; i -= w)
>> - printf("%s", bars[w]);
>> - if (i)
>> - printf("%s", bars[i]);
>> +#define ANSI_HEADER "\033[7m"
>> +#define ANSI_RESET "\033[0m"
>> - len -= (bar_len + (w - 1)) / w;
>> - n_spaces(len);
>> +void xe_populate_device_instances(struct gputop_device *dv);
>> - putchar('|');
>> +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;
>> }
>> static int
>> @@ -305,7 +333,6 @@ static int client_cmp(const void *_a, const void
>> *_b, void *unused)
>> return 1;
>> else
>> return -1;
>> -
>> }
>> static void update_console_size(int *w, int *h)
>> @@ -333,6 +360,7 @@ static void clrscr(void)
>> struct gputop_args {
>> long n_iter;
>> unsigned long delay_usec;
>> + char *device;
>> };
>> static void help(void)
>> @@ -343,16 +371,18 @@ static void help(void)
>> "\t-h, --help show this help\n"
>> "\t-d, --delay =SEC[.TENTHS] iterative delay as SECS
>> [.TENTHS]\n"
>> "\t-n, --iterations =NUMBER number of executions\n"
>> + "\t-D, --device Device filter"
>> , program_invocation_short_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[] = "hn:d:D:";
>> static const struct option cmdopts[] = {
>> {"help", no_argument, 0, 'h'},
>> {"delay", required_argument, 0, 'd'},
>> {"iterations", required_argument, 0, 'n'},
>> + {"device", required_argument, 0, 'D'},
>> { }
>> };
>> @@ -360,6 +390,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->device = NULL;
>> for (;;) {
>> int c, idx = 0;
>> @@ -383,6 +414,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();
>> return 0;
>> @@ -403,6 +437,56 @@ static void sigint_handler(int sig)
>> stop_top = true;
>> }
>> +void xe_populate_device_instances(struct gputop_device *dv)
>> +{
>> + struct igt_device_card *card_int = NULL, *card_dis = NULL,
>> *cards_combi = NULL;
>> + int count_int = 0, count_dis = 0;
>> +
>> + count_int = igt_device_find_all_xe_integrated_card(&card_int);
>> + count_dis = igt_device_find_all_xe_discrete_card(&card_dis);
>> +
>> + if (count_int > 0 || count_dis > 0) {
>> + // Allocate memory for the combined array
>> + cards_combi = (struct igt_device_card *)calloc((count_int +
>> count_dis),
>> + sizeof(struct igt_device_card));
>> + if (!cards_combi) {
>> + fprintf(stderr, "Memory allocation failed for
>> igt_device_card\n");
>> + if (card_int)
>> + free(card_int);
>> + if (card_dis)
>> + free(card_dis);
>> + exit(EXIT_FAILURE);
>> + }
>> +
>> + if (card_int) {
>> + memcpy(cards_combi, card_int,
>> + count_int * sizeof(struct igt_device_card));
>> + free(card_int);
>> + }
>> +
>> + if (card_dis) {
>> + memcpy(cards_combi + count_int,
>> + card_dis, count_dis * sizeof(struct
>> igt_device_card));
>> + free(card_dis);
>> + }
>> +
>> + dv->driver_present = true;
>> + dv->len = count_int + count_dis;
>> + dv->instances = calloc(dv->len, sizeof(struct xe_gputop));
>> + for (int i = 0; i < count_int; i++) {
>> + xe_gputop_init((struct xe_gputop *)dv->instances + i,
>> + cards_combi + i
>> + );
>> + }
>> +
>> + for (int i = 0; i < count_dis; i++) {
>> + xe_gputop_init((struct xe_gputop *)dv->instances +
>> count_int + i,
>> + cards_combi + count_int + i
>> + );
>> + }
>> + }
>> +}
>> +
>> int main(int argc, char **argv)
>> {
>> struct gputop_args args;
>> @@ -422,6 +506,85 @@ int main(int argc, char **argv)
>> n = args.n_iter;
>> period_us = args.delay_usec;
>> + igt_devices_scan();
>> +
>> + if (args.device) {
>> + struct igt_device_card *card = calloc(1, sizeof(struct
>> igt_device_card));
>> +
>> + if (!igt_device_card_match(args.device, card)) {
>> + printf("No device found for the filter\n"
>> + "Showing for all devices\n");
>> + free(card);
>> + } else {
>> + int driver_no = find_Driver(card);
rename function to find_driver/get_driver. Generally dont use Caps
>> +
>> + if (driver_no < 0) {
>> + fprintf(stderr, "The driver %s could not be found.",
>> card->driver);
>> + exit(EXIT_FAILURE);
>> + }
>> +
>> + devices[driver_no].driver_present = true;
>> + devices[driver_no].len = 1;
>> + switch (driver_no) {
>> + case 0:
>> + devices[driver_no].instances =
>> + calloc(1, sizeof(struct xe_gputop));
>> + xe_gputop_init(devices[driver_no].instances,
>> + card
>> + );
>> + break;
>> + }
>> + goto explore_devices;
>> + }
>> + }
>> +
>> + for (int i = 0; drivers[i]; i++) {
>> + switch (i) {
>> + case 0: // xe
Do not use //
>> + xe_populate_device_instances(devices + i);
>> + break;
>> + }
>> + }
>> +
>> +explore_devices:
>> +
>> + for (int i = 0; drivers[i]; i++) {
>> + if (devices[i].driver_present) {
>> + for (int j = 0; j < devices[i].len; j++) {
>> + if (!discover_engines[i](devices[i].instances + j)) {
>> + fprintf(stderr,
>> + "Failed to discover engines! (%s)\n",
>> + strerror(errno));
>> + return EXIT_FAILURE;
>> + }
>> + ret = pmu_init[i](devices[i].instances + j);
>> +
>> + if (ret) {
>> + fprintf(stderr,
>> + "Failed to initialize PMU! (%s)\n",
>> + strerror(errno));
>> + if (errno == EACCES && geteuid())
>> + fprintf(stderr,
>> + "\n"
>> + "When running as a normal user
>> CAP_PERFMON is required to access performance\n"
>> + "monitoring. See \"man 7 capabilities\",
>> \"man 8 setcap\", or contact your\n"
>> + "distribution vendor for assistance.\n"
>> + "\n"
>> + "More information can be found at 'Perf
>> events and tool security' document:\n"
>> + "https://www.kernel.org/doc/html/latest/
>> admin-guide/perf-security.html\n");
>> +
>> + igt_devices_free();
>> + return EXIT_FAILURE;
>> + }
>> + }
>> + }
>> + }
>> +
>> + for (int i = 0; drivers[i]; i++) {
>> + for (int j = 0; devices[i].driver_present && j <
>> devices[i].len; j++)
>> + pmu_sample[i](devices[i].instances + j);
>> + }
>> +
>> clients = igt_drm_clients_init(NULL);
>> if (!clients)
>> exit(1);
>> @@ -442,7 +605,7 @@ 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);
>> igt_drm_clients_sort(clients, client_cmp);
>> @@ -450,6 +613,14 @@ int main(int argc, char **argv)
>> update_console_size(&con_w, &con_h);
>> clrscr();
>> + for (int i = 0; drivers[i]; i++) {
>> + for (int j = 0; devices[i].driver_present && j <
>> devices[i].len; j++) {
>> + pmu_sample[i](devices[i].instances + j);
>> + lines = print_engines[i](devices[i].instances + j,
>> + lines, con_w, con_h);
>> + }
>> + }
>> +
>> if (!clients->num_clients) {
>> const char *msg = " (No GPU clients yet. Start workload
>> to see stats)";
>> @@ -457,7 +628,7 @@ int main(int argc, char **argv)
>> (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. */
>> @@ -489,3 +660,4 @@ int main(int argc, char **argv)
>> return 0;
>> }
>> +
>> diff --git a/tools/gputop/meson.build b/tools/gputop/meson.build
>> new file mode 100644
>> index 000000000..0512ac3d6
>> --- /dev/null
>> +++ b/tools/gputop/meson.build
>> @@ -0,0 +1,6 @@
>> +gputop_src = [ 'gputop.c', 'common_gputop.c', 'xe_gputop.c']
>> +executable('gputop', sources : gputop_src,
>> + install : true,
>> + install_rpath : bindir_rpathdir,
>> + dependencies :
>> [igt_deps,lib_igt_perf,lib_igt_drm_clients,lib_igt_drm_fdinfo,lib_igt_profiling,math],
>> + install: true)
>> diff --git a/tools/gputop/xe_gputop.c b/tools/gputop/xe_gputop.c
>> new file mode 100644
>> index 000000000..2751a6e4e
>> --- /dev/null
>> +++ b/tools/gputop/xe_gputop.c
>> @@ -0,0 +1,359 @@
>> +/* SPDX-License-Identifier: MIT */
>> +/*
>> + * Copyright © 2025 Intel Corporation
>> + */
>> +
>> +#include "xe_gputop.h"
>> +#include "common_gputop.h"
>> +
>> +#define engine_ptr(engines, n) (&(engines)->engine + (n))
>> +
>> +static void __update_sample(struct xe_pmu_counter *counter, uint64_t
>> val)
>> +{
>> + counter->val.prev = counter->val.cur;
>> + counter->val.cur = val;
>> +}
>> +
>> +static void update_sample(struct xe_pmu_counter *counter, uint64_t *val)
>> +{
>> + if (counter->present)
>> + __update_sample(counter, val[counter->idx]);
>> +}
>> +
>> +static const char *class_display_name(unsigned int class)
>> +{
>> + switch (class) {
>> + case DRM_XE_ENGINE_CLASS_RENDER:
>> + return "Render/3D";
>> + case DRM_XE_ENGINE_CLASS_COPY:
>> + return "Blitter";
>> + case DRM_XE_ENGINE_CLASS_VIDEO_DECODE:
>> + return "Video";
>> + case DRM_XE_ENGINE_CLASS_VIDEO_ENHANCE:
>> + return "VideoEnhance";
>> + case DRM_XE_ENGINE_CLASS_COMPUTE:
>> + return "Compute";
>> + default:
>> + return "[unknown]";
>> + }
>> +}
>> +
>> +static inline void *clean_up(void *engines)
>> +{
>> + if (engines)
>> + free(engines);
>> +
>> + return NULL;
>> +}
>> +
>> +static int _open_pmu(uint64_t type, unsigned int *cnt, struct
>> xe_pmu_counter *pmu, int *fd)
>> +{
>> + int fd__ = igt_perf_open_group(type, pmu->config, *fd);
>> +
>> + if (fd__ >= 0) {
>> + if (*fd == -1)
>> + *fd = fd__;
>> + pmu->present = true;
>> + pmu->idx = (*cnt)++;
>> + }
>> +
>> + return fd__;
>> +}
>> +
>> +/* tr_pmu_name()
>> + *
>> + * Transliterate pci_slot_id to sysfs device name entry for discrete
>> GPU.
>> + * Discrete GPU PCI ID ("xxxx:yy:zz.z") device =
>> "xe_xxxx_yy_zz.z".
>> + */
>> +static char *tr_pmu_name(const struct igt_device_card *card)
>> +{
>> + int ret;
>> + const int bufsize = 16;
>> + char *buf, *device = NULL;
>> +
>> + assert(card->pci_slot_name[0]);
>> +
>> + device = malloc(bufsize);
>> + assert(device);
>> +
>> + ret = snprintf(device, bufsize, "xe_%s", card->pci_slot_name);
>> + assert(ret == (bufsize - 1));
>> +
>> + buf = device;
>> + for (; *buf; buf++)
>> + if (*buf == ':')
>> + *buf = '_';
>> +
>> + return device;
>> +}
you can use xe_perf_device instead from lib/igt_perf
Haven't completely looked at the code.
Will be sending out few more review comments
Thanks
Riana
>> +
>> +void xe_gputop_init(struct xe_gputop *obj,
>> + struct igt_device_card *card)
>> +{
>> + obj->pmu_device = tr_pmu_name(card);
>> + obj->card = card;
>> +}
>> +
>> +static int pmu_format_shift(int xe, const char *name)
>> +{
>> + int start, end, ret;
>> + int format;
>> + char device[80], buff[80];
>> +
>> + format = igt_perf_format(xe_perf_device(xe, device, sizeof(device)),
>> + name, buff, sizeof(buff));
>> + if (format)
>> + return 0;
>> +
>> + ret = sscanf(buff, "config:%d-%d", &start, &end);
>> + igt_assert(ret >= 1);
>> +
>> + return start;
>> +}
>> +
>> +static int engine_cmp(const void *__a, const void *__b)
>> +{
>> + const struct xe_engine *a = (struct xe_engine *)__a;
>> + const struct xe_engine *b = (struct xe_engine *)__b;
>> +
>> + if (a->drm_xe_engine.engine_class != b->drm_xe_engine.engine_class)
>> + return a->drm_xe_engine.engine_class - b-
>> >drm_xe_engine.engine_class;
>> + else
>> + return a->drm_xe_engine.engine_instance - b-
>> >drm_xe_engine.engine_instance;
>> +}
>> +
>> +void *xe_discover_engines(const void *obj)
>> +{
>> + struct igt_device_card *card = ((struct xe_gputop *)obj)->card;
>> + struct xe_engines *engines;
>> + int ret = 0;
>> + DIR *d;
>> + struct drm_xe_engine_class_instance *hwe;
>> + int card_fd;
>> +
>> + if (!card || !strlen(card->card) || !strlen(card->render))
>> + return NULL;
>> +
>> + if (strlen(card->card)) {
>> + card_fd = igt_open_card(card);
>> + } else if (strlen(card->render)) {
>> + card_fd = igt_open_render(card);
>> + } else {
>> + fprintf(stderr, "Failed to detect device!\n");
>> + return clean_up(engines);
>> + }
>> + xe_device_get(card_fd);
>> + engines = malloc(sizeof(struct xe_engines));
>> + if (!engines)
>> + return NULL;
>> +
>> + memset(engines, 0, sizeof(*xe_engines));
>> +
>> + engines->num_engines = 0;
>> + engines->device = ((struct xe_gputop *)obj)->pmu_device;
>> + xe_for_each_engine(card_fd, hwe) {
>> + uint64_t engine_class, engine_instance, gt_shift, param_config;
>> + struct xe_engine *engine;
>> +
>> + engine = engine_ptr(engines, engines->num_engines);
>> + 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");
>> + 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->busy.config = xe_perf_event_config(card_fd, "engine-
>> active-ticks")
>> + | param_config;
>> + engine->total.config = xe_perf_event_config(card_fd, "engine-
>> total-ticks")
>> + | param_config;
>> +
>> + if (engine->busy.config == -1 || engine->total.config == -1) {
>> + ret = ENOENT;
>> + break;
>> + }
>> +
>> + ret = asprintf(&engine->display_name, "%s/%u",
>> + class_display_name(engine-
>> >drm_xe_engine.engine_class),
>> + engine->drm_xe_engine.engine_instance);
>> +
>> + if (ret <= 0) {
>> + ret = errno;
>> + break;
>> + }
>> + ret = asprintf(&engine->short_name, "%s/%u",
>> + xe_engine_class_short_string(engine-
>> >drm_xe_engine.engine_class),
>> + engine->drm_xe_engine.engine_instance);
>> +
>> + if (ret <= 0) {
>> + ret = errno;
>> + break;
>> + }
>> +
>> + engines->num_engines++;
>> + engines = realloc(engines, sizeof(struct xe_engines) +
>> + engines->num_engines * sizeof(struct xe_engine));
>> + if (!engines) {
>> + ret = errno;
>> + break;
>> + }
>> + }
>> +
>> + if (!ret) {
>> + errno = ret;
>> + return clean_up(engines);
>> + }
>> +
>> + qsort(engine_ptr(engines, 0), engines->num_engines,
>> + sizeof(struct xe_engine), engine_cmp);
>> +
>> + engines->root = d;
>> + ((struct xe_gputop *)obj)->eng_obj = engines;
>> +
>> + return engines;
>> +}
>> +
>> +static uint64_t pmu_read_multi(int fd, unsigned int num, uint64_t *val)
>> +{
>> + uint64_t buf[2 + num];
>> + unsigned int i;
>> + ssize_t len;
>> +
>> + memset(buf, 0, sizeof(buf));
>> +
>> + len = read(fd, buf, sizeof(buf));
>> + assert(len == sizeof(buf));
>> +
>> + for (i = 0; i < num; i++)
>> + val[i] = buf[2 + i];
>> +
>> + return buf[1];
>> +}
>> +
>> +void xe_pmu_sample(const void *obj)
>> +{
>> + struct xe_engines *engines = ((struct xe_gputop *)obj)->eng_obj;
>> + const int num_val = engines->num_counters;
>> + uint64_t val[2 + num_val];
>> + unsigned int i;
>> +
>> + engines->ts.prev = engines->ts.cur;
>> + engines->ts.cur = pmu_read_multi(engines->fd, num_val, val);
>> +
>> + for (i = 0; i < engines->num_engines; i++) {
>> + struct xe_engine *engine = engine_ptr(engines, i);
>> +
>> + update_sample(&engine->busy, val);
>> + update_sample(&engine->total, val);
>> + }
>> +}
>> +
>> +int xe_pmu_init(const void *obj)
>> +{
>> + struct xe_engines *engines = ((struct xe_gputop *)obj)->eng_obj;
>> + unsigned int i;
>> + int fd;
>> + struct xe_engine *engine;
>> + uint64_t type = igt_perf_type_id(engines->device);
>> +
>> + engines->fd = -1;
>> + engines->num_counters = 0;
>> +
>> + engine = engine_ptr(engines, 0);
>> + fd = _open_pmu(type, &engines->num_counters, &engine->busy,
>> &engines->fd);
>> + if (fd < 0)
>> + return -1;
>> + fd = _open_pmu(type, &engines->num_counters, &engine->total,
>> &engines->fd);
>> + if (fd < 0)
>> + return -1;
>> +
>> + for (i = 1; i < engines->num_engines; i++) {
>> + engine = engine_ptr(engines, i);
>> + fd = _open_pmu(type, &engines->num_counters, &engine->busy,
>> &engines->fd);
>> + if (fd < 0)
>> + return -1;
>> + fd = _open_pmu(type, &engines->num_counters, &engine->total,
>> &engines->fd);
>> + if (fd < 0)
>> + return -1;
>> + }
>> + return 0;
>> +}
>> +
>> +static double pmu_calc_total(struct xe_pmu_pair *p)
>> +{
>> + double v;
>> +
>> + v = (p->cur - p->prev) / 1e9;
>> + return v;
>> +}
>> +
>> +static double pmu_calc(struct xe_pmu_pair *p, double total_tick)
>> +{
>> + double bz = (p->cur - p->prev) / 1e9;
>> + double total;
>> +
>> + total = (bz * 100) / total_tick;
>> + return total;
>> +}
>> +
>> +static int
>> +print_engines_header(struct xe_engines *engines,
>> + int lines, int con_w, int con_h)
>> +{
>> + const char *a;
>> +
>> + for (unsigned int i = 0;
>> + i < engines->num_engines && lines < con_h;
>> + i++) {
>> + struct xe_engine *engine = engine_ptr(engines, i);
>> +
>> + if (!engine->num_counters)
>> + continue;
>> +
>> + a = " ENGINES BUSY ";
>> +
>> + printf("\033[7m%s%*s\033[0m\n",
>> + a,
>> + (int)(con_w - strlen(a)), " ");
>> +
>> + lines++;
>> +
>> + break;
>> + }
>> +
>> + return lines;
>> +}
>> +
>> +static int
>> +print_engine(struct xe_engines *engines, unsigned int i,
>> + int lines, int con_w, int con_h)
>> +{
>> + struct xe_engine *engine = engine_ptr(engines, i);
>> + double total_tick = pmu_calc_total(&engine->total.val);
>> + double percentage = pmu_calc(&engine->busy.val, total_tick);
>> +
>> + printf("%*s", (int)(strlen(" ENGINES")), engine-
>> >display_name);
>> + //printf(" %5.1f", percentage);
>> + print_percentage_bar(percentage, con_w - strlen("
>> ENGINES"));
>> + printf("\n");
>> +
>> + return ++lines;
>> +}
>> +
>> +int xe_print_engines(const void *obj, int lines, int w, int h)
>> +{
>> + struct xe_engines *engines = ((struct xe_gputop *)obj)->eng_obj;
>> + struct xe_engines *show;
>> +
>> + show = engines;
>> +
>> + lines = print_engines_header(show, lines, w, h);
>> +
>> + for (unsigned int i = 0; i < show->num_engines && lines < h; i++)
>> + lines = print_engine(show, i, lines, w, h);
>> +
>> + lines = print_engines_footer(lines, w, h);
>> +
>> + return lines;
>> +}
>> +
>> diff --git a/tools/gputop/xe_gputop.h b/tools/gputop/xe_gputop.h
>> new file mode 100644
>> index 000000000..0f7291563
>> --- /dev/null
>> +++ b/tools/gputop/xe_gputop.h
>> @@ -0,0 +1,74 @@
>> +/* SPDX-License-Identifier: MIT
>> + *
>> + * Copyright © 2025 Intel Corporation
>> + */
>> +
>> +#ifndef __XE_GPUTOP_H__
>> +#define __XE_GPUTOP_H__
>> +
>> +#include <dirent.h>
>> +
>> +#include "igt_device_scan.h"
>> +#include "xe/xe_query.h"
>> +#include "igt_perf.h"
>> +#include "common_gputop.h"
>> +
>> +struct xe_pmu_pair {
>> + uint64_t cur;
>> + uint64_t prev;
>> +};
>> +
>> +struct xe_pmu_counter {
>> + uint64_t type;
>> + uint64_t config;
>> + unsigned int idx;
>> + struct xe_pmu_pair val;
>> + bool present;
>> +};
>> +
>> +struct xe_engine {
>> + const char *name;
>> + char *display_name;
>> + char *short_name;
>> + struct drm_xe_engine_class_instance drm_xe_engine;
>> + unsigned int num_counters;
>> + struct xe_pmu_counter busy;
>> + struct xe_pmu_counter total;
>> +};
>> +
>> +struct xe_engines {
>> + unsigned int num_engines;
>> + unsigned int num_classes;
>> + unsigned int num_counters;
>> + DIR *root;
>> + int fd;
>> + struct xe_pmu_pair ts;
>> + bool discrete;
>> + char *device;
>> + int num_gts;
>> +
>> + /* Do not edit below this line.
>> + * This structure is reallocated every time a new engine is
>> + * found and size is increased by sizeof (engine).
>> + */
>> +
>> + struct xe_engine engine;
>> +
>> +};
>> +
>> +struct xe_gputop {
>> + char *pmu_device;
>> + struct igt_device_card *card;
>> + struct xe_engines *eng_obj;
>> +};
>> +
>> +void xe_gputop_init(struct xe_gputop *obj,
>> + struct igt_device_card *card);
>> +
>> +void *xe_discover_engines(const void *obj);
>> +void xe_pmu_sample(const void *obj);
>> +int xe_pmu_init(const void *obj);
>> +int xe_print_engines(const void *obj, int lines, int w, int h);
>> +
>> +#endif // __XE_GPUTOP_H__
>> +
>> diff --git a/tools/meson.build b/tools/meson.build
>> index f091af380..7a9fdfb9c 100644
>> --- a/tools/meson.build
>> +++ b/tools/meson.build
>> @@ -68,11 +68,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,
>> @@ -121,3 +116,4 @@ endif
>> subdir('i915-perf')
>> subdir('xe-perf')
>> subdir('null_state_gen')
>> +subdir('gputop')
>> \ No newline at end of file
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2025-02-21 13:52 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-02-14 16:32 [PATCH i-g-t v2] Add single engine busyness stats in GPUTOP Soham Purkait
2025-02-14 22:51 ` ✓ i915.CI.BAT: success for Add single engine busyness stats in GPUTOP (rev3) Patchwork
2025-02-14 23:06 ` ✓ Xe.CI.BAT: " Patchwork
2025-02-15 1:41 ` ✗ i915.CI.Full: failure " Patchwork
2025-02-16 1:02 ` ✗ Xe.CI.Full: " Patchwork
2025-02-17 14:46 ` [PATCH i-g-t v2] Add single engine busyness stats in GPUTOP Kamil Konieczny
2025-02-21 4:17 ` Belgaumkar, Vinay
2025-02-21 13:51 ` Riana Tauro
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox