* [igt-dev] [PATCH i-g-t 2/5] tests/kms_tiled_display: Replace the igt_display pointer with a struct
2020-03-13 16:11 [igt-dev] [PATCH i-g-t 1/5] tests/kms_tiled_display: Get rid of DP stuff Ville Syrjala
@ 2020-03-13 16:11 ` Ville Syrjala
2020-03-13 16:11 ` [igt-dev] [PATCH i-g-t 3/5] tests/kms_tiled_display: Limit the difference in the timestamps to one scanline Ville Syrjala
` (4 subsequent siblings)
5 siblings, 0 replies; 8+ messages in thread
From: Ville Syrjala @ 2020-03-13 16:11 UTC (permalink / raw)
To: igt-dev
From: Ville Syrjälä <ville.syrjala@linux.intel.com>
No point in storing a pointer when we can just store the struct itself.
The lifetime is the same.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
tests/kms_tiled_display.c | 32 +++++++++++++++-----------------
1 file changed, 15 insertions(+), 17 deletions(-)
diff --git a/tests/kms_tiled_display.c b/tests/kms_tiled_display.c
index f01152f86395..0671ac6c2249 100644
--- a/tests/kms_tiled_display.c
+++ b/tests/kms_tiled_display.c
@@ -55,7 +55,7 @@ typedef struct {
int drm_fd;
int num_h_tiles;
igt_fb_t fb_test_pattern;
- igt_display_t *display;
+ igt_display_t display;
data_connector_t *conns;
enum igt_commit_style commit;
struct timeval first_ts;
@@ -131,8 +131,8 @@ static void get_connectors(data_t *data)
igt_output_t *output;
data_connector_t *conns = data->conns;
- for_each_connected_output(data->display, output) {
- conns[count].connector = drmModeGetConnector(data->display->drm_fd,
+ for_each_connected_output(&data->display, output) {
+ conns[count].connector = drmModeGetConnector(data->display.drm_fd,
output->id);
igt_assert(conns[count].connector);
@@ -177,11 +177,11 @@ static void reset_mode(data_t *data)
data_connector_t *conns = data->conns;
for (count = 0; count < data->num_h_tiles; count++) {
- output = igt_output_from_connector(data->display,
+ output = igt_output_from_connector(&data->display,
conns[count].connector);
igt_output_set_pipe(output, PIPE_NONE);
}
- igt_display_commit2(data->display, data->commit);
+ igt_display_commit2(&data->display, data->commit);
}
static void test_cleanup(data_t *data)
@@ -196,7 +196,7 @@ static void test_cleanup(data_t *data)
}
}
igt_remove_fb(data->drm_fd, &data->fb_test_pattern);
- igt_display_commit2(data->display, data->commit);
+ igt_display_commit2(&data->display, data->commit);
memset(conns, 0, sizeof(data_connector_t) * data->num_h_tiles);
}
@@ -217,10 +217,10 @@ static void setup_mode(data_t *data)
reset_mode(data);
for (count = 0; count < data->num_h_tiles; count++) {
- output = igt_output_from_connector(data->display,
+ output = igt_output_from_connector(&data->display,
conns[count].connector);
- for_each_pipe(data->display, pipe) {
+ for_each_pipe(&data->display, pipe) {
pipe_in_use = false;
found = false;
@@ -257,7 +257,7 @@ static void setup_mode(data_t *data)
igt_require(found);
igt_output_override_mode(output, mode);
}
- igt_display_commit_atomic(data->display, DRM_MODE_ATOMIC_ALLOW_MODESET,
+ igt_display_commit_atomic(&data->display, DRM_MODE_ATOMIC_ALLOW_MODESET,
NULL);
}
@@ -316,7 +316,7 @@ static data_connector_t *conn_for_crtc(data_t *data, unsigned int crtc_id)
for (int i = 0; i < data->num_h_tiles; i++) {
data_connector_t *conn = &data->conns[i];
- if (data->display->pipes[conn->pipe].crtc_id == crtc_id)
+ if (data->display.pipes[conn->pipe].crtc_id == crtc_id)
return conn;
}
@@ -375,7 +375,6 @@ static bool got_all_page_flips(data_t *data)
igt_main
{
- igt_display_t display;
data_t data = {0};
struct pollfd pfd = {0};
drmEventContext drm_event = {0};
@@ -385,15 +384,14 @@ igt_main
data.drm_fd = drm_open_driver_master(DRIVER_ANY);
kmstest_set_vt_graphics_mode();
- igt_display_require(&display, data.drm_fd);
- igt_display_reset(&display);
+ igt_display_require(&data.display, data.drm_fd);
+ igt_display_reset(&data.display);
- data.display = &display;
pfd.fd = data.drm_fd;
pfd.events = POLLIN;
drm_event.version = 3;
drm_event.page_flip_handler2 = page_flip_handler;
- data.commit = data.display->is_atomic ? COMMIT_ATOMIC : COMMIT_LEGACY;
+ data.commit = data.display.is_atomic ? COMMIT_ATOMIC : COMMIT_LEGACY;
igt_require(data.commit == COMMIT_ATOMIC);
get_number_of_h_tiles(&data);
@@ -411,7 +409,7 @@ igt_main
setup_mode(&data);
setup_framebuffer(&data);
timerclear(&data.first_ts);
- igt_display_commit_atomic(data.display, DRM_MODE_ATOMIC_NONBLOCK |
+ igt_display_commit_atomic(&data.display, DRM_MODE_ATOMIC_NONBLOCK |
DRM_MODE_PAGE_FLIP_EVENT, &data);
while (!got_all_page_flips(&data)) {
ret = poll(&pfd, 1, 1000);
@@ -426,6 +424,6 @@ igt_main
free(data.conns);
close(data.drm_fd);
kmstest_restore_vt_mode();
- igt_display_fini(data.display);
+ igt_display_fini(&data.display);
}
}
--
2.24.1
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply related [flat|nested] 8+ messages in thread* [igt-dev] [PATCH i-g-t 3/5] tests/kms_tiled_display: Limit the difference in the timestamps to one scanline
2020-03-13 16:11 [igt-dev] [PATCH i-g-t 1/5] tests/kms_tiled_display: Get rid of DP stuff Ville Syrjala
2020-03-13 16:11 ` [igt-dev] [PATCH i-g-t 2/5] tests/kms_tiled_display: Replace the igt_display pointer with a struct Ville Syrjala
@ 2020-03-13 16:11 ` Ville Syrjala
2020-03-13 16:11 ` [igt-dev] [PATCH i-g-t 4/5] lib/edid: Add support for making DisplayID tile blocks Ville Syrjala
` (3 subsequent siblings)
5 siblings, 0 replies; 8+ messages in thread
From: Ville Syrjala @ 2020-03-13 16:11 UTC (permalink / raw)
To: igt-dev
From: Ville Syrjälä <ville.syrjala@linux.intel.com>
The 10 usec limit is rather abitrary. Let's choose another (perhaps a
bit less) arbitrary value of single scanline. The timestamp could be off
by some significant fraction of a scanline anyway since that's often the
precision the hardware gives us for tracking the scanout position.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
tests/kms_tiled_display.c | 25 +++++++++++++++++++------
1 file changed, 19 insertions(+), 6 deletions(-)
diff --git a/tests/kms_tiled_display.c b/tests/kms_tiled_display.c
index 0671ac6c2249..66b5944e0158 100644
--- a/tests/kms_tiled_display.c
+++ b/tests/kms_tiled_display.c
@@ -59,6 +59,7 @@ typedef struct {
data_connector_t *conns;
enum igt_commit_style commit;
struct timeval first_ts;
+ int linetime_us;
} data_t;
static int drm_property_is_tile(drmModePropertyPtr prop)
@@ -200,6 +201,11 @@ static void test_cleanup(data_t *data)
memset(conns, 0, sizeof(data_connector_t) * data->num_h_tiles);
}
+static int mode_linetime_us(const drmModeModeInfo *mode)
+{
+ return 1000 * mode->htotal / mode->clock;
+}
+
static void setup_mode(data_t *data)
{
int count = 0, prev = 0, i = 0;
@@ -256,6 +262,7 @@ static void setup_mode(data_t *data)
}
igt_require(found);
igt_output_override_mode(output, mode);
+ data->linetime_us = mode_linetime_us(mode);
}
igt_display_commit_atomic(&data->display, DRM_MODE_ATOMIC_ALLOW_MODESET,
NULL);
@@ -323,6 +330,11 @@ static data_connector_t *conn_for_crtc(data_t *data, unsigned int crtc_id)
return NULL;
}
+static float timeval_float(const struct timeval *tv)
+{
+ return tv->tv_sec + tv->tv_usec / 1000000.0f;
+}
+
static void page_flip_handler(int fd, unsigned int seq,
unsigned int tv_sec, unsigned int tv_usec,
unsigned int crtc_id, void *_data)
@@ -345,8 +357,8 @@ static void page_flip_handler(int fd, unsigned int seq,
igt_assert_f(!conn->got_page_flip, "Got two page-flips for CRTC %u\n",
crtc_id);
- igt_debug("Page Flip Event received from CRTC:%d at %u:%u\n", crtc_id,
- tv_sec, tv_usec);
+ igt_debug("Page Flip Event received from CRTC:%d at %.6f\n",
+ crtc_id, timeval_float(¤t_ts));
conn->got_page_flip = true;
@@ -354,11 +366,12 @@ static void page_flip_handler(int fd, unsigned int seq,
usec = diff.tv_sec * 1000000 + diff.tv_usec;
/*
- * For seamless tear-free display, the page flip event timestamps
- * from all the tiles should not differ by more than 10us.
+ * We arbitrarily choose to say that the difference
+ * should be no more than a single scanline.
*/
- igt_fail_on_f(labs(usec) >= 10, "Delayed page flip event from CRTC:%d at %u:%u\n",
- crtc_id, tv_sec, tv_usec);
+ igt_fail_on_f(labs(usec) > data->linetime_us,
+ "Mistimed page flip event from CRTC:%d at %.6f (diff %ld usec, max %d usec)\n",
+ crtc_id, timeval_float(¤t_ts), usec, data->linetime_us);
}
static bool got_all_page_flips(data_t *data)
--
2.24.1
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply related [flat|nested] 8+ messages in thread* [igt-dev] [PATCH i-g-t 4/5] lib/edid: Add support for making DisplayID tile blocks
2020-03-13 16:11 [igt-dev] [PATCH i-g-t 1/5] tests/kms_tiled_display: Get rid of DP stuff Ville Syrjala
2020-03-13 16:11 ` [igt-dev] [PATCH i-g-t 2/5] tests/kms_tiled_display: Replace the igt_display pointer with a struct Ville Syrjala
2020-03-13 16:11 ` [igt-dev] [PATCH i-g-t 3/5] tests/kms_tiled_display: Limit the difference in the timestamps to one scanline Ville Syrjala
@ 2020-03-13 16:11 ` Ville Syrjala
2020-03-13 16:11 ` [igt-dev] [PATCH i-g-t 5/5] tests/kms_tiled_display: Override the EDID to fake some tiles Ville Syrjala
` (2 subsequent siblings)
5 siblings, 0 replies; 8+ messages in thread
From: Ville Syrjala @ 2020-03-13 16:11 UTC (permalink / raw)
To: igt-dev
From: Ville Syrjälä <ville.syrjala@linux.intel.com>
We want to test tiled display support without actually having tiled
displays. To that end we will want to construct fake tile infromation
and append it to the EDID.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
lib/igt_edid.c | 79 ++++++++++++++++++++++++++++++++++++++++++++++++++
lib/igt_edid.h | 49 +++++++++++++++++++++++++++++++
2 files changed, 128 insertions(+)
diff --git a/lib/igt_edid.c b/lib/igt_edid.c
index 1c85486df11b..d1ca3916443d 100644
--- a/lib/igt_edid.c
+++ b/lib/igt_edid.c
@@ -313,6 +313,10 @@ void edid_update_checksum(struct edid *edid)
ext->data.cea.checksum =
compute_checksum((uint8_t *) ext,
sizeof(struct edid_ext));
+ if (ext->tag == EDID_EXT_DISPID)
+ ext->data.dispid.checksum =
+ compute_checksum((uint8_t *) ext,
+ sizeof(struct edid_dispid));
}
}
@@ -477,3 +481,78 @@ void edid_ext_set_cea(struct edid_ext *ext, size_t data_blocks_size,
cea->dtd_start = 4 + data_blocks_size;
cea->misc = flags | num_native_dtds;
}
+
+void *dispid_block_tiled(void *ptr,
+ int num_htiles, int num_vtiles,
+ int htile, int vtile,
+ int hsize, int vsize,
+ const char *topology_id)
+{
+ struct dispid_block_header *block = ptr;
+ struct dispid_tiled_block *tiled = (void*)(block + 1);
+
+ block->tag = 0x12;
+ block->rev = 0;
+ block->num_bytes = sizeof(*tiled);
+
+ num_htiles--;
+ num_vtiles--;
+ hsize--;
+ vsize--;
+
+ tiled->tile_caps =
+ DISPID_MULTI_TILE_AT_TILE_LOCATION |
+ DISPID_SINGLE_TILE_AT_TILE_LOCATION;
+
+ tiled->topo[0] = (num_htiles & 0xf) << 4 |
+ (num_vtiles & 0xf) << 0;
+
+ tiled->topo[1] = (htile & 0xf) << 4 |
+ (vtile & 0xf) << 0;
+
+ tiled->topo[2] = (num_htiles >> 4) << 6 |
+ (num_vtiles >> 4) << 4 |
+ (htile >> 4) << 2 |
+ (vtile >> 4) << 0;
+
+ tiled->tile_size[0] = hsize;
+ tiled->tile_size[1] = hsize >> 8;
+ tiled->tile_size[2] = vsize;
+ tiled->tile_size[3] = vsize >> 8;
+
+ strncpy((char *)tiled->topology_id, topology_id,
+ sizeof(tiled->topology_id));
+
+ return tiled + 1;
+}
+
+void *edid_ext_dispid(struct edid_ext *ext)
+{
+ struct edid_dispid *dispid = &ext->data.dispid;
+
+ ext->tag = EDID_EXT_DISPID;
+
+ return dispid;
+}
+
+void *dispid_init(void *ptr)
+{
+ struct dispid_header *dispid = ptr;
+
+ dispid->rev = 0x10;
+ dispid->prod_id = 0x3;
+ dispid->ext_count = 0;
+
+ return dispid + 1;
+}
+
+void *dispid_done(struct dispid_header *dispid, void *ptr)
+{
+ int bytes = ptr - (void *)dispid;
+
+ dispid->num_bytes = bytes - sizeof(*dispid);
+
+ *(uint8_t *)ptr = compute_checksum((void*)dispid, bytes + 1);
+
+ return ptr + 1;
+}
diff --git a/lib/igt_edid.h b/lib/igt_edid.h
index 59b47a977fe3..8e74052f54ab 100644
--- a/lib/igt_edid.h
+++ b/lib/igt_edid.h
@@ -302,14 +302,54 @@ struct edid_cea {
uint8_t checksum;
} __attribute__((packed));
+enum dispid_tile_caps {
+ DISPID_SINGLE_PHYSICAL_ENCLOSURE = 1 << 7,
+ DISPID_BEZEL_INFORMATION_PRESENT = 1 << 6,
+ DISPID_MULTI_TILE_UNKNOWN = 0 << 3,
+ DISPID_MULTI_TILE_AT_TILE_LOCATION = 1 << 3,
+ DISPID_SINGLE_TILE_UNKNOWN = 1 << 0,
+ DISPID_SINGLE_TILE_AT_TILE_LOCATION = 1 << 0,
+ DISPID_SINGLE_TILE_SCALED_FULLSCREEN = 2 << 0,
+ DISPID_SINGLE_TILE_CLONED_TO_ALL_TILES = 3 << 0,
+};
+
+struct dispid_header {
+ uint8_t rev;
+ uint8_t num_bytes;
+ uint8_t prod_id;
+ uint8_t ext_count;
+} __attribute__((packed));
+
+struct dispid_block_header {
+ uint8_t tag;
+ uint8_t rev;
+ uint8_t num_bytes;
+} __attribute__((packed));
+
+struct dispid_tiled_block {
+ uint8_t tile_caps;
+ uint8_t topo[3];
+ uint8_t tile_size[4];
+ uint8_t tile_pixel_bezel[5];
+ uint8_t topology_id[9];
+} __attribute__((packed));
+
+struct edid_dispid {
+ struct dispid_header header;
+ char data[122];
+ uint8_t checksum;
+} __attribute__((packed));
+
enum edid_ext_tag {
EDID_EXT_CEA = 0x02,
+ EDID_EXT_DISPID = 0x70,
};
struct edid_ext {
uint8_t tag; /* enum edid_ext_tag */
union {
struct edid_cea cea;
+ struct edid_dispid dispid;
} data;
} __attribute__((packed));
@@ -383,4 +423,13 @@ size_t edid_cea_data_block_set_speaker_alloc(struct edid_cea_data_block *block,
void edid_ext_set_cea(struct edid_ext *ext, size_t data_blocks_size,
uint8_t num_native_dtds, uint8_t flags);
+void *edid_ext_dispid(struct edid_ext *ext);
+void *dispid_init(void *ptr);
+void *dispid_done(struct dispid_header *dispid, void *ptr);
+void *dispid_block_tiled(void *ptr,
+ int num_htiles, int num_vtiles,
+ int htile, int vtile,
+ int hsize, int vsize,
+ const char *topology_id);
+
#endif
--
2.24.1
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply related [flat|nested] 8+ messages in thread* [igt-dev] [PATCH i-g-t 5/5] tests/kms_tiled_display: Override the EDID to fake some tiles
2020-03-13 16:11 [igt-dev] [PATCH i-g-t 1/5] tests/kms_tiled_display: Get rid of DP stuff Ville Syrjala
` (2 preceding siblings ...)
2020-03-13 16:11 ` [igt-dev] [PATCH i-g-t 4/5] lib/edid: Add support for making DisplayID tile blocks Ville Syrjala
@ 2020-03-13 16:11 ` Ville Syrjala
2020-03-13 17:11 ` [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/5] tests/kms_tiled_display: Get rid of DP stuff Patchwork
2020-03-13 23:10 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
5 siblings, 0 replies; 8+ messages in thread
From: Ville Syrjala @ 2020-03-13 16:11 UTC (permalink / raw)
To: igt-dev
From: Ville Syrjälä <ville.syrjala@linux.intel.com>
Pretend we have a tiled display if we don't actually have one.
We don't actually know whether the kernel will sync up the displays,
but let's assume it does.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
tests/kms_tiled_display.c | 127 +++++++++++++++++++++++++++++++++++++-
1 file changed, 124 insertions(+), 3 deletions(-)
diff --git a/tests/kms_tiled_display.c b/tests/kms_tiled_display.c
index 66b5944e0158..7a37e12b655d 100644
--- a/tests/kms_tiled_display.c
+++ b/tests/kms_tiled_display.c
@@ -40,6 +40,7 @@
#include "poll.h"
#include "drm_mode.h"
#include "drm_fourcc.h"
+#include "igt_edid.h"
IGT_TEST_DESCRIPTION("Test for genlocked CRTCs with tiled displays");
@@ -110,8 +111,8 @@ static void get_number_of_h_tiles(data_t *data)
for (int i = 0; !data->num_h_tiles && i < res->count_connectors; i++) {
drmModeConnectorPtr connector;
- connector = drmModeGetConnectorCurrent(data->drm_fd,
- res->connectors[i]);
+ connector = drmModeGetConnector(data->drm_fd,
+ res->connectors[i]);
igt_assert(connector);
if (connector->connection == DRM_MODE_CONNECTED) {
@@ -386,6 +387,119 @@ static bool got_all_page_flips(data_t *data)
return true;
}
+static void edid_fill_tile_block(struct edid_ext *ext,
+ int tile, int num_tiles,
+ int hdisplay, int vdisplay)
+{
+ struct dispid_header *dispid;
+ void *ptr;
+
+ dispid = ptr = edid_ext_dispid(ext);
+
+ ptr = dispid_init(ptr);
+ ptr = dispid_block_tiled(ptr, num_tiles, 1,
+ tile, 0,
+ hdisplay, vdisplay,
+ "IGT-TILES");
+ ptr = dispid_done(dispid, ptr);
+}
+
+static struct edid *
+edid_with_tile(const struct edid *old_edid,
+ const drmModeModeInfo *mode,
+ int tile, int num_tiles)
+{
+ struct edid *edid = malloc(edid_get_size(old_edid) + EDID_BLOCK_SIZE);
+
+ memcpy(edid, old_edid, edid_get_size(old_edid));
+ edid->extensions_len++;
+
+ edid_fill_tile_block((struct edid_ext *)&edid[edid->extensions_len],
+ tile, num_tiles, mode->hdisplay, mode->vdisplay);
+
+ edid_update_checksum(edid);
+
+ return edid;
+}
+
+static void force_edid_with_tile(data_t *data,
+ igt_output_t *output,
+ const drmModeModeInfo *mode,
+ int tile, int num_tiles)
+{
+ struct edid *edid;
+ drmModePropertyBlobPtr blob;
+ uint64_t blob_id;
+
+ kmstest_get_property(data->drm_fd, output->id,
+ DRM_MODE_OBJECT_CONNECTOR, "EDID",
+ NULL, &blob_id, NULL);
+
+ blob = drmModeGetPropertyBlob(data->drm_fd, blob_id);
+ edid = edid_with_tile(blob->data, mode, tile, num_tiles);
+ drmModeFreePropertyBlob(blob);
+
+ kmstest_force_edid(data->drm_fd, output->config.connector, edid);
+
+ free(edid);
+}
+
+static bool mode_equal(const drmModeModeInfo *a,
+ const drmModeModeInfo *b)
+{
+ return a->hdisplay == b->hdisplay &&
+ a->hsync_start == b->hsync_start &&
+ a->hsync_end == b->hsync_end &&
+ a->htotal == b->htotal &&
+ a->vdisplay == b->vdisplay &&
+ a->vsync_start == b->vsync_start &&
+ a->vsync_end == b->vsync_end &&
+ a->vtotal == b->vtotal &&
+ a->clock == b->clock &&
+ a->flags == b->flags &&
+ a->hskew == b->hskew &&
+ a->vscan == b->vscan;
+}
+
+static void override_edid(data_t *data)
+{
+ drmModeModeInfo common_mode = {};
+ igt_output_t *outputs[8] = {};
+ igt_output_t *output;
+ int num_outputs = 0;
+ int num_tiles = 0;
+ drmModeResPtr res;
+
+ igt_require(data->display.n_pipes >= 2);
+
+ for_each_connected_output(&data->display, output) {
+ drmModeModeInfo *mode = igt_output_get_mode(output);
+
+ if (!common_mode.hdisplay)
+ common_mode = *mode;
+
+ if (mode_equal(&common_mode, mode)) {
+ outputs[num_outputs] = output;
+ if (++num_outputs >= ARRAY_SIZE(outputs))
+ break;
+ }
+ }
+
+ igt_require(num_outputs >= 2);
+
+ num_tiles = min(num_outputs, data->display.n_pipes);
+
+ /* disable everything so that we are sure to get a full modeset */
+ res = drmModeGetResources(data->drm_fd);
+ igt_require(res);
+ kmstest_unset_all_crtcs(data->drm_fd, res);
+ drmModeFreeResources(res);
+
+ for (int i = 0; i < num_tiles; i++)
+ force_edid_with_tile(data, outputs[i],
+ &common_mode, i, num_tiles);
+}
+
igt_main
{
data_t data = {0};
@@ -408,7 +522,14 @@ igt_main
igt_require(data.commit == COMMIT_ATOMIC);
get_number_of_h_tiles(&data);
- igt_debug("Number of Horizontal Tiles: %d\n", data.num_h_tiles);
+ igt_debug("Number of real horizontal tiles: %d\n", data.num_h_tiles);
+
+ if (data.num_h_tiles == 0) {
+ override_edid(&data);
+ get_number_of_h_tiles(&data);
+
+ igt_debug("Number of fake horizontal tiles: %d\n", data.num_h_tiles);
+ }
igt_require(data.num_h_tiles > 0);
data.conns = calloc(data.num_h_tiles, sizeof(data_connector_t));
}
--
2.24.1
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply related [flat|nested] 8+ messages in thread* [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/5] tests/kms_tiled_display: Get rid of DP stuff
2020-03-13 16:11 [igt-dev] [PATCH i-g-t 1/5] tests/kms_tiled_display: Get rid of DP stuff Ville Syrjala
` (3 preceding siblings ...)
2020-03-13 16:11 ` [igt-dev] [PATCH i-g-t 5/5] tests/kms_tiled_display: Override the EDID to fake some tiles Ville Syrjala
@ 2020-03-13 17:11 ` Patchwork
2020-03-13 23:10 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
5 siblings, 0 replies; 8+ messages in thread
From: Patchwork @ 2020-03-13 17:11 UTC (permalink / raw)
To: Ville Syrjala; +Cc: igt-dev
== Series Details ==
Series: series starting with [i-g-t,1/5] tests/kms_tiled_display: Get rid of DP stuff
URL : https://patchwork.freedesktop.org/series/74687/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_8135 -> IGTPW_4303
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/index.html
Known issues
------------
Here are the changes found in IGTPW_4303 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@i915_selftest@live@execlists:
- fi-apl-guc: [PASS][1] -> [INCOMPLETE][2] ([fdo#103927] / [i915#656])
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/fi-apl-guc/igt@i915_selftest@live@execlists.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/fi-apl-guc/igt@i915_selftest@live@execlists.html
#### Possible fixes ####
* igt@i915_selftest@live@execlists:
- fi-icl-dsi: [DMESG-FAIL][3] ([fdo#108569]) -> [PASS][4]
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/fi-icl-dsi/igt@i915_selftest@live@execlists.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/fi-icl-dsi/igt@i915_selftest@live@execlists.html
* igt@i915_selftest@live@gem_contexts:
- fi-cfl-8700k: [INCOMPLETE][5] ([i915#424]) -> [PASS][6]
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/fi-cfl-8700k/igt@i915_selftest@live@gem_contexts.html
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/fi-cfl-8700k/igt@i915_selftest@live@gem_contexts.html
* igt@i915_selftest@live@hangcheck:
- fi-ivb-3770: [INCOMPLETE][7] ([i915#1405]) -> [PASS][8]
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/fi-ivb-3770/igt@i915_selftest@live@hangcheck.html
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/fi-ivb-3770/igt@i915_selftest@live@hangcheck.html
* igt@kms_chamelium@hdmi-hpd-fast:
- fi-kbl-7500u: [FAIL][9] ([fdo#111407]) -> [PASS][10]
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/fi-kbl-7500u/igt@kms_chamelium@hdmi-hpd-fast.html
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/fi-kbl-7500u/igt@kms_chamelium@hdmi-hpd-fast.html
* igt@kms_flip@basic-flip-vs-wf_vblank:
- fi-bsw-n3050: [FAIL][11] ([i915#34]) -> [PASS][12]
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/fi-bsw-n3050/igt@kms_flip@basic-flip-vs-wf_vblank.html
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/fi-bsw-n3050/igt@kms_flip@basic-flip-vs-wf_vblank.html
[fdo#103927]: https://bugs.freedesktop.org/show_bug.cgi?id=103927
[fdo#108569]: https://bugs.freedesktop.org/show_bug.cgi?id=108569
[fdo#111407]: https://bugs.freedesktop.org/show_bug.cgi?id=111407
[i915#1405]: https://gitlab.freedesktop.org/drm/intel/issues/1405
[i915#34]: https://gitlab.freedesktop.org/drm/intel/issues/34
[i915#424]: https://gitlab.freedesktop.org/drm/intel/issues/424
[i915#656]: https://gitlab.freedesktop.org/drm/intel/issues/656
Participating hosts (39 -> 44)
------------------------------
Additional (11): fi-kbl-7560u fi-tgl-dsi fi-byt-j1900 fi-hsw-peppy fi-glk-dsi fi-snb-2520m fi-ilk-650 fi-gdg-551 fi-bsw-kefka fi-blb-e6850 fi-snb-2600
Missing (6): fi-hsw-4200u fi-skl-6770hq fi-byt-squawks fi-bsw-cyan fi-ctg-p8600 fi-bdw-samus
Build changes
-------------
* CI: CI-20190529 -> None
* IGT: IGT_5508 -> IGTPW_4303
CI-20190529: 20190529
CI_DRM_8135: 17c19ee50a6cbb514b59f9f2d8d7d4f088a56300 @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_4303: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/index.html
IGT_5508: 89d644600a1a9f08794cc7106b63758df40ce1d8 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
== Testlist changes ==
+igt@kms_tiled_display@basic-test-pattern
-igt@kms_dp_tiled_display@basic-test-pattern
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/index.html
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 8+ messages in thread* [igt-dev] ✗ Fi.CI.IGT: failure for series starting with [i-g-t,1/5] tests/kms_tiled_display: Get rid of DP stuff
2020-03-13 16:11 [igt-dev] [PATCH i-g-t 1/5] tests/kms_tiled_display: Get rid of DP stuff Ville Syrjala
` (4 preceding siblings ...)
2020-03-13 17:11 ` [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/5] tests/kms_tiled_display: Get rid of DP stuff Patchwork
@ 2020-03-13 23:10 ` Patchwork
5 siblings, 0 replies; 8+ messages in thread
From: Patchwork @ 2020-03-13 23:10 UTC (permalink / raw)
To: Ville Syrjälä; +Cc: igt-dev
== Series Details ==
Series: series starting with [i-g-t,1/5] tests/kms_tiled_display: Get rid of DP stuff
URL : https://patchwork.freedesktop.org/series/74687/
State : failure
== Summary ==
CI Bug Log - changes from CI_DRM_8135_full -> IGTPW_4303_full
====================================================
Summary
-------
**FAILURE**
Serious unknown changes coming with IGTPW_4303_full absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in IGTPW_4303_full, please notify your bug team to allow them
to document this new failure mode, which will reduce false positives in CI.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/index.html
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in IGTPW_4303_full:
### IGT changes ###
#### Possible regressions ####
* igt@gem_set_tiling_vs_gtt:
- shard-hsw: [PASS][1] -> [DMESG-WARN][2]
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-hsw4/igt@gem_set_tiling_vs_gtt.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-hsw6/igt@gem_set_tiling_vs_gtt.html
* igt@kms_flip@modeset-vs-vblank-race-interruptible:
- shard-kbl: [PASS][3] -> [INCOMPLETE][4]
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-kbl6/igt@kms_flip@modeset-vs-vblank-race-interruptible.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-kbl3/igt@kms_flip@modeset-vs-vblank-race-interruptible.html
* {igt@kms_tiled_display@basic-test-pattern} (NEW):
- shard-tglb: NOTRUN -> [SKIP][5]
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-tglb2/igt@kms_tiled_display@basic-test-pattern.html
- shard-iclb: NOTRUN -> [SKIP][6]
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-iclb8/igt@kms_tiled_display@basic-test-pattern.html
#### Warnings ####
* igt@runner@aborted:
- shard-hsw: ([FAIL][7], [FAIL][8], [FAIL][9], [FAIL][10], [FAIL][11], [FAIL][12], [FAIL][13]) ([fdo#111870]) -> ([FAIL][14], [FAIL][15], [FAIL][16], [FAIL][17], [FAIL][18], [FAIL][19], [FAIL][20], [FAIL][21]) ([fdo#111870] / [i915#478])
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-hsw6/igt@runner@aborted.html
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-hsw5/igt@runner@aborted.html
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-hsw6/igt@runner@aborted.html
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-hsw1/igt@runner@aborted.html
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-hsw7/igt@runner@aborted.html
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-hsw2/igt@runner@aborted.html
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-hsw5/igt@runner@aborted.html
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-hsw1/igt@runner@aborted.html
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-hsw5/igt@runner@aborted.html
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-hsw6/igt@runner@aborted.html
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-hsw7/igt@runner@aborted.html
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-hsw7/igt@runner@aborted.html
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-hsw4/igt@runner@aborted.html
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-hsw4/igt@runner@aborted.html
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-hsw4/igt@runner@aborted.html
New tests
---------
New tests have been introduced between CI_DRM_8135_full and IGTPW_4303_full:
### New IGT tests (1) ###
* igt@kms_tiled_display@basic-test-pattern:
- Statuses : 7 skip(s)
- Exec time: [0.0] s
Known issues
------------
Here are the changes found in IGTPW_4303_full that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@gem_ctx_isolation@vecs0-s3:
- shard-apl: [PASS][22] -> [DMESG-WARN][23] ([i915#180]) +1 similar issue
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-apl1/igt@gem_ctx_isolation@vecs0-s3.html
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-apl1/igt@gem_ctx_isolation@vecs0-s3.html
* igt@gem_exec_parallel@fds:
- shard-glk: [PASS][24] -> [INCOMPLETE][25] ([i915#58] / [k.org#198133])
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-glk1/igt@gem_exec_parallel@fds.html
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-glk9/igt@gem_exec_parallel@fds.html
* igt@gem_exec_reloc@basic-gtt-noreloc:
- shard-hsw: [PASS][26] -> [DMESG-WARN][27] ([i915#478])
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-hsw1/igt@gem_exec_reloc@basic-gtt-noreloc.html
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-hsw7/igt@gem_exec_reloc@basic-gtt-noreloc.html
* igt@gem_exec_schedule@implicit-read-write-bsd1:
- shard-iclb: [PASS][28] -> [SKIP][29] ([fdo#109276] / [i915#677]) +2 similar issues
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-iclb1/igt@gem_exec_schedule@implicit-read-write-bsd1.html
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-iclb8/igt@gem_exec_schedule@implicit-read-write-bsd1.html
* igt@gem_exec_schedule@preempt-other-chain-bsd:
- shard-iclb: [PASS][30] -> [SKIP][31] ([fdo#112146]) +5 similar issues
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-iclb5/igt@gem_exec_schedule@preempt-other-chain-bsd.html
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-iclb2/igt@gem_exec_schedule@preempt-other-chain-bsd.html
* igt@gem_exec_whisper@basic-fds-all:
- shard-tglb: [PASS][32] -> [INCOMPLETE][33] ([i915#1401])
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-tglb3/igt@gem_exec_whisper@basic-fds-all.html
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-tglb5/igt@gem_exec_whisper@basic-fds-all.html
* igt@i915_pm_rpm@modeset-lpsp-stress-no-wait:
- shard-iclb: [PASS][34] -> [SKIP][35] ([i915#1316])
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-iclb4/igt@i915_pm_rpm@modeset-lpsp-stress-no-wait.html
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-iclb1/igt@i915_pm_rpm@modeset-lpsp-stress-no-wait.html
- shard-tglb: [PASS][36] -> [SKIP][37] ([i915#1316])
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-tglb3/igt@i915_pm_rpm@modeset-lpsp-stress-no-wait.html
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-tglb1/igt@i915_pm_rpm@modeset-lpsp-stress-no-wait.html
* igt@i915_pm_rps@waitboost:
- shard-iclb: [PASS][38] -> [FAIL][39] ([i915#413])
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-iclb1/igt@i915_pm_rps@waitboost.html
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-iclb4/igt@i915_pm_rps@waitboost.html
* igt@i915_selftest@live@execlists:
- shard-glk: [PASS][40] -> [INCOMPLETE][41] ([i915#58] / [i915#656] / [k.org#198133])
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-glk4/igt@i915_selftest@live@execlists.html
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-glk7/igt@i915_selftest@live@execlists.html
* igt@kms_cursor_crc@pipe-a-cursor-128x42-onscreen:
- shard-apl: [PASS][42] -> [FAIL][43] ([i915#54])
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-apl3/igt@kms_cursor_crc@pipe-a-cursor-128x42-onscreen.html
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-apl6/igt@kms_cursor_crc@pipe-a-cursor-128x42-onscreen.html
- shard-kbl: [PASS][44] -> [FAIL][45] ([i915#54])
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-kbl7/igt@kms_cursor_crc@pipe-a-cursor-128x42-onscreen.html
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-kbl6/igt@kms_cursor_crc@pipe-a-cursor-128x42-onscreen.html
* igt@kms_flip@dpms-off-confusion-interruptible:
- shard-kbl: [PASS][46] -> [DMESG-WARN][47] ([i915#1297])
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-kbl3/igt@kms_flip@dpms-off-confusion-interruptible.html
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-kbl6/igt@kms_flip@dpms-off-confusion-interruptible.html
- shard-apl: [PASS][48] -> [DMESG-WARN][49] ([i915#1297])
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-apl4/igt@kms_flip@dpms-off-confusion-interruptible.html
[49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-apl3/igt@kms_flip@dpms-off-confusion-interruptible.html
* igt@kms_flip@flip-vs-suspend:
- shard-snb: [PASS][50] -> [DMESG-WARN][51] ([i915#42])
[50]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-snb6/igt@kms_flip@flip-vs-suspend.html
[51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-snb4/igt@kms_flip@flip-vs-suspend.html
- shard-kbl: [PASS][52] -> [DMESG-WARN][53] ([i915#180])
[52]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-kbl7/igt@kms_flip@flip-vs-suspend.html
[53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-kbl7/igt@kms_flip@flip-vs-suspend.html
* igt@kms_flip@modeset-vs-vblank-race-interruptible:
- shard-apl: [PASS][54] -> [INCOMPLETE][55] ([fdo#103927])
[54]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-apl7/igt@kms_flip@modeset-vs-vblank-race-interruptible.html
[55]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-apl4/igt@kms_flip@modeset-vs-vblank-race-interruptible.html
* igt@kms_psr@psr2_cursor_plane_move:
- shard-iclb: [PASS][56] -> [SKIP][57] ([fdo#109441])
[56]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-iclb2/igt@kms_psr@psr2_cursor_plane_move.html
[57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-iclb3/igt@kms_psr@psr2_cursor_plane_move.html
* igt@kms_vblank@pipe-a-ts-continuation-modeset-rpm:
- shard-tglb: [PASS][58] -> [SKIP][59] ([fdo#112015])
[58]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-tglb6/igt@kms_vblank@pipe-a-ts-continuation-modeset-rpm.html
[59]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-tglb1/igt@kms_vblank@pipe-a-ts-continuation-modeset-rpm.html
- shard-hsw: [PASS][60] -> [SKIP][61] ([fdo#109271])
[60]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-hsw7/igt@kms_vblank@pipe-a-ts-continuation-modeset-rpm.html
[61]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-hsw1/igt@kms_vblank@pipe-a-ts-continuation-modeset-rpm.html
- shard-iclb: [PASS][62] -> [SKIP][63] ([fdo#109278])
[62]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-iclb8/igt@kms_vblank@pipe-a-ts-continuation-modeset-rpm.html
[63]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-iclb1/igt@kms_vblank@pipe-a-ts-continuation-modeset-rpm.html
- shard-glk: [PASS][64] -> [SKIP][65] ([fdo#109271])
[64]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-glk4/igt@kms_vblank@pipe-a-ts-continuation-modeset-rpm.html
[65]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-glk6/igt@kms_vblank@pipe-a-ts-continuation-modeset-rpm.html
* igt@kms_vblank@pipe-c-ts-continuation-suspend:
- shard-kbl: [PASS][66] -> [INCOMPLETE][67] ([i915#794])
[66]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-kbl2/igt@kms_vblank@pipe-c-ts-continuation-suspend.html
[67]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-kbl3/igt@kms_vblank@pipe-c-ts-continuation-suspend.html
* igt@perf@gen12-mi-rpc:
- shard-tglb: [PASS][68] -> [FAIL][69] ([i915#1085])
[68]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-tglb2/igt@perf@gen12-mi-rpc.html
[69]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-tglb1/igt@perf@gen12-mi-rpc.html
* igt@perf_pmu@busy-check-all-vcs1:
- shard-iclb: [PASS][70] -> [SKIP][71] ([fdo#112080]) +9 similar issues
[70]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-iclb1/igt@perf_pmu@busy-check-all-vcs1.html
[71]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-iclb3/igt@perf_pmu@busy-check-all-vcs1.html
* igt@prime_vgem@fence-wait-bsd2:
- shard-iclb: [PASS][72] -> [SKIP][73] ([fdo#109276]) +19 similar issues
[72]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-iclb2/igt@prime_vgem@fence-wait-bsd2.html
[73]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-iclb8/igt@prime_vgem@fence-wait-bsd2.html
#### Possible fixes ####
* igt@gem_ctx_persistence@close-replace-race:
- shard-iclb: [INCOMPLETE][74] ([i915#1402]) -> [PASS][75]
[74]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-iclb2/igt@gem_ctx_persistence@close-replace-race.html
[75]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-iclb3/igt@gem_ctx_persistence@close-replace-race.html
* igt@gem_exec_balancer@smoke:
- shard-iclb: [SKIP][76] ([fdo#110854]) -> [PASS][77]
[76]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-iclb7/igt@gem_exec_balancer@smoke.html
[77]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-iclb4/igt@gem_exec_balancer@smoke.html
* igt@gem_exec_schedule@implicit-both-bsd1:
- shard-iclb: [SKIP][78] ([fdo#109276] / [i915#677]) -> [PASS][79] +2 similar issues
[78]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-iclb8/igt@gem_exec_schedule@implicit-both-bsd1.html
[79]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-iclb1/igt@gem_exec_schedule@implicit-both-bsd1.html
* igt@gem_exec_schedule@implicit-read-write-bsd:
- shard-iclb: [SKIP][80] ([i915#677]) -> [PASS][81]
[80]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-iclb2/igt@gem_exec_schedule@implicit-read-write-bsd.html
[81]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-iclb3/igt@gem_exec_schedule@implicit-read-write-bsd.html
* igt@gem_exec_schedule@preemptive-hang-bsd:
- shard-iclb: [SKIP][82] ([fdo#112146]) -> [PASS][83] +4 similar issues
[82]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-iclb1/igt@gem_exec_schedule@preemptive-hang-bsd.html
[83]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-iclb5/igt@gem_exec_schedule@preemptive-hang-bsd.html
* igt@gem_userptr_blits@sync-unmap-after-close:
- shard-hsw: [DMESG-WARN][84] ([fdo#111870]) -> [PASS][85]
[84]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-hsw5/igt@gem_userptr_blits@sync-unmap-after-close.html
[85]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-hsw6/igt@gem_userptr_blits@sync-unmap-after-close.html
* igt@i915_hangman@error-state-capture-vcs1:
- shard-iclb: [SKIP][86] ([fdo#112080]) -> [PASS][87] +6 similar issues
[86]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-iclb7/igt@i915_hangman@error-state-capture-vcs1.html
[87]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-iclb2/igt@i915_hangman@error-state-capture-vcs1.html
* igt@i915_pm_dc@dc6-dpms:
- shard-iclb: [FAIL][88] ([i915#454]) -> [PASS][89] +1 similar issue
[88]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-iclb3/igt@i915_pm_dc@dc6-dpms.html
[89]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-iclb6/igt@i915_pm_dc@dc6-dpms.html
* igt@i915_pm_rps@reset:
- shard-iclb: [FAIL][90] ([i915#413]) -> [PASS][91]
[90]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-iclb2/igt@i915_pm_rps@reset.html
[91]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-iclb1/igt@i915_pm_rps@reset.html
* igt@kms_color@pipe-b-degamma:
- shard-kbl: [FAIL][92] ([i915#71]) -> [PASS][93]
[92]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-kbl4/igt@kms_color@pipe-b-degamma.html
[93]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-kbl2/igt@kms_color@pipe-b-degamma.html
- shard-apl: [FAIL][94] ([i915#71]) -> [PASS][95]
[94]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-apl2/igt@kms_color@pipe-b-degamma.html
[95]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-apl3/igt@kms_color@pipe-b-degamma.html
* igt@kms_cursor_legacy@flip-vs-cursor-legacy:
- shard-iclb: [FAIL][96] ([IGT#5]) -> [PASS][97]
[96]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-iclb8/igt@kms_cursor_legacy@flip-vs-cursor-legacy.html
[97]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-iclb8/igt@kms_cursor_legacy@flip-vs-cursor-legacy.html
* igt@kms_flip@flip-vs-suspend-interruptible:
- shard-apl: [DMESG-WARN][98] ([i915#180]) -> [PASS][99] +1 similar issue
[98]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-apl6/igt@kms_flip@flip-vs-suspend-interruptible.html
[99]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-apl2/igt@kms_flip@flip-vs-suspend-interruptible.html
* igt@kms_plane_lowres@pipe-a-tiling-x:
- shard-glk: [FAIL][100] ([i915#899]) -> [PASS][101]
[100]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-glk4/igt@kms_plane_lowres@pipe-a-tiling-x.html
[101]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-glk6/igt@kms_plane_lowres@pipe-a-tiling-x.html
* igt@kms_psr@psr2_basic:
- shard-iclb: [SKIP][102] ([fdo#109441]) -> [PASS][103] +1 similar issue
[102]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-iclb8/igt@kms_psr@psr2_basic.html
[103]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-iclb2/igt@kms_psr@psr2_basic.html
* igt@kms_setmode@basic:
- shard-apl: [FAIL][104] ([i915#31]) -> [PASS][105]
[104]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-apl3/igt@kms_setmode@basic.html
[105]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-apl6/igt@kms_setmode@basic.html
* igt@prime_busy@hang-bsd2:
- shard-iclb: [SKIP][106] ([fdo#109276]) -> [PASS][107] +19 similar issues
[106]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-iclb6/igt@prime_busy@hang-bsd2.html
[107]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-iclb4/igt@prime_busy@hang-bsd2.html
#### Warnings ####
* igt@gem_userptr_blits@dmabuf-sync:
- shard-snb: [DMESG-WARN][108] ([fdo#110789] / [fdo#111870] / [i915#478]) -> [DMESG-WARN][109] ([fdo#111870] / [i915#478])
[108]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-snb2/igt@gem_userptr_blits@dmabuf-sync.html
[109]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-snb2/igt@gem_userptr_blits@dmabuf-sync.html
- shard-hsw: [DMESG-WARN][110] ([fdo#110789] / [fdo#111870]) -> [DMESG-WARN][111] ([fdo#111870])
[110]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-hsw5/igt@gem_userptr_blits@dmabuf-sync.html
[111]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-hsw5/igt@gem_userptr_blits@dmabuf-sync.html
* igt@i915_pm_dc@dc6-dpms:
- shard-tglb: [SKIP][112] ([i915#468]) -> [FAIL][113] ([i915#454])
[112]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-tglb2/igt@i915_pm_dc@dc6-dpms.html
[113]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-tglb5/igt@i915_pm_dc@dc6-dpms.html
* igt@i915_pm_dc@dc6-psr:
- shard-tglb: [FAIL][114] ([i915#454]) -> [SKIP][115] ([i915#468])
[114]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-tglb3/igt@i915_pm_dc@dc6-psr.html
[115]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-tglb2/igt@i915_pm_dc@dc6-psr.html
* igt@i915_pm_rpm@modeset-pc8-residency-stress:
- shard-tglb: [SKIP][116] ([i915#1316]) -> [SKIP][117] ([fdo#109506])
[116]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-tglb1/igt@i915_pm_rpm@modeset-pc8-residency-stress.html
[117]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-tglb6/igt@i915_pm_rpm@modeset-pc8-residency-stress.html
- shard-iclb: [SKIP][118] ([i915#1316]) -> [SKIP][119] ([fdo#109293] / [fdo#109506])
[118]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-iclb3/igt@i915_pm_rpm@modeset-pc8-residency-stress.html
[119]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-iclb4/igt@i915_pm_rpm@modeset-pc8-residency-stress.html
* igt@kms_cursor_legacy@2x-nonblocking-modeset-vs-cursor-atomic:
- shard-glk: [FAIL][120] ([i915#133]) -> [FAIL][121] ([i915#117] / [i915#133])
[120]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-glk9/igt@kms_cursor_legacy@2x-nonblocking-modeset-vs-cursor-atomic.html
[121]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-glk6/igt@kms_cursor_legacy@2x-nonblocking-modeset-vs-cursor-atomic.html
* igt@runner@aborted:
- shard-kbl: ([FAIL][122], [FAIL][123]) ([i915#1389] / [i915#1402] / [i915#92]) -> [FAIL][124] ([i915#1389] / [i915#1402])
[122]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-kbl6/igt@runner@aborted.html
[123]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-kbl1/igt@runner@aborted.html
[124]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-kbl4/igt@runner@aborted.html
- shard-apl: ([FAIL][125], [FAIL][126]) ([fdo#103927] / [i915#1402]) -> [FAIL][127] ([i915#1402])
[125]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-apl7/igt@runner@aborted.html
[126]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8135/shard-apl8/igt@runner@aborted.html
[127]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/shard-apl6/igt@runner@aborted.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[IGT#5]: https://gitlab.freedesktop.org/drm/igt-gpu-tools/issues/5
[fdo#103927]: https://bugs.freedesktop.org/show_bug.cgi?id=103927
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#109276]: https://bugs.freedesktop.org/show_bug.cgi?id=109276
[fdo#109278]: https://bugs.freedesktop.org/show_bug.cgi?id=109278
[fdo#109293]: https://bugs.freedesktop.org/show_bug.cgi?id=109293
[fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441
[fdo#109506]: https://bugs.freedesktop.org/show_bug.cgi?id=109506
[fdo#110789]: https://bugs.freedesktop.org/show_bug.cgi?id=110789
[fdo#110854]: https://bugs.freedesktop.org/show_bug.cgi?id=110854
[fdo#111870]: https://bugs.freedesktop.org/show_bug.cgi?id=111870
[fdo#112015]: https://bugs.freedesktop.org/show_bug.cgi?id=112015
[fdo#112080]: https://bugs.freedesktop.org/show_bug.cgi?id=112080
[fdo#112146]: https://bugs.freedesktop.org/show_bug.cgi?id=112146
[i915#1085]: https://gitlab.freedesktop.org/drm/intel/issues/1085
[i915#117]: https://gitlab.freedesktop.org/drm/intel/issues/117
[i915#1297]: https://gitlab.freedesktop.org/drm/intel/issues/1297
[i915#1316]: https://gitlab.freedesktop.org/drm/intel/issues/1316
[i915#133]: https://gitlab.freedesktop.org/drm/intel/issues/133
[i915#1389]: https://gitlab.freedesktop.org/drm/intel/issues/1389
[i915#1401]: https://gitlab.freedesktop.org/drm/intel/issues/1401
[i915#1402]: https://gitlab.freedesktop.org/drm/intel/issues/1402
[i915#180]: https://gitlab.freedesktop.org/drm/intel/issues/180
[i915#31]: https://gitlab.freedesktop.org/drm/intel/issues/31
[i915#413]: https://gitlab.freedesktop.org/drm/intel/issues/413
[i915#42]: https://gitlab.freedesktop.org/drm/intel/issues/42
[i915#454]: https://gitlab.freedesktop.org/drm/intel/issues/454
[i915#468]: https://gitlab.freedesktop.org/drm/intel/issues/468
[i915#478]: https://gitlab.freedesktop.org/drm/intel/issues/478
[i915#54]: https://gitlab.freedesktop.org/drm/intel/issues/54
[i915#58]: https://gitlab.freedesktop.org/drm/intel/issues/58
[i915#656]: https://gitlab.freedesktop.org/drm/intel/issues/656
[i915#677]: https://gitlab.freedesktop.org/drm/intel/issues/677
[i915#71]: https://gitlab.freedesktop.org/drm/intel/issues/71
[i915#794]: https://gitlab.freedesktop.org/drm/intel/issues/794
[i915#899]: https://gitlab.freedesktop.org/drm/intel/issues/899
[i915#92]: https://gitlab.freedesktop.org/drm/intel/issues/92
[k.org#198133]: https://bugzilla.kernel.org/show_bug.cgi?id=198133
Participating hosts (10 -> 8)
------------------------------
Missing (2): pig-skl-6260u pig-glk-j5005
Build changes
-------------
* CI: CI-20190529 -> None
* IGT: IGT_5508 -> IGTPW_4303
* Piglit: piglit_4509 -> None
CI-20190529: 20190529
CI_DRM_8135: 17c19ee50a6cbb514b59f9f2d8d7d4f088a56300 @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_4303: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/index.html
IGT_5508: 89d644600a1a9f08794cc7106b63758df40ce1d8 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4303/index.html
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 8+ messages in thread
* [igt-dev] [PATCH i-g-t 2/5] tests/kms_tiled_display: Replace the igt_display pointer with a struct
2021-10-19 20:19 [igt-dev] [PATCH i-g-t 0/5] kms: Run tiled display tests on any set of connectors Ville Syrjala
@ 2021-10-19 20:19 ` Ville Syrjala
0 siblings, 0 replies; 8+ messages in thread
From: Ville Syrjala @ 2021-10-19 20:19 UTC (permalink / raw)
To: igt-dev
From: Ville Syrjälä <ville.syrjala@linux.intel.com>
No point in storing a pointer when we can just store the struct itself.
The lifetime is the same.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
tests/kms_tiled_display.c | 35 +++++++++++++++++------------------
1 file changed, 17 insertions(+), 18 deletions(-)
diff --git a/tests/kms_tiled_display.c b/tests/kms_tiled_display.c
index 9eb980285b02..cb4762d7c6b1 100644
--- a/tests/kms_tiled_display.c
+++ b/tests/kms_tiled_display.c
@@ -56,7 +56,7 @@ typedef struct {
int drm_fd;
int num_h_tiles;
igt_fb_t fb_test_pattern;
- igt_display_t *display;
+ igt_display_t display;
data_connector_t *conns;
enum igt_commit_style commit;
struct timeval first_ts;
@@ -139,8 +139,8 @@ static void get_connectors(data_t *data)
igt_output_t *output;
data_connector_t *conns = data->conns;
- for_each_connected_output(data->display, output) {
- conns[count].connector = drmModeGetConnector(data->display->drm_fd,
+ for_each_connected_output(&data->display, output) {
+ conns[count].connector = drmModeGetConnector(data->display.drm_fd,
output->id);
igt_assert(conns[count].connector);
@@ -185,11 +185,11 @@ static void reset_mode(data_t *data)
data_connector_t *conns = data->conns;
for (count = 0; count < data->num_h_tiles; count++) {
- output = igt_output_from_connector(data->display,
+ output = igt_output_from_connector(&data->display,
conns[count].connector);
igt_output_set_pipe(output, PIPE_NONE);
}
- igt_display_commit2(data->display, data->commit);
+ igt_display_commit2(&data->display, data->commit);
}
static void test_cleanup(data_t *data)
@@ -204,7 +204,7 @@ static void test_cleanup(data_t *data)
}
}
igt_remove_fb(data->drm_fd, &data->fb_test_pattern);
- igt_display_commit2(data->display, data->commit);
+ igt_display_commit2(&data->display, data->commit);
memset(conns, 0, sizeof(data_connector_t) * data->num_h_tiles);
}
static void setup_mode(data_t *data)
@@ -224,10 +224,10 @@ static void setup_mode(data_t *data)
reset_mode(data);
for (count = 0; count < data->num_h_tiles; count++) {
- output = igt_output_from_connector(data->display,
+ output = igt_output_from_connector(&data->display,
conns[count].connector);
- for_each_pipe(data->display, pipe) {
+ for_each_pipe(&data->display, pipe) {
pipe_in_use = false;
found = false;
@@ -264,7 +264,7 @@ static void setup_mode(data_t *data)
igt_require(found);
igt_output_override_mode(output, mode);
}
- igt_display_commit_atomic(data->display, DRM_MODE_ATOMIC_ALLOW_MODESET,
+ igt_display_commit_atomic(&data->display, DRM_MODE_ATOMIC_ALLOW_MODESET,
NULL);
}
@@ -323,7 +323,7 @@ static data_connector_t *conn_for_crtc(data_t *data, unsigned int crtc_id)
for (int i = 0; i < data->num_h_tiles; i++) {
data_connector_t *conn = &data->conns[i];
- if (data->display->pipes[conn->pipe].crtc_id == crtc_id)
+ if (data->display.pipes[conn->pipe].crtc_id == crtc_id)
return conn;
}
@@ -408,7 +408,7 @@ static void test_with_chamelium(data_t *data)
data->ports[i], data->edids[i]);
chamelium_plug(data->chamelium,
data->ports[i]);
- chamelium_wait_for_conn_status_change(data->display,
+ chamelium_wait_for_conn_status_change(&data->display,
data->chamelium,
data->ports[i],
DRM_MODE_CONNECTED);
@@ -436,7 +436,7 @@ void basic_test(data_t *data, drmEventContext *drm_event, struct pollfd *pfd)
setup_mode(data);
setup_framebuffer(data);
timerclear(&data->first_ts);
- igt_display_commit_atomic(data->display,
+ igt_display_commit_atomic(&data->display,
DRM_MODE_ATOMIC_NONBLOCK |
DRM_MODE_PAGE_FLIP_EVENT, data);
while (!got_all_page_flips(data)) {
@@ -448,21 +448,20 @@ void basic_test(data_t *data, drmEventContext *drm_event, struct pollfd *pfd)
igt_main
{
- igt_display_t display;
data_t data = {0};
struct pollfd pfd = {0};
drmEventContext drm_event = {0};
igt_fixture {
data.drm_fd = drm_open_driver_master(DRIVER_ANY);
kmstest_set_vt_graphics_mode();
- igt_display_require(&display, data.drm_fd);
- igt_display_reset(&display);
- data.display = &display;
+ igt_display_require(&data.display, data.drm_fd);
+ igt_display_reset(&data.display);
+
pfd.fd = data.drm_fd;
pfd.events = POLLIN;
drm_event.version = 3;
drm_event.page_flip_handler2 = page_flip_handler;
- data.commit = data.display->is_atomic ? COMMIT_ATOMIC : COMMIT_LEGACY;
+ data.commit = data.display.is_atomic ? COMMIT_ATOMIC : COMMIT_LEGACY;
igt_require(data.commit == COMMIT_ATOMIC);
}
@@ -492,6 +491,6 @@ igt_main
free(data.conns);
close(data.drm_fd);
kmstest_restore_vt_mode();
- igt_display_fini(data.display);
+ igt_display_fini(&data.display);
}
}
--
2.32.0
^ permalink raw reply related [flat|nested] 8+ messages in thread