* [igt-dev] [PATCH i-g-t 1/8] tests/kms_sequence: Add tests for new CRTC get/queue sequence ioctls [v2]
@ 2018-11-02 20:53 Daniel Vetter
2018-11-02 20:53 ` [igt-dev] [PATCH i-g-t 2/8] tests/kms_lease: add tests for lease " Daniel Vetter
` (11 more replies)
0 siblings, 12 replies; 14+ messages in thread
From: Daniel Vetter @ 2018-11-02 20:53 UTC (permalink / raw)
To: IGT development; +Cc: Daniel Vetter, Keith Packard
From: Keith Packard <keithp@keithp.com>
These ioctls replace drmWaitVBlank and add ns time resolution and
64-bit sequence numbers to comply with the Vulkan API specifications.
The tests were derived from the existing kms_vblank tests with the
'wait' variant elided as the new API doesn't provide a mechanism for
blocking in the kernel.
v2: from Dave Airlie <airlied@redhat.com>
* Add local definitions of new ioctls to avoid requiring latest
libdrm.
* Remove FIRST_PIXEL_OUT as that has been removed from the proposed
kernel patches.
v3:
- Rebase
- drop the export of igt_output_get_driving_pipe, the tests do full
modesets already.
Signed-off-by: Keith Packard <keithp@keithp.com> (v2)
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
---
tests/Makefile.sources | 1 +
tests/kms_sequence.c | 317 +++++++++++++++++++++++++++++++++++++++++++++++++
tests/meson.build | 1 +
3 files changed, 319 insertions(+)
create mode 100644 tests/kms_sequence.c
diff --git a/tests/Makefile.sources b/tests/Makefile.sources
index c910210b992f..a3960316802a 100644
--- a/tests/Makefile.sources
+++ b/tests/Makefile.sources
@@ -86,6 +86,7 @@ TESTS_progs = \
kms_tv_load_detect \
kms_universal_plane \
kms_vblank \
+ kms_sequence \
meta_test \
perf \
perf_pmu \
diff --git a/tests/kms_sequence.c b/tests/kms_sequence.c
new file mode 100644
index 000000000000..783dda25308f
--- /dev/null
+++ b/tests/kms_sequence.c
@@ -0,0 +1,317 @@
+/*
+ * Copyright © 2015 Intel Corporation
+ * Copyright © 2017 Keith Packard
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice (including the next
+ * paragraph) shall be included in all copies or substantial portions of the
+ * Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
+ * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
+ * IN THE SOFTWARE.
+ */
+
+/** @file kms_sequence.c
+ *
+ * This is a test of drmCrtcGetSequence and drmCrtcQueueSequence
+ */
+
+#include "igt.h"
+#include <stdlib.h>
+#include <stdio.h>
+#include <string.h>
+#include <fcntl.h>
+#include <inttypes.h>
+#include <errno.h>
+#include <time.h>
+#include <sys/poll.h>
+#include <sys/stat.h>
+#include <sys/time.h>
+#include <sys/wait.h>
+
+#include <drm.h>
+
+#include "intel_bufmgr.h"
+
+IGT_TEST_DESCRIPTION("Test CrtcGetSequence and CrtcQueueSequence.");
+
+typedef struct {
+ igt_display_t display;
+ struct igt_fb primary_fb;
+ igt_output_t *output;
+ uint32_t crtc_id;
+ enum pipe pipe;
+ unsigned int flags;
+#define IDLE 1
+#define BUSY 2
+#define FORKED 4
+} data_t;
+
+struct local_drm_crtc_get_sequence {
+ __u32 crtc_id;
+ __u32 active;
+ __u64 sequence;
+ __u64 sequence_ns;
+};
+
+struct local_drm_crtc_queue_sequence {
+ __u32 crtc_id;
+ __u32 flags;
+ __u64 sequence;
+ __u64 user_data;
+};
+
+#define LOCAL_DRM_IOCTL_CRTC_GET_SEQUENCE DRM_IOWR(0x3b, struct local_drm_crtc_get_sequence)
+#define LOCAL_DRM_IOCTL_CRTC_QUEUE_SEQUENCE DRM_IOWR(0x3c, struct local_drm_crtc_queue_sequence)
+
+#define LOCAL_DRM_CRTC_SEQUENCE_RELATIVE 0x00000001 /* sequence is relative to current */
+#define LOCAL_DRM_CRTC_SEQUENCE_NEXT_ON_MISS 0x00000002 /* Use next sequence if we've missed */
+
+struct local_drm_event_crtc_sequence {
+ struct drm_event base;
+ __u64 user_data;
+ __s64 time_ns;
+ __u64 sequence;
+};
+
+
+static double elapsed(const struct timespec *start,
+ const struct timespec *end,
+ int loop)
+{
+ return (1e6*(end->tv_sec - start->tv_sec) + (end->tv_nsec - start->tv_nsec)/1000)/loop;
+}
+
+static void prepare_crtc(data_t *data, int fd, igt_output_t *output)
+{
+ drmModeModeInfo *mode;
+ igt_display_t *display = &data->display;
+ igt_plane_t *primary;
+
+ /* select the pipe we want to use */
+ igt_output_set_pipe(output, data->pipe);
+
+ /* create and set the primary plane fb */
+ mode = igt_output_get_mode(output);
+ igt_create_color_fb(fd, mode->hdisplay, mode->vdisplay,
+ DRM_FORMAT_XRGB8888,
+ LOCAL_DRM_FORMAT_MOD_NONE,
+ 0.0, 0.0, 0.0,
+ &data->primary_fb);
+
+ primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY);
+ igt_plane_set_fb(primary, &data->primary_fb);
+
+ data->crtc_id = primary->pipe->crtc_id;
+
+ igt_display_commit(display);
+
+ igt_wait_for_vblank(fd, data->pipe);
+}
+
+static void cleanup_crtc(data_t *data, int fd, igt_output_t *output)
+{
+ igt_display_t *display = &data->display;
+ igt_plane_t *primary;
+
+ igt_remove_fb(fd, &data->primary_fb);
+
+ primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY);
+ igt_plane_set_fb(primary, NULL);
+
+ igt_output_set_pipe(output, PIPE_ANY);
+ igt_display_commit(display);
+}
+
+static int crtc_get_sequence(int fd, struct local_drm_crtc_get_sequence *cgs)
+{
+ int err;
+
+ err = 0;
+ if (igt_ioctl(fd, LOCAL_DRM_IOCTL_CRTC_GET_SEQUENCE, cgs))
+ err = -errno;
+
+ return err;
+}
+
+static int crtc_queue_sequence(int fd, struct local_drm_crtc_queue_sequence *cqs)
+{
+ int err;
+
+ err = 0;
+ if (igt_ioctl(fd, LOCAL_DRM_IOCTL_CRTC_QUEUE_SEQUENCE, cqs))
+ err = -errno;
+ return err;
+}
+
+static void run_test(data_t *data, int fd, void (*testfunc)(data_t *, int, int))
+{
+ int nchildren =
+ data->flags & FORKED ? sysconf(_SC_NPROCESSORS_ONLN) : 1;
+ igt_display_t *display = &data->display;
+ igt_output_t *output;
+ enum pipe p;
+ unsigned int valid_tests = 0;
+
+ for_each_pipe_with_valid_output(display, p, output) {
+ data->pipe = p;
+ prepare_crtc(data, fd, output);
+
+ igt_info("Beginning %s on pipe %s, connector %s (%d threads)\n",
+ igt_subtest_name(),
+ kmstest_pipe_name(data->pipe),
+ igt_output_name(output),
+ nchildren);
+
+ if (data->flags & BUSY) {
+ struct local_drm_crtc_queue_sequence cqs;
+
+ memset(&cqs, 0, sizeof(cqs));
+ cqs.crtc_id = data->crtc_id;
+ cqs.flags = LOCAL_DRM_CRTC_SEQUENCE_RELATIVE;
+ cqs.sequence = 120 + 12;
+ igt_assert_eq(crtc_queue_sequence(fd, &cqs), 0);
+ }
+
+ igt_fork(child, nchildren)
+ testfunc(data, fd, nchildren);
+ igt_waitchildren();
+
+ if (data->flags & BUSY) {
+ struct drm_event_vblank buf;
+ igt_assert_eq(read(fd, &buf, sizeof(buf)), sizeof(buf));
+ }
+
+ igt_assert(poll(&(struct pollfd){fd, POLLIN}, 1, 0) == 0);
+
+ igt_info("\n%s on pipe %s, connector %s: PASSED\n\n",
+ igt_subtest_name(),
+ kmstest_pipe_name(data->pipe),
+ igt_output_name(output));
+
+ /* cleanup what prepare_crtc() has done */
+ cleanup_crtc(data, fd, output);
+ valid_tests++;
+ }
+
+ igt_require_f(valid_tests,
+ "no valid crtc/connector combinations found\n");
+}
+
+static void sequence_get(data_t *data, int fd, int nchildren)
+{
+ struct local_drm_crtc_get_sequence cgs;
+ struct timespec start, end;
+ unsigned long sq, count = 0;
+
+ memset(&cgs, 0, sizeof(cgs));
+ cgs.crtc_id = data->crtc_id;
+ igt_assert_eq(crtc_get_sequence(fd, &cgs), 0);
+
+ sq = cgs.sequence;
+
+ clock_gettime(CLOCK_MONOTONIC, &start);
+ do {
+ igt_assert_eq(crtc_get_sequence(fd, &cgs), 0);
+ count++;
+ } while ((cgs.sequence - sq) <= 120);
+ clock_gettime(CLOCK_MONOTONIC, &end);
+
+ igt_info("Time to get current counter (%s): %7.3fµs\n",
+ data->flags & BUSY ? "busy" : "idle", elapsed(&start, &end, count));
+}
+
+static void sequence_queue(data_t *data, int fd, int nchildren)
+{
+ struct local_drm_crtc_get_sequence cgs_start, cgs_end;
+ struct local_drm_crtc_queue_sequence cqs;
+ unsigned long target;
+ int total = 120 / nchildren;
+ int n;
+ double frame_time;
+
+ memset(&cgs_start, 0, sizeof(cgs_start));
+ cgs_start.crtc_id = data->crtc_id;
+ igt_assert_eq(crtc_get_sequence(fd, &cgs_start), 0);
+
+ target = cgs_start.sequence + total;
+ for (n = 0; n < total; n++) {
+ memset(&cqs, 0, sizeof(cqs));
+ cqs.crtc_id = data->crtc_id;
+ cqs.flags = 0;
+ cqs.sequence = target;
+ igt_assert_eq(crtc_queue_sequence(fd, &cqs), 0);
+ igt_assert_eq(cqs.sequence, target);
+ }
+
+ for (n = 0; n < total; n++) {
+ struct local_drm_event_crtc_sequence ev;
+ igt_assert_eq(read(fd, &ev, sizeof(ev)), sizeof(ev));
+ igt_assert_eq(ev.sequence, target);
+ }
+ memset(&cgs_end, 0, sizeof(cgs_end));
+ cgs_end.crtc_id = data->crtc_id;
+ igt_assert_eq(crtc_get_sequence(fd, &cgs_end), 0);
+ igt_assert_eq(cgs_end.sequence, target);
+
+ frame_time = (double) (cgs_end.sequence_ns - cgs_start.sequence_ns) / (1e9 * total);
+ igt_info("Time per frame from queue to event (%s): %7.3fms(%7.3fHz)\n",
+ data->flags & BUSY ? "busy" : "idle",
+ frame_time * 1000.0, 1.0/frame_time);
+}
+
+igt_main
+{
+ int fd;
+ data_t data;
+ const struct {
+ const char *name;
+ void (*func)(data_t *, int, int);
+ unsigned int valid;
+ } funcs[] = {
+ { "get", sequence_get, IDLE | FORKED | BUSY },
+ { "queue", sequence_queue, IDLE | BUSY },
+ { }
+ }, *f;
+ const struct {
+ const char *name;
+ unsigned int flags;
+ } modes[] = {
+ { "idle", IDLE },
+ { "forked", IDLE | FORKED },
+ { "busy", BUSY },
+ { "forked-busy", BUSY | FORKED },
+ { }
+ }, *m;
+
+ igt_skip_on_simulation();
+
+ igt_fixture {
+ fd = drm_open_driver(DRIVER_ANY);
+ kmstest_set_vt_graphics_mode();
+ igt_display_init(&data.display, fd);
+ }
+
+ for (f = funcs; f->name; f++) {
+ for (m = modes; m->name; m++) {
+ if (m->flags & ~f->valid)
+ continue;
+
+ igt_subtest_f("%s-%s", f->name, m->name) {
+ data.flags = m->flags;
+ run_test(&data, fd, f->func);
+ }
+ }
+ }
+}
diff --git a/tests/meson.build b/tests/meson.build
index eacdc1a712ca..c1a2301a5b28 100644
--- a/tests/meson.build
+++ b/tests/meson.build
@@ -59,6 +59,7 @@ test_progs = [
'kms_rotation_crc',
'kms_selftest',
'kms_setmode',
+ 'kms_sequence',
'kms_sysfs_edid_timing',
'kms_tv_load_detect',
'kms_universal_plane',
--
2.14.4
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [igt-dev] [PATCH i-g-t 2/8] tests/kms_lease: add tests for lease ioctls [v2]
2018-11-02 20:53 [igt-dev] [PATCH i-g-t 1/8] tests/kms_sequence: Add tests for new CRTC get/queue sequence ioctls [v2] Daniel Vetter
@ 2018-11-02 20:53 ` Daniel Vetter
2018-11-02 20:53 ` [igt-dev] [PATCH i-g-t 3/8] tests/kms_lease: use interactive debug helpers Daniel Vetter
` (10 subsequent siblings)
11 siblings, 0 replies; 14+ messages in thread
From: Daniel Vetter @ 2018-11-02 20:53 UTC (permalink / raw)
To: IGT development; +Cc: Daniel Vetter, Keith Packard
From: Keith Packard <keithp@keithp.com>
Validate that the leasing API creates leases that allow access to a
subset of the available resources and that lease revocation works.
v2: from Dave Airlie <airlied@redhat.com>
* Update ioctl numbers to latest proposed values.
* Fix commit message
* Add tests for get_lease and list_lessees
v3:
- Rebase
- drop the get_driving_output test, that's already taken care of by
the for_each_valid_output loop.
Signed-off-by: Keith Packard <keithp@keithp.com> (v2)
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
---
tests/Makefile.sources | 1 +
tests/kms_lease.c | 593 +++++++++++++++++++++++++++++++++++++++++++++++++
tests/meson.build | 1 +
3 files changed, 595 insertions(+)
create mode 100644 tests/kms_lease.c
diff --git a/tests/Makefile.sources b/tests/Makefile.sources
index a3960316802a..d007ebc74ab9 100644
--- a/tests/Makefile.sources
+++ b/tests/Makefile.sources
@@ -65,6 +65,7 @@ TESTS_progs = \
kms_getfb \
kms_hdmi_inject \
kms_invalid_dotclock \
+ kms_lease \
kms_legacy_colorkey \
kms_mmap_write_crc \
kms_panel_fitting \
diff --git a/tests/kms_lease.c b/tests/kms_lease.c
new file mode 100644
index 000000000000..5b1b0524286e
--- /dev/null
+++ b/tests/kms_lease.c
@@ -0,0 +1,593 @@
+/*
+ * Copyright © 2017 Keith Packard
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice (including the next
+ * paragraph) shall be included in all copies or substantial portions of the
+ * Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
+ * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
+ * IN THE SOFTWARE.
+ */
+
+/** @file kms_lease.c
+ *
+ * This is a test of DRM leases
+ */
+
+
+#include "igt.h"
+#include <stdlib.h>
+#include <stdio.h>
+#include <string.h>
+#include <fcntl.h>
+#include <inttypes.h>
+#include <errno.h>
+#include <time.h>
+#include <sys/poll.h>
+#include <sys/stat.h>
+#include <sys/time.h>
+#include <sys/wait.h>
+
+#include <drm.h>
+
+IGT_TEST_DESCRIPTION("Test of CreateLease.");
+
+struct local_drm_mode_create_lease {
+ /** Pointer to array of object ids (__u32) */
+ __u64 object_ids;
+ /** Number of object ids */
+ __u32 object_count;
+ /** flags for new FD (O_CLOEXEC, etc) */
+ __u32 flags;
+
+ /** Return: unique identifier for lessee. */
+ __u32 lessee_id;
+ /** Return: file descriptor to new drm_master file */
+ __u32 fd;
+};
+
+struct local_drm_mode_list_lessees {
+ /** Number of lessees.
+ * On input, provides length of the array.
+ * On output, provides total number. No
+ * more than the input number will be written
+ * back, so two calls can be used to get
+ * the size and then the data.
+ */
+ __u32 count_lessees;
+ __u32 pad;
+
+ /** Pointer to lessees.
+ * pointer to __u64 array of lessee ids
+ */
+ __u64 lessees_ptr;
+};
+
+struct local_drm_mode_get_lease {
+ /** Number of leased objects.
+ * On input, provides length of the array.
+ * On output, provides total number. No
+ * more than the input number will be written
+ * back, so two calls can be used to get
+ * the size and then the data.
+ */
+ __u32 count_objects;
+ __u32 pad;
+
+ /** Pointer to objects.
+ * pointer to __u32 array of object ids
+ */
+ __u64 objects_ptr;
+};
+
+/**
+ * Revoke lease
+ */
+struct local_drm_mode_revoke_lease {
+ /** Unique ID of lessee
+ */
+ __u32 lessee_id;
+};
+
+
+#define LOCAL_DRM_IOCTL_MODE_CREATE_LEASE DRM_IOWR(0xC6, struct local_drm_mode_create_lease)
+#define LOCAL_DRM_IOCTL_MODE_LIST_LESSEES DRM_IOWR(0xC7, struct local_drm_mode_list_lessees)
+#define LOCAL_DRM_IOCTL_MODE_GET_LEASE DRM_IOWR(0xC8, struct local_drm_mode_get_lease)
+#define LOCAL_DRM_IOCTL_MODE_REVOKE_LEASE DRM_IOWR(0xC9, struct local_drm_mode_revoke_lease)
+
+typedef struct {
+ int fd;
+ uint32_t lessee_id;
+ igt_display_t display;
+ struct igt_fb primary_fb;
+ igt_output_t *output;
+ drmModeModeInfo *mode;
+} lease_t;
+
+typedef struct {
+ lease_t master;
+ enum pipe pipe;
+ uint32_t crtc_id;
+ uint32_t connector_id;
+} data_t;
+
+static uint32_t pipe_to_crtc_id(igt_display_t *display, enum pipe pipe)
+{
+ return display->pipes[pipe].crtc_id;
+}
+
+static enum pipe crtc_id_to_pipe(igt_display_t *display, uint32_t crtc_id)
+{
+ enum pipe pipe;
+
+ for (pipe = 0; pipe < display->n_pipes; pipe++)
+ if (display->pipes[pipe].crtc_id == crtc_id)
+ return pipe;
+ return -1;
+}
+
+static igt_output_t *connector_id_to_output(igt_display_t *display, uint32_t connector_id)
+{
+ drmModeConnector connector;
+
+ connector.connector_id = connector_id;
+ return igt_output_from_connector(display, &connector);
+}
+
+static int prepare_crtc(lease_t *lease, uint32_t connector_id, uint32_t crtc_id)
+{
+ drmModeModeInfo *mode;
+ igt_display_t *display = &lease->display;
+ igt_output_t *output = connector_id_to_output(display, connector_id);
+ enum pipe pipe = crtc_id_to_pipe(display, crtc_id);
+ igt_plane_t *primary;
+ int ret;
+
+ if (!output)
+ return -ENOENT;
+
+ /* select the pipe we want to use */
+ igt_output_set_pipe(output, pipe);
+
+ /* create and set the primary plane fb */
+ mode = igt_output_get_mode(output);
+ igt_create_color_fb(lease->fd, mode->hdisplay, mode->vdisplay,
+ DRM_FORMAT_XRGB8888,
+ LOCAL_DRM_FORMAT_MOD_NONE,
+ 0.0, 0.0, 0.0,
+ &lease->primary_fb);
+
+ primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY);
+ igt_plane_set_fb(primary, &lease->primary_fb);
+
+ ret = igt_display_try_commit2(display, COMMIT_LEGACY);
+
+ if (ret)
+ return ret;
+
+ igt_wait_for_vblank(lease->fd, pipe);
+
+ lease->output = output;
+ lease->mode = mode;
+ return 0;
+}
+
+static void cleanup_crtc(lease_t *lease, igt_output_t *output)
+{
+ igt_display_t *display = &lease->display;
+ igt_plane_t *primary;
+
+ igt_remove_fb(lease->fd, &lease->primary_fb);
+
+ primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY);
+ igt_plane_set_fb(primary, NULL);
+
+ igt_output_set_pipe(output, PIPE_ANY);
+ igt_display_commit(display);
+}
+
+static int create_lease(int fd, struct local_drm_mode_create_lease *mcl)
+{
+ int err = 0;
+
+ if (igt_ioctl(fd, LOCAL_DRM_IOCTL_MODE_CREATE_LEASE, mcl))
+ err = -errno;
+ return err;
+}
+
+static int revoke_lease(int fd, struct local_drm_mode_revoke_lease *mrl)
+{
+ int err = 0;
+
+ if (igt_ioctl(fd, LOCAL_DRM_IOCTL_MODE_REVOKE_LEASE, mrl))
+ err = -errno;
+ return err;
+}
+
+static int list_lessees(int fd, struct local_drm_mode_list_lessees *mll)
+{
+ int err = 0;
+
+ if (igt_ioctl(fd, LOCAL_DRM_IOCTL_MODE_LIST_LESSEES, mll))
+ err = -errno;
+ return err;
+}
+
+static int get_lease(int fd, struct local_drm_mode_get_lease *mgl)
+{
+ int err = 0;
+
+ if (igt_ioctl(fd, LOCAL_DRM_IOCTL_MODE_GET_LEASE, mgl))
+ err = -errno;
+ return err;
+}
+
+static int make_lease(data_t *data, lease_t *lease)
+{
+ uint32_t object_ids[3];
+ struct local_drm_mode_create_lease mcl;
+ int ret;
+
+ mcl.object_ids = (uint64_t) (uintptr_t) &object_ids[0];
+ mcl.object_count = 0;
+ mcl.flags = 0;
+
+ object_ids[mcl.object_count++] = data->connector_id;
+ object_ids[mcl.object_count++] = data->crtc_id;
+
+ ret = create_lease(data->master.fd, &mcl);
+
+ if (ret)
+ return ret;
+
+ lease->fd = mcl.fd;
+ lease->lessee_id = mcl.lessee_id;
+ return 0;
+}
+
+static void terminate_lease(lease_t *lease)
+{
+ close(lease->fd);
+}
+
+static int paint_fb(int drm_fd, struct igt_fb *fb, const char *test_name,
+ const char *mode_format_str, const char *connector_str, const char *pipe_str)
+{
+ cairo_t *cr;
+
+ cr = igt_get_cairo_ctx(drm_fd, fb);
+
+ igt_paint_color_gradient(cr, 0, 0, fb->width, fb->height, 1, 1, 1);
+ igt_paint_test_pattern(cr, fb->width, fb->height);
+
+ cairo_move_to(cr, fb->width / 2, fb->height / 2);
+ cairo_set_font_size(cr, 36);
+ igt_cairo_printf_line(cr, align_hcenter, 10, "%s", test_name);
+ igt_cairo_printf_line(cr, align_hcenter, 10, "%s", mode_format_str);
+ igt_cairo_printf_line(cr, align_hcenter, 10, "%s", connector_str);
+ igt_cairo_printf_line(cr, align_hcenter, 10, "%s", pipe_str);
+
+ cairo_destroy(cr);
+
+ return 0;
+}
+
+static void simple_lease(data_t *data)
+{
+ lease_t lease;
+
+ /* Create a valid lease */
+ igt_assert_eq(make_lease(data, &lease), 0);
+
+ igt_display_init(&lease.display, lease.fd);
+
+ /* Set a mode on the leased output */
+ igt_assert_eq(0, prepare_crtc(&lease, data->connector_id, data->crtc_id));
+
+ /* Paint something attractive */
+ paint_fb(lease.fd, &lease.primary_fb, "simple_lease",
+ lease.mode->name, igt_output_name(lease.output), kmstest_pipe_name(data->pipe));
+ sleep(3);
+ cleanup_crtc(&lease,
+ connector_id_to_output(&lease.display, data->connector_id));
+
+ terminate_lease(&lease);
+}
+
+/* Test listing lessees */
+static void lessee_list(data_t *data)
+{
+ lease_t lease;
+ struct local_drm_mode_list_lessees mll;
+ uint32_t lessees[1];
+
+ /* Create a valid lease */
+ igt_assert_eq(make_lease(data, &lease), 0);
+
+ /* Get the number of lessees */
+ mll.count_lessees = 0;
+ mll.lessees_ptr = 0;
+ igt_assert_eq(list_lessees(data->master.fd, &mll), 0);
+
+ /* Make sure there's a single lessee */
+ igt_assert_eq(mll.count_lessees, 1);
+
+ mll.lessees_ptr = (uint64_t) (uintptr_t) &lessees[0];
+
+ igt_assert_eq(list_lessees(data->master.fd, &mll), 0);
+
+ /* Make sure there's a single lessee */
+ igt_assert_eq(mll.count_lessees, 1);
+
+ /* Make sure the listed lease is the same as the one we created */
+ igt_assert_eq(lessees[0], lease.lessee_id);
+
+ terminate_lease(&lease);
+}
+
+/* Test getting the contents of a lease */
+static void lease_get(data_t *data)
+{
+ lease_t lease;
+ struct local_drm_mode_get_lease mgl;
+ uint32_t objects[2];
+ int o;
+
+ /* Create a valid lease */
+ igt_assert_eq(make_lease(data, &lease), 0);
+
+ /* Get the number of objects */
+ mgl.count_objects = 0;
+ mgl.objects_ptr = 0;
+ igt_assert_eq(get_lease(lease.fd, &mgl), 0);
+
+ /* Make sure it's 2 */
+ igt_assert_eq(mgl.count_objects, 2);
+
+ /* Get the objects */
+ mgl.objects_ptr = (uint64_t) (uintptr_t) objects;
+
+ igt_assert_eq(get_lease(lease.fd, &mgl), 0);
+
+ /* Make sure it's 2 */
+ igt_assert_eq(mgl.count_objects, 2);
+
+ /* Make sure we got both the connector and crtc back */
+ for (o = 0; o < 2; o++)
+ if (objects[o] == data->connector_id)
+ break;
+
+ igt_assert_neq(o, 2);
+
+ for (o = 0; o < 2; o++)
+ if (objects[o] == data->crtc_id)
+ break;
+
+ igt_assert_neq(o, 2);
+
+ terminate_lease(&lease);
+}
+
+static void lease_unleased_crtc(data_t *data)
+{
+ lease_t lease;
+ enum pipe p;
+ uint32_t bad_crtc_id;
+ int ret;
+
+ /* Create a valid lease */
+ igt_assert_eq(make_lease(data, &lease), 0);
+
+ igt_display_init(&lease.display, lease.fd);
+
+ /* Find another CRTC that we don't control */
+ bad_crtc_id = 0;
+ for (p = 0; bad_crtc_id == 0 && p < data->master.display.n_pipes; p++) {
+ if (pipe_to_crtc_id(&data->master.display, p) != data->crtc_id)
+ bad_crtc_id = pipe_to_crtc_id(&data->master.display, p);
+ }
+
+ /* Give up if there isn't another crtc */
+ igt_skip_on(bad_crtc_id == 0);
+
+ /* Attempt to use the unleased crtc id. Note that the
+ * failure here is not directly from the kernel because the
+ * resources returned from the kernel will not contain this resource
+ * id and hence the igt helper functions will fail to find it
+ */
+ ret = prepare_crtc(&lease, data->connector_id, bad_crtc_id);
+
+ /* Ensure the expected error is returned */
+ igt_assert_eq(ret, -ENOENT);
+
+ terminate_lease(&lease);
+}
+
+static void lease_unleased_connector(data_t *data)
+{
+ lease_t lease;
+ int o;
+ uint32_t bad_connector_id;
+ int ret;
+
+ /* Create a valid lease */
+ igt_assert_eq(make_lease(data, &lease), 0);
+
+ igt_display_init(&lease.display, lease.fd);
+
+ /* Find another connector that we don't control */
+ bad_connector_id = 0;
+ for (o = 0; bad_connector_id == 0 && o < data->master.display.n_outputs; o++) {
+ if (data->master.display.outputs[o].id != data->connector_id)
+ bad_connector_id = data->master.display.outputs[o].id;
+ }
+
+ /* Give up if there isn't another connector */
+ igt_skip_on(bad_connector_id == 0);
+
+ /* Attempt to use the unleased connector id. Note that the
+ * failure here is not directly from the kernel because the
+ * resources returned from the kernel will not contain this resource
+ * id and hence the igt helper functions will fail to find it
+ */
+ ret = prepare_crtc(&lease, bad_connector_id, data->crtc_id);
+
+ /* Ensure the expected error is returned */
+ igt_assert_eq(ret, -ENOENT);
+
+ terminate_lease(&lease);
+}
+
+/* Test revocation of lease */
+static void lease_revoke(data_t *data)
+{
+ lease_t lease;
+ struct local_drm_mode_revoke_lease mrl;
+ int ret;
+
+ /* Create a valid lease */
+ igt_assert_eq(make_lease(data, &lease), 0);
+
+ igt_display_init(&lease.display, lease.fd);
+
+ /* Revoke the lease using the master fd */
+ mrl.lessee_id = lease.lessee_id;
+ igt_assert_eq(revoke_lease(data->master.fd, &mrl), 0);
+
+ /* Try to use the leased objects */
+ ret = prepare_crtc(&lease, data->connector_id, data->crtc_id);
+
+ /* Ensure that the expected error is returned */
+ igt_assert_eq(ret, -ENOENT);
+
+ terminate_lease(&lease);
+}
+
+/* Test leasing objects more than once */
+static void lease_again(data_t *data)
+{
+ lease_t lease_a, lease_b;
+
+ /* Create a valid lease */
+ igt_assert_eq(make_lease(data, &lease_a), 0);
+
+ /* Attempt to re-lease the same objects */
+ igt_assert_eq(make_lease(data, &lease_b), -EBUSY);
+
+ terminate_lease(&lease_a);
+
+ /* Now attempt to lease the same objects */
+ igt_assert_eq(make_lease(data, &lease_b), 0);
+
+ terminate_lease(&lease_b);
+}
+
+/* Test leasing an invalid connector */
+static void lease_invalid_connector(data_t *data)
+{
+ lease_t lease;
+ uint32_t save_connector_id;
+ int ret;
+
+ /* Create an invalid lease */
+ save_connector_id = data->connector_id;
+ data->connector_id = 0xbaadf00d;
+ ret = make_lease(data, &lease);
+ data->connector_id = save_connector_id;
+ igt_assert_eq(ret, -EINVAL);
+}
+
+/* Test leasing an invalid crtc */
+static void lease_invalid_crtc(data_t *data)
+{
+ lease_t lease;
+ uint32_t save_crtc_id;
+ int ret;
+
+ /* Create an invalid lease */
+ save_crtc_id = data->crtc_id;
+ data->crtc_id = 0xbaadf00d;
+ ret = make_lease(data, &lease);
+ data->crtc_id = save_crtc_id;
+ igt_assert_eq(ret, -EINVAL);
+}
+
+
+static void run_test(data_t *data, void (*testfunc)(data_t *))
+{
+ lease_t *master = &data->master;
+ igt_display_t *display = &master->display;
+ igt_output_t *output;
+ enum pipe p;
+ unsigned int valid_tests = 0;
+
+ for_each_pipe_with_valid_output(display, p, output) {
+ igt_info("Beginning %s on pipe %s, connector %s\n",
+ igt_subtest_name(),
+ kmstest_pipe_name(p),
+ igt_output_name(output));
+
+ data->pipe = p;
+ data->crtc_id = pipe_to_crtc_id(display, p);
+ data->connector_id = output->id;
+
+ testfunc(data);
+
+ igt_info("\n%s on pipe %s, connector %s: PASSED\n\n",
+ igt_subtest_name(),
+ kmstest_pipe_name(p),
+ igt_output_name(output));
+
+ valid_tests++;
+ }
+
+ igt_require_f(valid_tests,
+ "no valid crtc/connector combinations found\n");
+}
+
+igt_main
+{
+ data_t data;
+ const struct {
+ const char *name;
+ void (*func)(data_t *);
+ } funcs[] = {
+ { "simple_lease", simple_lease },
+ { "lessee_list", lessee_list },
+ { "lease_get", lease_get },
+ { "lease_unleased_connector", lease_unleased_connector },
+ { "lease_unleased_crtc", lease_unleased_crtc },
+ { "lease_revoke", lease_revoke },
+ { "lease_again", lease_again },
+ { "lease_invalid_connector", lease_invalid_connector },
+ { "lease_invalid_crtc", lease_invalid_crtc },
+ { }
+ }, *f;
+
+ igt_skip_on_simulation();
+
+ igt_fixture {
+ data.master.fd = drm_open_driver(DRIVER_ANY);
+ kmstest_set_vt_graphics_mode();
+ igt_display_init(&data.master.display, data.master.fd);
+ }
+
+ for (f = funcs; f->name; f++) {
+
+ igt_subtest_f("%s", f->name) {
+ run_test(&data, f->func);
+ }
+ }
+}
diff --git a/tests/meson.build b/tests/meson.build
index c1a2301a5b28..3020f7984d7a 100644
--- a/tests/meson.build
+++ b/tests/meson.build
@@ -42,6 +42,7 @@ test_progs = [
'kms_getfb',
'kms_hdmi_inject',
'kms_invalid_dotclock',
+ 'kms_lease',
'kms_legacy_colorkey',
'kms_mmap_write_crc',
'kms_panel_fitting',
--
2.14.4
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [igt-dev] [PATCH i-g-t 3/8] tests/kms_lease: use interactive debug helpers
2018-11-02 20:53 [igt-dev] [PATCH i-g-t 1/8] tests/kms_sequence: Add tests for new CRTC get/queue sequence ioctls [v2] Daniel Vetter
2018-11-02 20:53 ` [igt-dev] [PATCH i-g-t 2/8] tests/kms_lease: add tests for lease " Daniel Vetter
@ 2018-11-02 20:53 ` Daniel Vetter
2018-11-02 20:53 ` [igt-dev] [PATCH i-g-t 4/8] tests/kms_lease: Adjsut to universal_planes uapi changes Daniel Vetter
` (9 subsequent siblings)
11 siblings, 0 replies; 14+ messages in thread
From: Daniel Vetter @ 2018-11-02 20:53 UTC (permalink / raw)
To: IGT development; +Cc: Keith Packard
Much faster, since when not enabled they proceed right away.
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
---
tests/kms_lease.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tests/kms_lease.c b/tests/kms_lease.c
index 5b1b0524286e..048e5203d2a5 100644
--- a/tests/kms_lease.c
+++ b/tests/kms_lease.c
@@ -299,7 +299,7 @@ static void simple_lease(data_t *data)
/* Paint something attractive */
paint_fb(lease.fd, &lease.primary_fb, "simple_lease",
lease.mode->name, igt_output_name(lease.output), kmstest_pipe_name(data->pipe));
- sleep(3);
+ igt_debug_wait_for_keypress("lease");
cleanup_crtc(&lease,
connector_id_to_output(&lease.display, data->connector_id));
--
2.14.4
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [igt-dev] [PATCH i-g-t 4/8] tests/kms_lease: Adjsut to universal_planes uapi changes
2018-11-02 20:53 [igt-dev] [PATCH i-g-t 1/8] tests/kms_sequence: Add tests for new CRTC get/queue sequence ioctls [v2] Daniel Vetter
2018-11-02 20:53 ` [igt-dev] [PATCH i-g-t 2/8] tests/kms_lease: add tests for lease " Daniel Vetter
2018-11-02 20:53 ` [igt-dev] [PATCH i-g-t 3/8] tests/kms_lease: use interactive debug helpers Daniel Vetter
@ 2018-11-02 20:53 ` Daniel Vetter
2018-11-02 20:53 ` [igt-dev] [PATCH i-g-t 5/8] tests/kms_lease: improve lesssee_list subtests Daniel Vetter
` (8 subsequent siblings)
11 siblings, 0 replies; 14+ messages in thread
From: Daniel Vetter @ 2018-11-02 20:53 UTC (permalink / raw)
To: IGT development; +Cc: Keith Packard
We need to also ask for a plane when universal planes is enabled,
which the igt_display library does by default.
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
---
tests/kms_lease.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/tests/kms_lease.c b/tests/kms_lease.c
index 048e5203d2a5..f4e1082cbb2a 100644
--- a/tests/kms_lease.c
+++ b/tests/kms_lease.c
@@ -246,6 +246,10 @@ static int make_lease(data_t *data, lease_t *lease)
object_ids[mcl.object_count++] = data->connector_id;
object_ids[mcl.object_count++] = data->crtc_id;
+ /* We use universal planes, must add the primary plane */
+ object_ids[mcl.object_count++] =
+ igt_pipe_get_plane_type(&data->master.display.pipes[data->pipe],
+ DRM_PLANE_TYPE_PRIMARY)->drm_plane->plane_id;
ret = create_lease(data->master.fd, &mcl);
--
2.14.4
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [igt-dev] [PATCH i-g-t 5/8] tests/kms_lease: improve lesssee_list subtests
2018-11-02 20:53 [igt-dev] [PATCH i-g-t 1/8] tests/kms_sequence: Add tests for new CRTC get/queue sequence ioctls [v2] Daniel Vetter
` (2 preceding siblings ...)
2018-11-02 20:53 ` [igt-dev] [PATCH i-g-t 4/8] tests/kms_lease: Adjsut to universal_planes uapi changes Daniel Vetter
@ 2018-11-02 20:53 ` Daniel Vetter
2018-11-02 20:53 ` [igt-dev] [PATCH i-g-t 6/8] tests/kms_lease: improve lease_get subtest Daniel Vetter
` (7 subsequent siblings)
11 siblings, 0 replies; 14+ messages in thread
From: Daniel Vetter @ 2018-11-02 20:53 UTC (permalink / raw)
To: IGT development; +Cc: Keith Packard
It failed to clear the pad, which made me realize that it's missing
a few paranoid checks.
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
---
tests/kms_lease.c | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)
diff --git a/tests/kms_lease.c b/tests/kms_lease.c
index f4e1082cbb2a..5d2f554d9bfc 100644
--- a/tests/kms_lease.c
+++ b/tests/kms_lease.c
@@ -317,9 +317,17 @@ static void lessee_list(data_t *data)
struct local_drm_mode_list_lessees mll;
uint32_t lessees[1];
+ mll.pad = 0;
+
/* Create a valid lease */
igt_assert_eq(make_lease(data, &lease), 0);
+ /* check for nested leases */
+ mll.count_lessees = 0;
+ mll.lessees_ptr = 0;
+ igt_assert_eq(list_lessees(lease.fd, &mll), 0);
+ igt_assert_eq(mll.count_lessees, 0);
+
/* Get the number of lessees */
mll.count_lessees = 0;
mll.lessees_ptr = 0;
@@ -328,6 +336,9 @@ static void lessee_list(data_t *data)
/* Make sure there's a single lessee */
igt_assert_eq(mll.count_lessees, 1);
+ /* invalid ptr */
+ igt_assert_eq(list_lessees(data->master.fd, &mll), -EFAULT);
+
mll.lessees_ptr = (uint64_t) (uintptr_t) &lessees[0];
igt_assert_eq(list_lessees(data->master.fd, &mll), 0);
@@ -338,7 +349,16 @@ static void lessee_list(data_t *data)
/* Make sure the listed lease is the same as the one we created */
igt_assert_eq(lessees[0], lease.lessee_id);
+ /* invalid pad */
+ mll.pad = -1;
+ igt_assert_eq(list_lessees(data->master.fd, &mll), -EINVAL);
+ mll.pad = 0;
+
terminate_lease(&lease);
+
+ /* Make sure the lease is gone */
+ igt_assert_eq(list_lessees(data->master.fd, &mll), 0);
+ igt_assert_eq(mll.count_lessees, 0);
}
/* Test getting the contents of a lease */
--
2.14.4
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [igt-dev] [PATCH i-g-t 6/8] tests/kms_lease: improve lease_get subtest
2018-11-02 20:53 [igt-dev] [PATCH i-g-t 1/8] tests/kms_sequence: Add tests for new CRTC get/queue sequence ioctls [v2] Daniel Vetter
` (3 preceding siblings ...)
2018-11-02 20:53 ` [igt-dev] [PATCH i-g-t 5/8] tests/kms_lease: improve lesssee_list subtests Daniel Vetter
@ 2018-11-02 20:53 ` Daniel Vetter
2018-11-02 20:53 ` [igt-dev] [PATCH i-g-t 7/8] tests/kms_lease|sequence: Make sure we're master Daniel Vetter
` (6 subsequent siblings)
11 siblings, 0 replies; 14+ messages in thread
From: Daniel Vetter @ 2018-11-02 20:53 UTC (permalink / raw)
To: IGT development; +Cc: Keith Packard
Again it failed to fill in the pad field. It also had the wrong
assumptions about planes being included. Plus again add a bunch more
paranoid checks. And make sure the primary plane is included, too.
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
---
tests/kms_lease.c | 42 +++++++++++++++++++++++++++++++-----------
1 file changed, 31 insertions(+), 11 deletions(-)
diff --git a/tests/kms_lease.c b/tests/kms_lease.c
index 5d2f554d9bfc..f5b66d86398e 100644
--- a/tests/kms_lease.c
+++ b/tests/kms_lease.c
@@ -121,6 +121,7 @@ typedef struct {
enum pipe pipe;
uint32_t crtc_id;
uint32_t connector_id;
+ uint32_t plane_id;
} data_t;
static uint32_t pipe_to_crtc_id(igt_display_t *display, enum pipe pipe)
@@ -247,9 +248,7 @@ static int make_lease(data_t *data, lease_t *lease)
object_ids[mcl.object_count++] = data->connector_id;
object_ids[mcl.object_count++] = data->crtc_id;
/* We use universal planes, must add the primary plane */
- object_ids[mcl.object_count++] =
- igt_pipe_get_plane_type(&data->master.display.pipes[data->pipe],
- DRM_PLANE_TYPE_PRIMARY)->drm_plane->plane_id;
+ object_ids[mcl.object_count++] = data->plane_id;
ret = create_lease(data->master.fd, &mcl);
@@ -366,9 +365,12 @@ static void lease_get(data_t *data)
{
lease_t lease;
struct local_drm_mode_get_lease mgl;
- uint32_t objects[2];
+ int num_leased_obj = 3;
+ uint32_t objects[num_leased_obj];
int o;
+ mgl.pad = 0;
+
/* Create a valid lease */
igt_assert_eq(make_lease(data, &lease), 0);
@@ -378,7 +380,7 @@ static void lease_get(data_t *data)
igt_assert_eq(get_lease(lease.fd, &mgl), 0);
/* Make sure it's 2 */
- igt_assert_eq(mgl.count_objects, 2);
+ igt_assert_eq(mgl.count_objects, num_leased_obj);
/* Get the objects */
mgl.objects_ptr = (uint64_t) (uintptr_t) objects;
@@ -386,20 +388,35 @@ static void lease_get(data_t *data)
igt_assert_eq(get_lease(lease.fd, &mgl), 0);
/* Make sure it's 2 */
- igt_assert_eq(mgl.count_objects, 2);
+ igt_assert_eq(mgl.count_objects, num_leased_obj);
- /* Make sure we got both the connector and crtc back */
- for (o = 0; o < 2; o++)
+ /* Make sure we got the connector, crtc and plane back */
+ for (o = 0; o < num_leased_obj; o++)
if (objects[o] == data->connector_id)
break;
- igt_assert_neq(o, 2);
+ igt_assert_neq(o, num_leased_obj);
- for (o = 0; o < 2; o++)
+ for (o = 0; o < num_leased_obj; o++)
if (objects[o] == data->crtc_id)
break;
- igt_assert_neq(o, 2);
+ igt_assert_neq(o, num_leased_obj);
+
+ for (o = 0; o < num_leased_obj; o++)
+ if (objects[o] == data->plane_id)
+ break;
+
+ igt_assert_neq(o, num_leased_obj);
+
+ /* invalid pad */
+ mgl.pad = -1;
+ igt_assert_eq(get_lease(lease.fd, &mgl), -EINVAL);
+ mgl.pad = 0;
+
+ /* invalid pointer */
+ mgl.objects_ptr = 0;
+ igt_assert_eq(get_lease(lease.fd, &mgl), -EFAULT);
terminate_lease(&lease);
}
@@ -566,6 +583,9 @@ static void run_test(data_t *data, void (*testfunc)(data_t *))
data->pipe = p;
data->crtc_id = pipe_to_crtc_id(display, p);
data->connector_id = output->id;
+ data->plane_id =
+ igt_pipe_get_plane_type(&data->master.display.pipes[data->pipe],
+ DRM_PLANE_TYPE_PRIMARY)->drm_plane->plane_id;
testfunc(data);
--
2.14.4
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [igt-dev] [PATCH i-g-t 7/8] tests/kms_lease|sequence: Make sure we're master
2018-11-02 20:53 [igt-dev] [PATCH i-g-t 1/8] tests/kms_sequence: Add tests for new CRTC get/queue sequence ioctls [v2] Daniel Vetter
` (4 preceding siblings ...)
2018-11-02 20:53 ` [igt-dev] [PATCH i-g-t 6/8] tests/kms_lease: improve lease_get subtest Daniel Vetter
@ 2018-11-02 20:53 ` Daniel Vetter
2018-11-02 20:53 ` [igt-dev] [PATCH i-g-t 8/8] tests/kms_lease: improve the unleased_connector/crtc tests Daniel Vetter
` (5 subsequent siblings)
11 siblings, 0 replies; 14+ messages in thread
From: Daniel Vetter @ 2018-11-02 20:53 UTC (permalink / raw)
To: IGT development; +Cc: Keith Packard
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
---
tests/kms_lease.c | 2 +-
tests/kms_sequence.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/tests/kms_lease.c b/tests/kms_lease.c
index f5b66d86398e..942eaf5b9921 100644
--- a/tests/kms_lease.c
+++ b/tests/kms_lease.c
@@ -623,7 +623,7 @@ igt_main
igt_skip_on_simulation();
igt_fixture {
- data.master.fd = drm_open_driver(DRIVER_ANY);
+ data.master.fd = drm_open_driver_master(DRIVER_ANY);
kmstest_set_vt_graphics_mode();
igt_display_init(&data.master.display, data.master.fd);
}
diff --git a/tests/kms_sequence.c b/tests/kms_sequence.c
index 783dda25308f..c68f7707c7a4 100644
--- a/tests/kms_sequence.c
+++ b/tests/kms_sequence.c
@@ -298,7 +298,7 @@ igt_main
igt_skip_on_simulation();
igt_fixture {
- fd = drm_open_driver(DRIVER_ANY);
+ fd = drm_open_driver_master(DRIVER_ANY);
kmstest_set_vt_graphics_mode();
igt_display_init(&data.display, fd);
}
--
2.14.4
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [igt-dev] [PATCH i-g-t 8/8] tests/kms_lease: improve the unleased_connector/crtc tests
2018-11-02 20:53 [igt-dev] [PATCH i-g-t 1/8] tests/kms_sequence: Add tests for new CRTC get/queue sequence ioctls [v2] Daniel Vetter
` (5 preceding siblings ...)
2018-11-02 20:53 ` [igt-dev] [PATCH i-g-t 7/8] tests/kms_lease|sequence: Make sure we're master Daniel Vetter
@ 2018-11-02 20:53 ` Daniel Vetter
2018-11-02 21:46 ` [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/8] tests/kms_sequence: Add tests for new CRTC get/queue sequence ioctls [v2] Patchwork
` (4 subsequent siblings)
11 siblings, 0 replies; 14+ messages in thread
From: Daniel Vetter @ 2018-11-02 20:53 UTC (permalink / raw)
To: IGT development; +Cc: Keith Packard, Daniel Vetter
We need to use raw ioctl since using the igt_kms library is fairly
brittle against changes in the library. This fixes the last subtest
failure due to the rebasing onto latest kernel and igt.
Note that the revoke test doesn't have such a problem, because the
igt library has been initialized when everything was still there.
Hence we will never blow up in the library after the revoke happened.
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
---
tests/kms_lease.c | 38 +++++++++++++++++++++++---------------
1 file changed, 23 insertions(+), 15 deletions(-)
diff --git a/tests/kms_lease.c b/tests/kms_lease.c
index 942eaf5b9921..e98c2a0f3506 100644
--- a/tests/kms_lease.c
+++ b/tests/kms_lease.c
@@ -426,6 +426,7 @@ static void lease_unleased_crtc(data_t *data)
lease_t lease;
enum pipe p;
uint32_t bad_crtc_id;
+ drmModeCrtc *crtc;
int ret;
/* Create a valid lease */
@@ -443,15 +444,22 @@ static void lease_unleased_crtc(data_t *data)
/* Give up if there isn't another crtc */
igt_skip_on(bad_crtc_id == 0);
- /* Attempt to use the unleased crtc id. Note that the
- * failure here is not directly from the kernel because the
- * resources returned from the kernel will not contain this resource
- * id and hence the igt helper functions will fail to find it
- */
- ret = prepare_crtc(&lease, data->connector_id, bad_crtc_id);
+ /* sanity check */
+ ret = drmModeSetCrtc(lease.fd, data->crtc_id, 0, 0, 0, NULL, 0, NULL);
+ igt_assert_eq(ret, 0);
+ crtc = drmModeGetCrtc(lease.fd, data->crtc_id);
+ igt_assert(crtc);
+ drmModeFreeCrtc(crtc);
- /* Ensure the expected error is returned */
+ /* Attempt to use the unleased crtc id. We need raw ioctl to bypass the
+ * igt_kms helpers.
+ */
+ ret = drmModeSetCrtc(lease.fd, bad_crtc_id, 0, 0, 0, NULL, 0, NULL);
igt_assert_eq(ret, -ENOENT);
+ crtc = drmModeGetCrtc(lease.fd, bad_crtc_id);
+ igt_assert(!crtc);
+ igt_assert_eq(errno, ENOENT);
+ drmModeFreeCrtc(crtc);
terminate_lease(&lease);
}
@@ -461,7 +469,7 @@ static void lease_unleased_connector(data_t *data)
lease_t lease;
int o;
uint32_t bad_connector_id;
- int ret;
+ drmModeConnector *c;
/* Create a valid lease */
igt_assert_eq(make_lease(data, &lease), 0);
@@ -478,15 +486,15 @@ static void lease_unleased_connector(data_t *data)
/* Give up if there isn't another connector */
igt_skip_on(bad_connector_id == 0);
+ /* sanity check */
+ c = drmModeGetConnector(lease.fd, data->connector_id);
+ igt_assert(c);
+
/* Attempt to use the unleased connector id. Note that the
- * failure here is not directly from the kernel because the
- * resources returned from the kernel will not contain this resource
- * id and hence the igt helper functions will fail to find it
*/
- ret = prepare_crtc(&lease, bad_connector_id, data->crtc_id);
-
- /* Ensure the expected error is returned */
- igt_assert_eq(ret, -ENOENT);
+ c = drmModeGetConnector(lease.fd, bad_connector_id);
+ igt_assert(!c);
+ igt_assert_eq(errno, ENOENT);
terminate_lease(&lease);
}
--
2.14.4
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/8] tests/kms_sequence: Add tests for new CRTC get/queue sequence ioctls [v2]
2018-11-02 20:53 [igt-dev] [PATCH i-g-t 1/8] tests/kms_sequence: Add tests for new CRTC get/queue sequence ioctls [v2] Daniel Vetter
` (6 preceding siblings ...)
2018-11-02 20:53 ` [igt-dev] [PATCH i-g-t 8/8] tests/kms_lease: improve the unleased_connector/crtc tests Daniel Vetter
@ 2018-11-02 21:46 ` Patchwork
2018-11-03 2:52 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
` (3 subsequent siblings)
11 siblings, 0 replies; 14+ messages in thread
From: Patchwork @ 2018-11-02 21:46 UTC (permalink / raw)
To: Daniel Vetter; +Cc: igt-dev
== Series Details ==
Series: series starting with [i-g-t,1/8] tests/kms_sequence: Add tests for new CRTC get/queue sequence ioctls [v2]
URL : https://patchwork.freedesktop.org/series/51984/
State : success
== Summary ==
= CI Bug Log - changes from CI_DRM_5081 -> IGTPW_2032 =
== Summary - SUCCESS ==
No regressions found.
External URL: https://patchwork.freedesktop.org/api/1.0/series/51984/revisions/1/mbox/
== Known issues ==
Here are the changes found in IGTPW_2032 that come from known issues:
=== IGT changes ===
==== Issues hit ====
igt@drv_selftest@live_hangcheck:
fi-icl-u: PASS -> INCOMPLETE (fdo#108315)
igt@kms_pipe_crc_basic@read-crc-pipe-a:
fi-byt-clapper: PASS -> FAIL (fdo#107362)
==== Possible fixes ====
igt@gem_cpu_reloc@basic:
fi-kbl-7560u: INCOMPLETE (fdo#103665) -> PASS
fdo#103665 https://bugs.freedesktop.org/show_bug.cgi?id=103665
fdo#107362 https://bugs.freedesktop.org/show_bug.cgi?id=107362
fdo#108315 https://bugs.freedesktop.org/show_bug.cgi?id=108315
== Participating hosts (50 -> 44) ==
Missing (6): fi-ilk-m540 fi-hsw-4200u fi-byt-squawks fi-bsw-cyan fi-ctg-p8600 fi-pnv-d510
== Build changes ==
* IGT: IGT_4705 -> IGTPW_2032
CI_DRM_5081: f5e16acf6c85d38756c3efdb77ec6aede55df0ba @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_2032: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2032/
IGT_4705: 7983e19ed62ec8db1884f55e07e458a62cc51e37 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
== Testlist changes ==
+igt@kms_lease@lease_again
+igt@kms_lease@lease_get
+igt@kms_lease@lease_invalid_connector
+igt@kms_lease@lease_invalid_crtc
+igt@kms_lease@lease_revoke
+igt@kms_lease@lease_unleased_connector
+igt@kms_lease@lease_unleased_crtc
+igt@kms_lease@lessee_list
+igt@kms_lease@simple_lease
+igt@kms_sequence@get-busy
+igt@kms_sequence@get-forked
+igt@kms_sequence@get-forked-busy
+igt@kms_sequence@get-idle
+igt@kms_sequence@queue-busy
+igt@kms_sequence@queue-idle
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2032/issues.html
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 14+ messages in thread
* [igt-dev] ✗ Fi.CI.IGT: failure for series starting with [i-g-t,1/8] tests/kms_sequence: Add tests for new CRTC get/queue sequence ioctls [v2]
2018-11-02 20:53 [igt-dev] [PATCH i-g-t 1/8] tests/kms_sequence: Add tests for new CRTC get/queue sequence ioctls [v2] Daniel Vetter
` (7 preceding siblings ...)
2018-11-02 21:46 ` [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/8] tests/kms_sequence: Add tests for new CRTC get/queue sequence ioctls [v2] Patchwork
@ 2018-11-03 2:52 ` Patchwork
2018-11-05 10:40 ` [igt-dev] ✓ Fi.CI.BAT: success " Patchwork
` (2 subsequent siblings)
11 siblings, 0 replies; 14+ messages in thread
From: Patchwork @ 2018-11-03 2:52 UTC (permalink / raw)
To: Daniel Vetter; +Cc: igt-dev
== Series Details ==
Series: series starting with [i-g-t,1/8] tests/kms_sequence: Add tests for new CRTC get/queue sequence ioctls [v2]
URL : https://patchwork.freedesktop.org/series/51984/
State : failure
== Summary ==
= CI Bug Log - changes from IGT_4705_full -> IGTPW_2032_full =
== Summary - FAILURE ==
Serious unknown changes coming with IGTPW_2032_full absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in IGTPW_2032_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://patchwork.freedesktop.org/api/1.0/series/51984/revisions/1/mbox/
== Possible new issues ==
Here are the unknown changes that may have been introduced in IGTPW_2032_full:
=== IGT changes ===
==== Possible regressions ====
igt@kms_properties@connector-properties-atomic:
shard-apl: PASS -> FAIL
shard-glk: PASS -> FAIL
shard-hsw: PASS -> FAIL
shard-kbl: PASS -> FAIL
==== Warnings ====
igt@perf_pmu@rc6:
shard-kbl: SKIP -> PASS
== Known issues ==
Here are the changes found in IGTPW_2032_full that come from known issues:
=== IGT changes ===
==== Issues hit ====
igt@kms_busy@extended-modeset-hang-newfb-render-a:
shard-hsw: PASS -> DMESG-WARN (fdo#107956)
igt@kms_busy@extended-pageflip-modeset-hang-oldfb-render-a:
shard-snb: PASS -> DMESG-WARN (fdo#107956)
igt@kms_cursor_crc@cursor-128x128-suspend:
shard-apl: NOTRUN -> FAIL (fdo#103191, fdo#103232)
shard-kbl: PASS -> INCOMPLETE (fdo#103665)
igt@kms_cursor_crc@cursor-64x64-onscreen:
shard-kbl: PASS -> FAIL (fdo#103232)
shard-apl: PASS -> FAIL (fdo#103232)
igt@kms_cursor_crc@cursor-64x64-suspend:
shard-apl: PASS -> FAIL (fdo#103191, fdo#103232)
shard-kbl: PASS -> FAIL (fdo#103191, fdo#103232)
igt@kms_cursor_crc@cursor-size-change:
shard-glk: PASS -> FAIL (fdo#103232) +2
igt@kms_cursor_legacy@cursor-vs-flip-toggle:
shard-snb: PASS -> INCOMPLETE (fdo#105411)
igt@kms_flip@flip-vs-expired-vblank-interruptible:
shard-glk: PASS -> FAIL (fdo#105363)
igt@kms_flip@flip-vs-modeset-vs-hang:
shard-apl: PASS -> INCOMPLETE (fdo#103927) +1
igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-onoff:
shard-apl: PASS -> FAIL (fdo#103167)
igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-onoff:
shard-glk: PASS -> FAIL (fdo#103167) +1
igt@kms_frontbuffer_tracking@fbc-rgb565-draw-mmap-cpu:
shard-snb: PASS -> DMESG-WARN (fdo#107469)
igt@kms_plane_alpha_blend@pipe-a-alpha-7efc:
shard-apl: PASS -> FAIL (fdo#108145)
igt@kms_plane_alpha_blend@pipe-b-alpha-transparant-fb:
shard-glk: NOTRUN -> FAIL (fdo#108145)
igt@kms_plane_multiple@atomic-pipe-a-tiling-x:
shard-apl: PASS -> FAIL (fdo#103166) +1
shard-glk: PASS -> FAIL (fdo#103166)
igt@kms_plane_multiple@atomic-pipe-b-tiling-yf:
shard-kbl: PASS -> FAIL (fdo#103166) +1
igt@kms_rotation_crc@primary-rotation-180:
shard-snb: PASS -> FAIL (fdo#103925)
igt@kms_setmode@basic:
shard-apl: PASS -> FAIL (fdo#99912)
==== Possible fixes ====
igt@gem_exec_schedule@preempt-contexts-render:
shard-glk: DMESG-WARN (fdo#106538, fdo#105763) -> PASS +1
igt@gem_ppgtt@blt-vs-render-ctxn:
shard-kbl: INCOMPLETE (fdo#106023, fdo#106887, fdo#103665) -> PASS
igt@kms_available_modes_crc@available_mode_test_crc:
shard-snb: FAIL (fdo#106641) -> PASS
igt@kms_ccs@pipe-a-crc-sprite-planes-basic:
shard-glk: FAIL (fdo#108145) -> PASS
igt@kms_color@pipe-c-ctm-max:
shard-kbl: FAIL (fdo#108147) -> PASS
shard-apl: FAIL (fdo#108147) -> PASS
igt@kms_color@pipe-c-legacy-gamma:
shard-apl: FAIL (fdo#104782) -> PASS
igt@kms_cursor_crc@cursor-128x42-sliding:
shard-apl: FAIL (fdo#103232) -> PASS +2
igt@kms_cursor_crc@cursor-256x256-sliding:
shard-glk: FAIL (fdo#103232) -> PASS +1
igt@kms_draw_crc@draw-method-rgb565-render-ytiled:
shard-apl: INCOMPLETE (fdo#103927) -> SKIP
igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-move:
shard-glk: FAIL (fdo#103167) -> PASS +4
shard-kbl: FAIL (fdo#103167) -> PASS +1
shard-apl: FAIL (fdo#103167) -> PASS
igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-indfb-draw-mmap-wc:
shard-glk: INCOMPLETE (k.org#198133, fdo#103359) -> PASS
igt@kms_plane@plane-panning-bottom-right-suspend-pipe-c-planes:
shard-kbl: INCOMPLETE (fdo#103665) -> PASS
igt@kms_plane_multiple@atomic-pipe-b-tiling-y:
shard-glk: FAIL (fdo#103166) -> PASS +1
shard-apl: FAIL (fdo#103166) -> PASS +1
igt@kms_setmode@basic:
shard-kbl: FAIL (fdo#99912) -> PASS
fdo#103166 https://bugs.freedesktop.org/show_bug.cgi?id=103166
fdo#103167 https://bugs.freedesktop.org/show_bug.cgi?id=103167
fdo#103191 https://bugs.freedesktop.org/show_bug.cgi?id=103191
fdo#103232 https://bugs.freedesktop.org/show_bug.cgi?id=103232
fdo#103359 https://bugs.freedesktop.org/show_bug.cgi?id=103359
fdo#103665 https://bugs.freedesktop.org/show_bug.cgi?id=103665
fdo#103925 https://bugs.freedesktop.org/show_bug.cgi?id=103925
fdo#103927 https://bugs.freedesktop.org/show_bug.cgi?id=103927
fdo#104782 https://bugs.freedesktop.org/show_bug.cgi?id=104782
fdo#105363 https://bugs.freedesktop.org/show_bug.cgi?id=105363
fdo#105411 https://bugs.freedesktop.org/show_bug.cgi?id=105411
fdo#105763 https://bugs.freedesktop.org/show_bug.cgi?id=105763
fdo#106023 https://bugs.freedesktop.org/show_bug.cgi?id=106023
fdo#106538 https://bugs.freedesktop.org/show_bug.cgi?id=106538
fdo#106641 https://bugs.freedesktop.org/show_bug.cgi?id=106641
fdo#106887 https://bugs.freedesktop.org/show_bug.cgi?id=106887
fdo#107469 https://bugs.freedesktop.org/show_bug.cgi?id=107469
fdo#107956 https://bugs.freedesktop.org/show_bug.cgi?id=107956
fdo#108145 https://bugs.freedesktop.org/show_bug.cgi?id=108145
fdo#108147 https://bugs.freedesktop.org/show_bug.cgi?id=108147
fdo#99912 https://bugs.freedesktop.org/show_bug.cgi?id=99912
k.org#198133 https://bugzilla.kernel.org/show_bug.cgi?id=198133
== Participating hosts (6 -> 5) ==
Missing (1): shard-skl
== Build changes ==
* IGT: IGT_4705 -> IGTPW_2032
* Linux: CI_DRM_5079 -> CI_DRM_5081
CI_DRM_5079: fc3d54b430337be9c61a524c65b521761d6664a8 @ git://anongit.freedesktop.org/gfx-ci/linux
CI_DRM_5081: f5e16acf6c85d38756c3efdb77ec6aede55df0ba @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_2032: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2032/
IGT_4705: 7983e19ed62ec8db1884f55e07e458a62cc51e37 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2032/shards.html
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 14+ messages in thread
* [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/8] tests/kms_sequence: Add tests for new CRTC get/queue sequence ioctls [v2]
2018-11-02 20:53 [igt-dev] [PATCH i-g-t 1/8] tests/kms_sequence: Add tests for new CRTC get/queue sequence ioctls [v2] Daniel Vetter
` (8 preceding siblings ...)
2018-11-03 2:52 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
@ 2018-11-05 10:40 ` Patchwork
2018-11-05 10:45 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
2018-11-05 10:53 ` Patchwork
11 siblings, 0 replies; 14+ messages in thread
From: Patchwork @ 2018-11-05 10:40 UTC (permalink / raw)
To: Daniel Vetter; +Cc: igt-dev
== Series Details ==
Series: series starting with [i-g-t,1/8] tests/kms_sequence: Add tests for new CRTC get/queue sequence ioctls [v2]
URL : https://patchwork.freedesktop.org/series/51984/
State : success
== Summary ==
= CI Bug Log - changes from CI_DRM_5081 -> IGTPW_2032 =
== Summary - SUCCESS ==
No regressions found.
External URL: https://patchwork.freedesktop.org/api/1.0/series/51984/revisions/1/mbox/
== Known issues ==
Here are the changes found in IGTPW_2032 that come from known issues:
=== IGT changes ===
==== Issues hit ====
igt@drv_selftest@live_hangcheck:
fi-icl-u: PASS -> INCOMPLETE (fdo#108315)
igt@kms_pipe_crc_basic@read-crc-pipe-a:
fi-byt-clapper: PASS -> FAIL (fdo#107362)
==== Possible fixes ====
igt@gem_cpu_reloc@basic:
fi-kbl-7560u: INCOMPLETE (fdo#103665) -> PASS
fdo#103665 https://bugs.freedesktop.org/show_bug.cgi?id=103665
fdo#107362 https://bugs.freedesktop.org/show_bug.cgi?id=107362
fdo#108315 https://bugs.freedesktop.org/show_bug.cgi?id=108315
== Participating hosts (50 -> 44) ==
Missing (6): fi-ilk-m540 fi-hsw-4200u fi-byt-squawks fi-bsw-cyan fi-ctg-p8600 fi-pnv-d510
== Build changes ==
* IGT: IGT_4705 -> IGTPW_2032
CI_DRM_5081: f5e16acf6c85d38756c3efdb77ec6aede55df0ba @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_2032: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2032/
IGT_4705: 7983e19ed62ec8db1884f55e07e458a62cc51e37 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
== Testlist changes ==
+igt@kms_lease@lease_again
+igt@kms_lease@lease_get
+igt@kms_lease@lease_invalid_connector
+igt@kms_lease@lease_invalid_crtc
+igt@kms_lease@lease_revoke
+igt@kms_lease@lease_unleased_connector
+igt@kms_lease@lease_unleased_crtc
+igt@kms_lease@lessee_list
+igt@kms_lease@simple_lease
+igt@kms_sequence@get-busy
+igt@kms_sequence@get-forked
+igt@kms_sequence@get-forked-busy
+igt@kms_sequence@get-idle
+igt@kms_sequence@queue-busy
+igt@kms_sequence@queue-idle
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2032/issues.html
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 14+ messages in thread
* [igt-dev] ✓ Fi.CI.IGT: success for series starting with [i-g-t,1/8] tests/kms_sequence: Add tests for new CRTC get/queue sequence ioctls [v2]
2018-11-02 20:53 [igt-dev] [PATCH i-g-t 1/8] tests/kms_sequence: Add tests for new CRTC get/queue sequence ioctls [v2] Daniel Vetter
` (9 preceding siblings ...)
2018-11-05 10:40 ` [igt-dev] ✓ Fi.CI.BAT: success " Patchwork
@ 2018-11-05 10:45 ` Patchwork
2018-11-05 10:53 ` Patchwork
11 siblings, 0 replies; 14+ messages in thread
From: Patchwork @ 2018-11-05 10:45 UTC (permalink / raw)
To: Daniel Vetter; +Cc: igt-dev
== Series Details ==
Series: series starting with [i-g-t,1/8] tests/kms_sequence: Add tests for new CRTC get/queue sequence ioctls [v2]
URL : https://patchwork.freedesktop.org/series/51984/
State : success
== Summary ==
= CI Bug Log - changes from IGT_4705_full -> IGTPW_2032_full =
== Summary - WARNING ==
Minor unknown changes coming with IGTPW_2032_full need to be verified
manually.
If you think the reported changes have nothing to do with the changes
introduced in IGTPW_2032_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://patchwork.freedesktop.org/api/1.0/series/51984/revisions/1/mbox/
== Possible new issues ==
Here are the unknown changes that may have been introduced in IGTPW_2032_full:
=== IGT changes ===
==== Warnings ====
igt@perf_pmu@rc6:
shard-kbl: SKIP -> PASS
== Known issues ==
Here are the changes found in IGTPW_2032_full that come from known issues:
=== IGT changes ===
==== Issues hit ====
igt@kms_busy@extended-modeset-hang-newfb-render-a:
shard-hsw: PASS -> DMESG-WARN (fdo#107956)
igt@kms_busy@extended-pageflip-modeset-hang-oldfb-render-a:
shard-snb: PASS -> DMESG-WARN (fdo#107956)
igt@kms_cursor_crc@cursor-128x128-suspend:
shard-apl: NOTRUN -> FAIL (fdo#103232, fdo#103191)
shard-kbl: PASS -> INCOMPLETE (fdo#103665)
igt@kms_cursor_crc@cursor-64x64-onscreen:
shard-kbl: PASS -> FAIL (fdo#103232)
shard-apl: PASS -> FAIL (fdo#103232)
igt@kms_cursor_crc@cursor-64x64-suspend:
shard-apl: PASS -> FAIL (fdo#103232, fdo#103191)
shard-kbl: PASS -> FAIL (fdo#103232, fdo#103191)
igt@kms_cursor_crc@cursor-size-change:
shard-glk: PASS -> FAIL (fdo#103232) +2
igt@kms_cursor_legacy@cursor-vs-flip-toggle:
shard-snb: PASS -> INCOMPLETE (fdo#105411)
igt@kms_flip@flip-vs-expired-vblank-interruptible:
shard-glk: PASS -> FAIL (fdo#105363)
igt@kms_flip@flip-vs-modeset-vs-hang:
shard-apl: PASS -> INCOMPLETE (fdo#103927) +1
igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-onoff:
shard-apl: PASS -> FAIL (fdo#103167)
igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-onoff:
shard-glk: PASS -> FAIL (fdo#103167) +1
igt@kms_frontbuffer_tracking@fbc-rgb565-draw-mmap-cpu:
shard-snb: PASS -> DMESG-WARN (fdo#107469)
igt@kms_plane_alpha_blend@pipe-a-alpha-7efc:
shard-apl: PASS -> FAIL (fdo#108145)
igt@kms_plane_alpha_blend@pipe-b-alpha-transparant-fb:
shard-glk: NOTRUN -> FAIL (fdo#108145)
igt@kms_plane_multiple@atomic-pipe-a-tiling-x:
shard-apl: PASS -> FAIL (fdo#103166) +1
shard-glk: PASS -> FAIL (fdo#103166)
igt@kms_plane_multiple@atomic-pipe-b-tiling-yf:
shard-kbl: PASS -> FAIL (fdo#103166) +1
igt@kms_properties@connector-properties-atomic:
shard-apl: PASS -> FAIL (fdo#108642)
shard-glk: PASS -> FAIL (fdo#108642)
shard-hsw: PASS -> FAIL (fdo#108642)
shard-kbl: PASS -> FAIL (fdo#108642)
igt@kms_rotation_crc@primary-rotation-180:
shard-snb: PASS -> FAIL (fdo#103925)
igt@kms_setmode@basic:
shard-apl: PASS -> FAIL (fdo#99912)
==== Possible fixes ====
igt@gem_exec_schedule@preempt-contexts-render:
shard-glk: DMESG-WARN (fdo#106538, fdo#105763) -> PASS +1
igt@gem_ppgtt@blt-vs-render-ctxn:
shard-kbl: INCOMPLETE (fdo#103665, fdo#106023, fdo#106887) -> PASS
igt@kms_available_modes_crc@available_mode_test_crc:
shard-snb: FAIL (fdo#106641) -> PASS
igt@kms_ccs@pipe-a-crc-sprite-planes-basic:
shard-glk: FAIL (fdo#108145) -> PASS
igt@kms_color@pipe-c-ctm-max:
shard-kbl: FAIL (fdo#108147) -> PASS
shard-apl: FAIL (fdo#108147) -> PASS
igt@kms_color@pipe-c-legacy-gamma:
shard-apl: FAIL (fdo#104782) -> PASS
igt@kms_cursor_crc@cursor-128x42-sliding:
shard-apl: FAIL (fdo#103232) -> PASS +2
igt@kms_cursor_crc@cursor-256x256-sliding:
shard-glk: FAIL (fdo#103232) -> PASS +1
igt@kms_draw_crc@draw-method-rgb565-render-ytiled:
shard-apl: INCOMPLETE (fdo#103927) -> SKIP
igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-move:
shard-glk: FAIL (fdo#103167) -> PASS +4
shard-kbl: FAIL (fdo#103167) -> PASS +1
shard-apl: FAIL (fdo#103167) -> PASS
igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-indfb-draw-mmap-wc:
shard-glk: INCOMPLETE (fdo#103359, k.org#198133) -> PASS
igt@kms_plane@plane-panning-bottom-right-suspend-pipe-c-planes:
shard-kbl: INCOMPLETE (fdo#103665) -> PASS
igt@kms_plane_multiple@atomic-pipe-b-tiling-y:
shard-glk: FAIL (fdo#103166) -> PASS +1
shard-apl: FAIL (fdo#103166) -> PASS +1
igt@kms_setmode@basic:
shard-kbl: FAIL (fdo#99912) -> PASS
fdo#103166 https://bugs.freedesktop.org/show_bug.cgi?id=103166
fdo#103167 https://bugs.freedesktop.org/show_bug.cgi?id=103167
fdo#103191 https://bugs.freedesktop.org/show_bug.cgi?id=103191
fdo#103232 https://bugs.freedesktop.org/show_bug.cgi?id=103232
fdo#103359 https://bugs.freedesktop.org/show_bug.cgi?id=103359
fdo#103665 https://bugs.freedesktop.org/show_bug.cgi?id=103665
fdo#103925 https://bugs.freedesktop.org/show_bug.cgi?id=103925
fdo#103927 https://bugs.freedesktop.org/show_bug.cgi?id=103927
fdo#104782 https://bugs.freedesktop.org/show_bug.cgi?id=104782
fdo#105363 https://bugs.freedesktop.org/show_bug.cgi?id=105363
fdo#105411 https://bugs.freedesktop.org/show_bug.cgi?id=105411
fdo#105763 https://bugs.freedesktop.org/show_bug.cgi?id=105763
fdo#106023 https://bugs.freedesktop.org/show_bug.cgi?id=106023
fdo#106538 https://bugs.freedesktop.org/show_bug.cgi?id=106538
fdo#106641 https://bugs.freedesktop.org/show_bug.cgi?id=106641
fdo#106887 https://bugs.freedesktop.org/show_bug.cgi?id=106887
fdo#107469 https://bugs.freedesktop.org/show_bug.cgi?id=107469
fdo#107956 https://bugs.freedesktop.org/show_bug.cgi?id=107956
fdo#108145 https://bugs.freedesktop.org/show_bug.cgi?id=108145
fdo#108147 https://bugs.freedesktop.org/show_bug.cgi?id=108147
fdo#108642 https://bugs.freedesktop.org/show_bug.cgi?id=108642
fdo#99912 https://bugs.freedesktop.org/show_bug.cgi?id=99912
k.org#198133 https://bugzilla.kernel.org/show_bug.cgi?id=198133
== Participating hosts (6 -> 5) ==
Missing (1): shard-skl
== Build changes ==
* IGT: IGT_4705 -> IGTPW_2032
* Linux: CI_DRM_5079 -> CI_DRM_5081
CI_DRM_5079: fc3d54b430337be9c61a524c65b521761d6664a8 @ git://anongit.freedesktop.org/gfx-ci/linux
CI_DRM_5081: f5e16acf6c85d38756c3efdb77ec6aede55df0ba @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_2032: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2032/
IGT_4705: 7983e19ed62ec8db1884f55e07e458a62cc51e37 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2032/shards.html
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 14+ messages in thread
* [igt-dev] ✓ Fi.CI.IGT: success for series starting with [i-g-t,1/8] tests/kms_sequence: Add tests for new CRTC get/queue sequence ioctls [v2]
2018-11-02 20:53 [igt-dev] [PATCH i-g-t 1/8] tests/kms_sequence: Add tests for new CRTC get/queue sequence ioctls [v2] Daniel Vetter
` (10 preceding siblings ...)
2018-11-05 10:45 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
@ 2018-11-05 10:53 ` Patchwork
2018-11-08 15:34 ` Daniel Vetter
11 siblings, 1 reply; 14+ messages in thread
From: Patchwork @ 2018-11-05 10:53 UTC (permalink / raw)
To: Daniel Vetter; +Cc: igt-dev
== Series Details ==
Series: series starting with [i-g-t,1/8] tests/kms_sequence: Add tests for new CRTC get/queue sequence ioctls [v2]
URL : https://patchwork.freedesktop.org/series/51984/
State : success
== Summary ==
= CI Bug Log - changes from IGT_4706_full -> IGTPW_2032_full =
== Summary - SUCCESS ==
No regressions found.
External URL: https://patchwork.freedesktop.org/api/1.0/series/51984/revisions/1/mbox/
== Known issues ==
Here are the changes found in IGTPW_2032_full that come from known issues:
=== IGT changes ===
==== Issues hit ====
igt@kms_cursor_crc@cursor-128x128-suspend:
shard-apl: PASS -> FAIL (fdo#103232, fdo#103191)
shard-kbl: PASS -> INCOMPLETE (fdo#103665)
igt@kms_cursor_crc@cursor-64x64-onscreen:
shard-kbl: PASS -> FAIL (fdo#103232)
shard-apl: PASS -> FAIL (fdo#103232)
igt@kms_cursor_crc@cursor-64x64-suspend:
shard-kbl: PASS -> FAIL (fdo#103232, fdo#103191)
igt@kms_cursor_crc@cursor-size-change:
shard-glk: PASS -> FAIL (fdo#103232) +2
igt@kms_cursor_legacy@cursor-vs-flip-toggle:
shard-snb: PASS -> INCOMPLETE (fdo#105411)
igt@kms_flip@flip-vs-modeset-vs-hang:
shard-apl: PASS -> INCOMPLETE (fdo#103927) +1
igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-onoff:
shard-apl: PASS -> FAIL (fdo#103167)
igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-onoff:
shard-glk: PASS -> FAIL (fdo#103167) +1
igt@kms_frontbuffer_tracking@fbc-rgb565-draw-mmap-cpu:
shard-snb: PASS -> DMESG-WARN (fdo#107469)
igt@kms_plane_multiple@atomic-pipe-a-tiling-x:
shard-glk: PASS -> FAIL (fdo#103166) +1
igt@kms_plane_multiple@atomic-pipe-b-tiling-yf:
shard-kbl: PASS -> FAIL (fdo#103166) +1
shard-apl: PASS -> FAIL (fdo#103166)
igt@kms_rotation_crc@primary-rotation-180:
shard-snb: PASS -> FAIL (fdo#103925)
==== Possible fixes ====
igt@drv_suspend@debugfs-reader:
shard-kbl: INCOMPLETE (fdo#103665) -> PASS
igt@gem_exec_reloc@basic-wc-cpu-noreloc:
shard-snb: INCOMPLETE (fdo#105411) -> PASS
igt@kms_ccs@pipe-a-crc-sprite-planes-basic:
shard-glk: FAIL (fdo#108145) -> PASS
shard-kbl: FAIL (fdo#108145, fdo#107725) -> PASS
igt@kms_color@pipe-a-legacy-gamma:
shard-apl: FAIL (fdo#108145, fdo#104782) -> PASS
igt@kms_cursor_crc@cursor-128x128-random:
shard-apl: FAIL (fdo#103232) -> PASS +3
igt@kms_cursor_crc@cursor-128x128-sliding:
shard-glk: FAIL (fdo#103232) -> PASS
igt@kms_cursor_crc@cursor-256x256-suspend:
shard-apl: FAIL (fdo#103232, fdo#103191) -> PASS
igt@kms_cursor_crc@cursor-64x64-random:
shard-kbl: FAIL (fdo#103232) -> PASS
igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-pwrite:
shard-apl: FAIL (fdo#103167) -> PASS +1
igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-pwrite:
shard-kbl: FAIL (fdo#103167) -> PASS
igt@kms_frontbuffer_tracking@fbc-1p-rte:
shard-apl: FAIL (fdo#103167, fdo#105682) -> PASS
igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-move:
shard-glk: FAIL (fdo#103167) -> PASS +7
igt@kms_plane_alpha_blend@pipe-a-constant-alpha-min:
shard-kbl: FAIL (fdo#108145) -> PASS
igt@kms_plane_multiple@atomic-pipe-a-tiling-y:
shard-glk: FAIL (fdo#103166) -> PASS
igt@kms_plane_multiple@atomic-pipe-c-tiling-y:
shard-apl: FAIL (fdo#103166) -> PASS
igt@kms_properties@connector-properties-legacy:
shard-kbl: DMESG-WARN (fdo#103313, fdo#105345) -> PASS
igt@pm_rpm@system-suspend:
shard-kbl: INCOMPLETE (fdo#103665, fdo#107807) -> PASS
fdo#103166 https://bugs.freedesktop.org/show_bug.cgi?id=103166
fdo#103167 https://bugs.freedesktop.org/show_bug.cgi?id=103167
fdo#103191 https://bugs.freedesktop.org/show_bug.cgi?id=103191
fdo#103232 https://bugs.freedesktop.org/show_bug.cgi?id=103232
fdo#103313 https://bugs.freedesktop.org/show_bug.cgi?id=103313
fdo#103665 https://bugs.freedesktop.org/show_bug.cgi?id=103665
fdo#103925 https://bugs.freedesktop.org/show_bug.cgi?id=103925
fdo#103927 https://bugs.freedesktop.org/show_bug.cgi?id=103927
fdo#104782 https://bugs.freedesktop.org/show_bug.cgi?id=104782
fdo#105345 https://bugs.freedesktop.org/show_bug.cgi?id=105345
fdo#105411 https://bugs.freedesktop.org/show_bug.cgi?id=105411
fdo#105682 https://bugs.freedesktop.org/show_bug.cgi?id=105682
fdo#107469 https://bugs.freedesktop.org/show_bug.cgi?id=107469
fdo#107725 https://bugs.freedesktop.org/show_bug.cgi?id=107725
fdo#107807 https://bugs.freedesktop.org/show_bug.cgi?id=107807
fdo#108145 https://bugs.freedesktop.org/show_bug.cgi?id=108145
== Participating hosts (6 -> 5) ==
Missing (1): shard-skl
== Build changes ==
* IGT: IGT_4706 -> IGTPW_2032
CI_DRM_5081: f5e16acf6c85d38756c3efdb77ec6aede55df0ba @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_2032: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2032/
IGT_4706: 5421c73a7db3cfaa85ab24325fe6e898cbb27fb3 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2032/shards.html
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [igt-dev] ✓ Fi.CI.IGT: success for series starting with [i-g-t,1/8] tests/kms_sequence: Add tests for new CRTC get/queue sequence ioctls [v2]
2018-11-05 10:53 ` Patchwork
@ 2018-11-08 15:34 ` Daniel Vetter
0 siblings, 0 replies; 14+ messages in thread
From: Daniel Vetter @ 2018-11-08 15:34 UTC (permalink / raw)
To: igt-dev
On Mon, Nov 05, 2018 at 10:53:31AM -0000, Patchwork wrote:
> == Series Details ==
>
> Series: series starting with [i-g-t,1/8] tests/kms_sequence: Add tests for new CRTC get/queue sequence ioctls [v2]
> URL : https://patchwork.freedesktop.org/series/51984/
> State : success
>
> == Summary ==
>
> = CI Bug Log - changes from IGT_4706_full -> IGTPW_2032_full =
>
> == Summary - SUCCESS ==
>
> No regressions found.
All pulled in with Dave Airlie's irc-rb.
-Daniel
>
> External URL: https://patchwork.freedesktop.org/api/1.0/series/51984/revisions/1/mbox/
>
> == Known issues ==
>
> Here are the changes found in IGTPW_2032_full that come from known issues:
>
> === IGT changes ===
>
> ==== Issues hit ====
>
> igt@kms_cursor_crc@cursor-128x128-suspend:
> shard-apl: PASS -> FAIL (fdo#103232, fdo#103191)
> shard-kbl: PASS -> INCOMPLETE (fdo#103665)
>
> igt@kms_cursor_crc@cursor-64x64-onscreen:
> shard-kbl: PASS -> FAIL (fdo#103232)
> shard-apl: PASS -> FAIL (fdo#103232)
>
> igt@kms_cursor_crc@cursor-64x64-suspend:
> shard-kbl: PASS -> FAIL (fdo#103232, fdo#103191)
>
> igt@kms_cursor_crc@cursor-size-change:
> shard-glk: PASS -> FAIL (fdo#103232) +2
>
> igt@kms_cursor_legacy@cursor-vs-flip-toggle:
> shard-snb: PASS -> INCOMPLETE (fdo#105411)
>
> igt@kms_flip@flip-vs-modeset-vs-hang:
> shard-apl: PASS -> INCOMPLETE (fdo#103927) +1
>
> igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-onoff:
> shard-apl: PASS -> FAIL (fdo#103167)
>
> igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-onoff:
> shard-glk: PASS -> FAIL (fdo#103167) +1
>
> igt@kms_frontbuffer_tracking@fbc-rgb565-draw-mmap-cpu:
> shard-snb: PASS -> DMESG-WARN (fdo#107469)
>
> igt@kms_plane_multiple@atomic-pipe-a-tiling-x:
> shard-glk: PASS -> FAIL (fdo#103166) +1
>
> igt@kms_plane_multiple@atomic-pipe-b-tiling-yf:
> shard-kbl: PASS -> FAIL (fdo#103166) +1
> shard-apl: PASS -> FAIL (fdo#103166)
>
> igt@kms_rotation_crc@primary-rotation-180:
> shard-snb: PASS -> FAIL (fdo#103925)
>
>
> ==== Possible fixes ====
>
> igt@drv_suspend@debugfs-reader:
> shard-kbl: INCOMPLETE (fdo#103665) -> PASS
>
> igt@gem_exec_reloc@basic-wc-cpu-noreloc:
> shard-snb: INCOMPLETE (fdo#105411) -> PASS
>
> igt@kms_ccs@pipe-a-crc-sprite-planes-basic:
> shard-glk: FAIL (fdo#108145) -> PASS
> shard-kbl: FAIL (fdo#108145, fdo#107725) -> PASS
>
> igt@kms_color@pipe-a-legacy-gamma:
> shard-apl: FAIL (fdo#108145, fdo#104782) -> PASS
>
> igt@kms_cursor_crc@cursor-128x128-random:
> shard-apl: FAIL (fdo#103232) -> PASS +3
>
> igt@kms_cursor_crc@cursor-128x128-sliding:
> shard-glk: FAIL (fdo#103232) -> PASS
>
> igt@kms_cursor_crc@cursor-256x256-suspend:
> shard-apl: FAIL (fdo#103232, fdo#103191) -> PASS
>
> igt@kms_cursor_crc@cursor-64x64-random:
> shard-kbl: FAIL (fdo#103232) -> PASS
>
> igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-pwrite:
> shard-apl: FAIL (fdo#103167) -> PASS +1
>
> igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-pwrite:
> shard-kbl: FAIL (fdo#103167) -> PASS
>
> igt@kms_frontbuffer_tracking@fbc-1p-rte:
> shard-apl: FAIL (fdo#103167, fdo#105682) -> PASS
>
> igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-move:
> shard-glk: FAIL (fdo#103167) -> PASS +7
>
> igt@kms_plane_alpha_blend@pipe-a-constant-alpha-min:
> shard-kbl: FAIL (fdo#108145) -> PASS
>
> igt@kms_plane_multiple@atomic-pipe-a-tiling-y:
> shard-glk: FAIL (fdo#103166) -> PASS
>
> igt@kms_plane_multiple@atomic-pipe-c-tiling-y:
> shard-apl: FAIL (fdo#103166) -> PASS
>
> igt@kms_properties@connector-properties-legacy:
> shard-kbl: DMESG-WARN (fdo#103313, fdo#105345) -> PASS
>
> igt@pm_rpm@system-suspend:
> shard-kbl: INCOMPLETE (fdo#103665, fdo#107807) -> PASS
>
>
> fdo#103166 https://bugs.freedesktop.org/show_bug.cgi?id=103166
> fdo#103167 https://bugs.freedesktop.org/show_bug.cgi?id=103167
> fdo#103191 https://bugs.freedesktop.org/show_bug.cgi?id=103191
> fdo#103232 https://bugs.freedesktop.org/show_bug.cgi?id=103232
> fdo#103313 https://bugs.freedesktop.org/show_bug.cgi?id=103313
> fdo#103665 https://bugs.freedesktop.org/show_bug.cgi?id=103665
> fdo#103925 https://bugs.freedesktop.org/show_bug.cgi?id=103925
> fdo#103927 https://bugs.freedesktop.org/show_bug.cgi?id=103927
> fdo#104782 https://bugs.freedesktop.org/show_bug.cgi?id=104782
> fdo#105345 https://bugs.freedesktop.org/show_bug.cgi?id=105345
> fdo#105411 https://bugs.freedesktop.org/show_bug.cgi?id=105411
> fdo#105682 https://bugs.freedesktop.org/show_bug.cgi?id=105682
> fdo#107469 https://bugs.freedesktop.org/show_bug.cgi?id=107469
> fdo#107725 https://bugs.freedesktop.org/show_bug.cgi?id=107725
> fdo#107807 https://bugs.freedesktop.org/show_bug.cgi?id=107807
> fdo#108145 https://bugs.freedesktop.org/show_bug.cgi?id=108145
>
>
> == Participating hosts (6 -> 5) ==
>
> Missing (1): shard-skl
>
>
> == Build changes ==
>
> * IGT: IGT_4706 -> IGTPW_2032
>
> CI_DRM_5081: f5e16acf6c85d38756c3efdb77ec6aede55df0ba @ git://anongit.freedesktop.org/gfx-ci/linux
> IGTPW_2032: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2032/
> IGT_4706: 5421c73a7db3cfaa85ab24325fe6e898cbb27fb3 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
>
> == Logs ==
>
> For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2032/shards.html
--
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 14+ messages in thread
end of thread, other threads:[~2018-11-08 15:34 UTC | newest]
Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-11-02 20:53 [igt-dev] [PATCH i-g-t 1/8] tests/kms_sequence: Add tests for new CRTC get/queue sequence ioctls [v2] Daniel Vetter
2018-11-02 20:53 ` [igt-dev] [PATCH i-g-t 2/8] tests/kms_lease: add tests for lease " Daniel Vetter
2018-11-02 20:53 ` [igt-dev] [PATCH i-g-t 3/8] tests/kms_lease: use interactive debug helpers Daniel Vetter
2018-11-02 20:53 ` [igt-dev] [PATCH i-g-t 4/8] tests/kms_lease: Adjsut to universal_planes uapi changes Daniel Vetter
2018-11-02 20:53 ` [igt-dev] [PATCH i-g-t 5/8] tests/kms_lease: improve lesssee_list subtests Daniel Vetter
2018-11-02 20:53 ` [igt-dev] [PATCH i-g-t 6/8] tests/kms_lease: improve lease_get subtest Daniel Vetter
2018-11-02 20:53 ` [igt-dev] [PATCH i-g-t 7/8] tests/kms_lease|sequence: Make sure we're master Daniel Vetter
2018-11-02 20:53 ` [igt-dev] [PATCH i-g-t 8/8] tests/kms_lease: improve the unleased_connector/crtc tests Daniel Vetter
2018-11-02 21:46 ` [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/8] tests/kms_sequence: Add tests for new CRTC get/queue sequence ioctls [v2] Patchwork
2018-11-03 2:52 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
2018-11-05 10:40 ` [igt-dev] ✓ Fi.CI.BAT: success " Patchwork
2018-11-05 10:45 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
2018-11-05 10:53 ` Patchwork
2018-11-08 15:34 ` Daniel Vetter
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).