* [igt-dev] [PATCH i-g-t 1/5] igt/kms_getfb: Check the iface exists before use
@ 2018-09-14 20:13 Chris Wilson
2018-09-14 20:13 ` [Intel-gfx] [PATCH i-g-t 2/5] igt/prime_vgem: Skip flip if no display Chris Wilson
` (5 more replies)
0 siblings, 6 replies; 12+ messages in thread
From: Chris Wilson @ 2018-09-14 20:13 UTC (permalink / raw)
To: igt-dev; +Cc: intel-gfx
If the driver doesn't support the getfb iface (e.g. because KMS has been
disabled), the ioctls will fail with ENOTSUP. This is expected, so skip
the test as nothing useful can be learnt.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
---
tests/kms_getfb.c | 40 ++++++++++++++++++++++++++++++++++++++--
1 file changed, 38 insertions(+), 2 deletions(-)
diff --git a/tests/kms_getfb.c b/tests/kms_getfb.c
index 81d796a42..71d65488f 100644
--- a/tests/kms_getfb.c
+++ b/tests/kms_getfb.c
@@ -40,6 +40,40 @@
#include "drm.h"
#include "drm_fourcc.h"
+static bool has_getfb_iface(int fd)
+{
+ struct drm_mode_fb_cmd arg = { };
+ int err;
+
+ err = 0;
+ if (drmIoctl(fd, DRM_IOCTL_MODE_GETFB, &arg))
+ err = -errno;
+ switch (err) {
+ case -ENOTTY: /* ioctl unrecognised (kernel too old) */
+ case -ENOTSUP: /* driver doesn't support KMS */
+ return false;
+ default:
+ return true;
+ }
+}
+
+static bool has_addfb2_iface(int fd)
+{
+ struct drm_mode_fb_cmd2 arg = { };
+ int err;
+
+ err = 0;
+ if (drmIoctl(fd, DRM_IOCTL_MODE_ADDFB2, &arg) == 0)
+ err = -errno;
+ switch (err) {
+ case -ENOTTY: /* ioctl unrecognised (kernel too old) */
+ case -ENOTSUP: /* driver doesn't support KMS */
+ return false;
+ default:
+ return true;
+ }
+}
+
static void get_ccs_fb(int fd, struct drm_mode_fb_cmd2 *ret)
{
struct drm_mode_fb_cmd2 add = {
@@ -54,6 +88,7 @@ static void get_ccs_fb(int fd, struct drm_mode_fb_cmd2 *ret)
};
int size;
+ igt_require(has_addfb2_iface(fd));
igt_require_intel(fd);
/* An explanation of the magic numbers can be found in kms_ccs.c. */
@@ -191,15 +226,16 @@ static void test_duplicate_handles(int fd)
do_ioctl(fd, DRM_IOCTL_MODE_RMFB, &add.fb_id);
gem_close(fd, add.handles[0]);
}
-
}
igt_main
{
int fd;
- igt_fixture
+ igt_fixture {
fd = drm_open_driver_master(DRIVER_ANY);
+ igt_require(has_getfb_iface(fd));
+ }
igt_subtest_group
test_handle_input(fd);
--
2.19.0
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply related [flat|nested] 12+ messages in thread* [Intel-gfx] [PATCH i-g-t 2/5] igt/prime_vgem: Skip flip if no display 2018-09-14 20:13 [igt-dev] [PATCH i-g-t 1/5] igt/kms_getfb: Check the iface exists before use Chris Wilson @ 2018-09-14 20:13 ` Chris Wilson 2018-10-01 8:49 ` [igt-dev] " Daniel Vetter 2018-09-14 20:13 ` [igt-dev] [PATCH i-g-t 3/5] lib: Report if kms is enabled on the display Chris Wilson ` (4 subsequent siblings) 5 siblings, 1 reply; 12+ messages in thread From: Chris Wilson @ 2018-09-14 20:13 UTC (permalink / raw) To: igt-dev; +Cc: intel-gfx We try flipping a vgem surface onto a i915 scanout. However, if there is no display we want to disable the kms interface, including the addfb ioctl. On such systems the call to kms_addfb will naturally fail and the test cannot be run. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> --- tests/prime_vgem.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/tests/prime_vgem.c b/tests/prime_vgem.c index b821fbb8c..a76d3797b 100644 --- a/tests/prime_vgem.c +++ b/tests/prime_vgem.c @@ -762,10 +762,13 @@ static void test_flip(int i915, int vgem, unsigned hang) igt_assert(handle[i]); close(fd); - do_or_die(__kms_addfb(i915, handle[i], - bo[i].width, bo[i].height, bo[i].pitch, - DRM_FORMAT_XRGB8888, I915_TILING_NONE, NULL, - LOCAL_DRM_MODE_FB_MODIFIERS, &fb_id[i])); + /* May skip if i915 has no displays */ + igt_require(__kms_addfb(i915, handle[i], + bo[i].width, bo[i].height, bo[i].pitch, + DRM_FORMAT_XRGB8888, + I915_TILING_NONE, NULL, + LOCAL_DRM_MODE_FB_MODIFIERS, + &fb_id[i]) == 0); igt_assert(fb_id[i]); } -- 2.19.0 _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply related [flat|nested] 12+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 2/5] igt/prime_vgem: Skip flip if no display 2018-09-14 20:13 ` [Intel-gfx] [PATCH i-g-t 2/5] igt/prime_vgem: Skip flip if no display Chris Wilson @ 2018-10-01 8:49 ` Daniel Vetter 2018-10-01 9:57 ` Chris Wilson 0 siblings, 1 reply; 12+ messages in thread From: Daniel Vetter @ 2018-10-01 8:49 UTC (permalink / raw) To: Chris Wilson; +Cc: igt-dev, intel-gfx On Fri, Sep 14, 2018 at 09:13:07PM +0100, Chris Wilson wrote: > We try flipping a vgem surface onto a i915 scanout. However, if there > is no display we want to disable the kms interface, including the addfb > ioctl. On such systems the call to kms_addfb will naturally fail and the > test cannot be run. > > Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> > --- > tests/prime_vgem.c | 11 +++++++---- > 1 file changed, 7 insertions(+), 4 deletions(-) > > diff --git a/tests/prime_vgem.c b/tests/prime_vgem.c > index b821fbb8c..a76d3797b 100644 > --- a/tests/prime_vgem.c > +++ b/tests/prime_vgem.c > @@ -762,10 +762,13 @@ static void test_flip(int i915, int vgem, unsigned hang) > igt_assert(handle[i]); > close(fd); > > - do_or_die(__kms_addfb(i915, handle[i], > - bo[i].width, bo[i].height, bo[i].pitch, > - DRM_FORMAT_XRGB8888, I915_TILING_NONE, NULL, > - LOCAL_DRM_MODE_FB_MODIFIERS, &fb_id[i])); > + /* May skip if i915 has no displays */ > + igt_require(__kms_addfb(i915, handle[i], > + bo[i].width, bo[i].height, bo[i].pitch, > + DRM_FORMAT_XRGB8888, > + I915_TILING_NONE, NULL, > + LOCAL_DRM_MODE_FB_MODIFIERS, > + &fb_id[i]) == 0); Hm, both here and in patch 1 I feel like this is super late to check for requirements. I think for these low-level tests a kms_require_display which checks for n_pipes > 0 && n_outputs > 0 would be good. Then we can sprinkle these early (and keep the do_or_die here), plus it won't need a comment about why we have the check since it's obvious from the name. -Daniel > igt_assert(fb_id[i]); > } > > -- > 2.19.0 > > _______________________________________________ > igt-dev mailing list > igt-dev@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/igt-dev -- 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] 12+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 2/5] igt/prime_vgem: Skip flip if no display 2018-10-01 8:49 ` [igt-dev] " Daniel Vetter @ 2018-10-01 9:57 ` Chris Wilson 0 siblings, 0 replies; 12+ messages in thread From: Chris Wilson @ 2018-10-01 9:57 UTC (permalink / raw) To: Daniel Vetter; +Cc: igt-dev, intel-gfx Quoting Daniel Vetter (2018-10-01 09:49:07) > On Fri, Sep 14, 2018 at 09:13:07PM +0100, Chris Wilson wrote: > > We try flipping a vgem surface onto a i915 scanout. However, if there > > is no display we want to disable the kms interface, including the addfb > > ioctl. On such systems the call to kms_addfb will naturally fail and the > > test cannot be run. > > > > Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> > > --- > > tests/prime_vgem.c | 11 +++++++---- > > 1 file changed, 7 insertions(+), 4 deletions(-) > > > > diff --git a/tests/prime_vgem.c b/tests/prime_vgem.c > > index b821fbb8c..a76d3797b 100644 > > --- a/tests/prime_vgem.c > > +++ b/tests/prime_vgem.c > > @@ -762,10 +762,13 @@ static void test_flip(int i915, int vgem, unsigned hang) > > igt_assert(handle[i]); > > close(fd); > > > > - do_or_die(__kms_addfb(i915, handle[i], > > - bo[i].width, bo[i].height, bo[i].pitch, > > - DRM_FORMAT_XRGB8888, I915_TILING_NONE, NULL, > > - LOCAL_DRM_MODE_FB_MODIFIERS, &fb_id[i])); > > + /* May skip if i915 has no displays */ > > + igt_require(__kms_addfb(i915, handle[i], > > + bo[i].width, bo[i].height, bo[i].pitch, > > + DRM_FORMAT_XRGB8888, > > + I915_TILING_NONE, NULL, > > + LOCAL_DRM_MODE_FB_MODIFIERS, > > + &fb_id[i]) == 0); > > Hm, both here and in patch 1 I feel like this is super late to check for > requirements. This is earlier than the current check, interesting that check will segfault under this scenario. > I think for these low-level tests a kms_require_display > which checks for n_pipes > 0 && n_outputs > 0 would be good. Then we can > sprinkle these early (and keep the do_or_die here), plus it won't need a > comment about why we have the check since it's obvious from the name. The comment was to try and reinforce that this restriction wasn't to do with vgem itself. -Chris _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 12+ messages in thread
* [igt-dev] [PATCH i-g-t 3/5] lib: Report if kms is enabled on the display 2018-09-14 20:13 [igt-dev] [PATCH i-g-t 1/5] igt/kms_getfb: Check the iface exists before use Chris Wilson 2018-09-14 20:13 ` [Intel-gfx] [PATCH i-g-t 2/5] igt/prime_vgem: Skip flip if no display Chris Wilson @ 2018-09-14 20:13 ` Chris Wilson 2018-10-01 8:46 ` [Intel-gfx] " Daniel Vetter 2018-09-14 20:13 ` [igt-dev] [PATCH i-g-t 4/5] lib/kms: Skip no-op display updates Chris Wilson ` (3 subsequent siblings) 5 siblings, 1 reply; 12+ messages in thread From: Chris Wilson @ 2018-09-14 20:13 UTC (permalink / raw) To: igt-dev; +Cc: intel-gfx Some drivers may have disabled KMS or there may simply nothing attached to the device. In either case KMS is unusable and we may prefer to skip. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> --- lib/igt_kms.c | 14 ++++++++++++-- lib/igt_kms.h | 3 ++- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/lib/igt_kms.c b/lib/igt_kms.c index 4563bfd9d..9710bcae1 100644 --- a/lib/igt_kms.c +++ b/lib/igt_kms.c @@ -1843,8 +1843,9 @@ static void igt_fill_display_format_mod(igt_display_t *display); * Initialize @display and allocate the various resources required. Use * #igt_display_fini to release the resources when they are no longer required. * + * Returns: true if the display has outputs and pipes available, false otherwise */ -void igt_display_init(igt_display_t *display, int drm_fd) +bool igt_display_init(igt_display_t *display, int drm_fd) { drmModeRes *resources; drmModePlaneRes *plane_resources; @@ -1857,7 +1858,8 @@ void igt_display_init(igt_display_t *display, int drm_fd) display->drm_fd = drm_fd; resources = drmModeGetResources(display->drm_fd); - igt_assert(resources); + if (!resources) + goto out; /* * We cache the number of pipes, that number is a physical limit of the @@ -2004,7 +2006,15 @@ void igt_display_init(igt_display_t *display, int drm_fd) /* Set reasonable default values for every object in the display. */ igt_display_reset(display); +out: LOG_UNINDENT(display); + + return display->n_pipes && display->n_outputs; +} + +void igt_display_require(igt_display_t *display, int drm_fd) +{ + igt_require(igt_display_init(display, drm_fd)); } /** diff --git a/lib/igt_kms.h b/lib/igt_kms.h index 3862efa28..73624399b 100644 --- a/lib/igt_kms.h +++ b/lib/igt_kms.h @@ -378,7 +378,8 @@ struct igt_display { int format_mod_count; }; -void igt_display_init(igt_display_t *display, int drm_fd); +bool igt_display_init(igt_display_t *display, int drm_fd); +void igt_display_require(igt_display_t *display, int drm_fd); void igt_display_fini(igt_display_t *display); void igt_display_reset(igt_display_t *display); int igt_display_commit2(igt_display_t *display, enum igt_commit_style s); -- 2.19.0 _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply related [flat|nested] 12+ messages in thread
* Re: [Intel-gfx] [PATCH i-g-t 3/5] lib: Report if kms is enabled on the display 2018-09-14 20:13 ` [igt-dev] [PATCH i-g-t 3/5] lib: Report if kms is enabled on the display Chris Wilson @ 2018-10-01 8:46 ` Daniel Vetter 0 siblings, 0 replies; 12+ messages in thread From: Daniel Vetter @ 2018-10-01 8:46 UTC (permalink / raw) To: Chris Wilson; +Cc: igt-dev, intel-gfx On Fri, Sep 14, 2018 at 09:13:08PM +0100, Chris Wilson wrote: > Some drivers may have disabled KMS or there may simply nothing attached > to the device. In either case KMS is unusable and we may prefer to skip. > > Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> > --- > lib/igt_kms.c | 14 ++++++++++++-- > lib/igt_kms.h | 3 ++- > 2 files changed, 14 insertions(+), 3 deletions(-) > > diff --git a/lib/igt_kms.c b/lib/igt_kms.c > index 4563bfd9d..9710bcae1 100644 > --- a/lib/igt_kms.c > +++ b/lib/igt_kms.c > @@ -1843,8 +1843,9 @@ static void igt_fill_display_format_mod(igt_display_t *display); > * Initialize @display and allocate the various resources required. Use > * #igt_display_fini to release the resources when they are no longer required. > * > + * Returns: true if the display has outputs and pipes available, false otherwise > */ > -void igt_display_init(igt_display_t *display, int drm_fd) > +bool igt_display_init(igt_display_t *display, int drm_fd) > { > drmModeRes *resources; > drmModePlaneRes *plane_resources; > @@ -1857,7 +1858,8 @@ void igt_display_init(igt_display_t *display, int drm_fd) > display->drm_fd = drm_fd; > > resources = drmModeGetResources(display->drm_fd); > - igt_assert(resources); > + if (!resources) > + goto out; > > /* > * We cache the number of pipes, that number is a physical limit of the > @@ -2004,7 +2006,15 @@ void igt_display_init(igt_display_t *display, int drm_fd) > /* Set reasonable default values for every object in the display. */ > igt_display_reset(display); > > +out: > LOG_UNINDENT(display); > + > + return display->n_pipes && display->n_outputs; > +} > + Do we have any genuine cases where we want to init the display helpers and not require pipes/outputs? I'm kinda leaning towards keeping the helper api as-is, and putting the igt_require into igt_display_init(). We can always have an __igt_display_init or stuff a bunch of subtests into an igt_subtest_group. -Daniel > +void igt_display_require(igt_display_t *display, int drm_fd) > +{ > + igt_require(igt_display_init(display, drm_fd)); > } > > /** > diff --git a/lib/igt_kms.h b/lib/igt_kms.h > index 3862efa28..73624399b 100644 > --- a/lib/igt_kms.h > +++ b/lib/igt_kms.h > @@ -378,7 +378,8 @@ struct igt_display { > int format_mod_count; > }; > > -void igt_display_init(igt_display_t *display, int drm_fd); > +bool igt_display_init(igt_display_t *display, int drm_fd); > +void igt_display_require(igt_display_t *display, int drm_fd); > void igt_display_fini(igt_display_t *display); > void igt_display_reset(igt_display_t *display); > int igt_display_commit2(igt_display_t *display, enum igt_commit_style s); > -- > 2.19.0 > > _______________________________________________ > Intel-gfx mailing list > Intel-gfx@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/intel-gfx -- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 12+ messages in thread
* [igt-dev] [PATCH i-g-t 4/5] lib/kms: Skip no-op display updates 2018-09-14 20:13 [igt-dev] [PATCH i-g-t 1/5] igt/kms_getfb: Check the iface exists before use Chris Wilson 2018-09-14 20:13 ` [Intel-gfx] [PATCH i-g-t 2/5] igt/prime_vgem: Skip flip if no display Chris Wilson 2018-09-14 20:13 ` [igt-dev] [PATCH i-g-t 3/5] lib: Report if kms is enabled on the display Chris Wilson @ 2018-09-14 20:13 ` Chris Wilson 2018-10-01 8:47 ` Daniel Vetter 2018-09-14 20:13 ` [igt-dev] [PATCH i-g-t 5/5] igt: Require a display (KMS enabled) for KMS tests Chris Wilson ` (2 subsequent siblings) 5 siblings, 1 reply; 12+ messages in thread From: Chris Wilson @ 2018-09-14 20:13 UTC (permalink / raw) To: igt-dev; +Cc: intel-gfx If the display is disabled (e.g. the driver has disabled the KMS interface) there is nothing to do so avoid failing. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> --- lib/igt_kms.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/lib/igt_kms.c b/lib/igt_kms.c index 9710bcae1..dedc81344 100644 --- a/lib/igt_kms.c +++ b/lib/igt_kms.c @@ -3271,6 +3271,9 @@ static int do_display_commit(igt_display_t *display, enum pipe pipe; LOG_INDENT(display, "commit"); + if (!display->n_pipes || !display->n_outputs) + return 0; /* nothing to do */ + igt_display_refresh(display); if (s == COMMIT_ATOMIC) { @@ -3321,6 +3324,9 @@ int igt_display_try_commit_atomic(igt_display_t *display, uint32_t flags, void * { int ret; + if (!display->n_pipes || !display->n_outputs) + return 0; /* nothing to do */ + LOG_INDENT(display, "commit"); igt_display_refresh(display); -- 2.19.0 _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply related [flat|nested] 12+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 4/5] lib/kms: Skip no-op display updates 2018-09-14 20:13 ` [igt-dev] [PATCH i-g-t 4/5] lib/kms: Skip no-op display updates Chris Wilson @ 2018-10-01 8:47 ` Daniel Vetter 0 siblings, 0 replies; 12+ messages in thread From: Daniel Vetter @ 2018-10-01 8:47 UTC (permalink / raw) To: Chris Wilson; +Cc: igt-dev, intel-gfx On Fri, Sep 14, 2018 at 09:13:09PM +0100, Chris Wilson wrote: > If the display is disabled (e.g. the driver has disabled the KMS > interface) there is nothing to do so avoid failing. > > Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Silently doing nothing feels funny, I think putting the igt_require into igt_display_init makes more sense with this one in mind. Also avoids the churn in patch 5. -Daniel > --- > lib/igt_kms.c | 6 ++++++ > 1 file changed, 6 insertions(+) > > diff --git a/lib/igt_kms.c b/lib/igt_kms.c > index 9710bcae1..dedc81344 100644 > --- a/lib/igt_kms.c > +++ b/lib/igt_kms.c > @@ -3271,6 +3271,9 @@ static int do_display_commit(igt_display_t *display, > enum pipe pipe; > LOG_INDENT(display, "commit"); > > + if (!display->n_pipes || !display->n_outputs) > + return 0; /* nothing to do */ > + > igt_display_refresh(display); > > if (s == COMMIT_ATOMIC) { > @@ -3321,6 +3324,9 @@ int igt_display_try_commit_atomic(igt_display_t *display, uint32_t flags, void * > { > int ret; > > + if (!display->n_pipes || !display->n_outputs) > + return 0; /* nothing to do */ > + > LOG_INDENT(display, "commit"); > > igt_display_refresh(display); > -- > 2.19.0 > > _______________________________________________ > igt-dev mailing list > igt-dev@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/igt-dev -- 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] 12+ messages in thread
* [igt-dev] [PATCH i-g-t 5/5] igt: Require a display (KMS enabled) for KMS tests 2018-09-14 20:13 [igt-dev] [PATCH i-g-t 1/5] igt/kms_getfb: Check the iface exists before use Chris Wilson ` (2 preceding siblings ...) 2018-09-14 20:13 ` [igt-dev] [PATCH i-g-t 4/5] lib/kms: Skip no-op display updates Chris Wilson @ 2018-09-14 20:13 ` Chris Wilson 2018-09-14 20:48 ` [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/5] igt/kms_getfb: Check the iface exists before use Patchwork 2018-09-15 1:16 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork 5 siblings, 0 replies; 12+ messages in thread From: Chris Wilson @ 2018-09-14 20:13 UTC (permalink / raw) To: igt-dev; +Cc: intel-gfx Simple rule of thumb, if a kms_* test calls igt_display_init() in its global fixture, skip the entire test if the driver has disabled KMS. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> --- tests/drm_read.c | 2 +- tests/kms_atomic.c | 3 +-- tests/kms_atomic_interruptible.c | 4 +--- tests/kms_atomic_transition.c | 3 +-- tests/kms_available_modes_crc.c | 2 +- tests/kms_busy.c | 3 +-- tests/kms_ccs.c | 2 +- tests/kms_chamelium.c | 2 +- tests/kms_chv_cursor_fail.c | 2 +- tests/kms_color.c | 2 +- tests/kms_concurrent.c | 3 +-- tests/kms_crtc_background_color.c | 2 +- tests/kms_cursor_crc.c | 2 +- tests/kms_cursor_legacy.c | 3 +-- tests/kms_fence_pin_leak.c | 2 +- tests/kms_flip_event_leak.c | 2 +- tests/kms_flip_tiling.c | 2 +- tests/kms_frontbuffer_tracking.c | 2 +- tests/kms_invalid_dotclock.c | 2 +- tests/kms_legacy_colorkey.c | 2 +- tests/kms_mmap_write_crc.c | 2 +- tests/kms_panel_fitting.c | 2 +- tests/kms_pipe_b_c_ivb.c | 2 +- tests/kms_pipe_crc_basic.c | 2 +- tests/kms_plane.c | 2 +- tests/kms_plane_lowres.c | 2 +- tests/kms_plane_multiple.c | 3 +-- tests/kms_plane_scaling.c | 2 +- tests/kms_properties.c | 2 +- tests/kms_psr.c | 2 +- tests/kms_pwrite_crc.c | 2 +- tests/kms_rmfb.c | 2 +- tests/kms_rotation_crc.c | 2 +- tests/kms_universal_plane.c | 2 +- tests/kms_vblank.c | 2 +- 35 files changed, 35 insertions(+), 43 deletions(-) diff --git a/tests/drm_read.c b/tests/drm_read.c index b6aab7312..309f389f6 100644 --- a/tests/drm_read.c +++ b/tests/drm_read.c @@ -182,7 +182,7 @@ igt_main fd = drm_open_driver_master(DRIVER_ANY); kmstest_set_vt_graphics_mode(); - igt_display_init(&display, fd); + igt_display_require(&display, fd); igt_display_require_output(&display); for_each_pipe_with_valid_output(&display, pipe, output) { diff --git a/tests/kms_atomic.c b/tests/kms_atomic.c index ac02baf01..3aad2d9aa 100644 --- a/tests/kms_atomic.c +++ b/tests/kms_atomic.c @@ -871,8 +871,7 @@ igt_main kmstest_set_vt_graphics_mode(); - igt_display_init(&display, display.drm_fd); - + igt_display_require(&display, display.drm_fd); igt_require(display.is_atomic); igt_display_require_output(&display); diff --git a/tests/kms_atomic_interruptible.c b/tests/kms_atomic_interruptible.c index 64a005597..8e9d4cb69 100644 --- a/tests/kms_atomic_interruptible.c +++ b/tests/kms_atomic_interruptible.c @@ -279,10 +279,8 @@ igt_main kmstest_set_vt_graphics_mode(); - igt_display_init(&display, display.drm_fd); - + igt_display_require(&display, display.drm_fd); igt_require(display.is_atomic); - igt_display_require_output(&display); igt_require_sw_sync(); diff --git a/tests/kms_atomic_transition.c b/tests/kms_atomic_transition.c index 2fbd94bd2..12bafe87e 100644 --- a/tests/kms_atomic_transition.c +++ b/tests/kms_atomic_transition.c @@ -858,8 +858,7 @@ igt_main kmstest_set_vt_graphics_mode(); - igt_display_init(&display, display.drm_fd); - + igt_display_require(&display, display.drm_fd); igt_require(display.is_atomic); igt_display_require_output(&display); diff --git a/tests/kms_available_modes_crc.c b/tests/kms_available_modes_crc.c index b67b4f838..49a40c02d 100644 --- a/tests/kms_available_modes_crc.c +++ b/tests/kms_available_modes_crc.c @@ -494,7 +494,7 @@ igt_main igt_fixture { data.gfx_fd = drm_open_driver_master(DRIVER_INTEL); kmstest_set_vt_graphics_mode(); - igt_display_init(&data.display, data.gfx_fd); + igt_display_require(&data.display, data.gfx_fd); igt_require_pipe_crc(data.gfx_fd); } diff --git a/tests/kms_busy.c b/tests/kms_busy.c index abf39828b..d821ec711 100644 --- a/tests/kms_busy.c +++ b/tests/kms_busy.c @@ -323,8 +323,7 @@ igt_main gem_require_mmap_wc(fd); kmstest_set_vt_graphics_mode(); - igt_display_init(&display, fd); - igt_require(display.n_pipes > 0); + igt_display_require(&display, fd); } /* XXX Extend to cover atomic rendering tests to all planes + legacy */ diff --git a/tests/kms_ccs.c b/tests/kms_ccs.c index e1ee58801..ecad7aa3d 100644 --- a/tests/kms_ccs.c +++ b/tests/kms_ccs.c @@ -525,7 +525,7 @@ igt_main kmstest_set_vt_graphics_mode(); igt_require_pipe_crc(data.drm_fd); - igt_display_init(&data.display, data.drm_fd); + igt_display_require(&data.display, data.drm_fd); } for_each_pipe_static(pipe) { diff --git a/tests/kms_chamelium.c b/tests/kms_chamelium.c index 2bc34d077..cf7e3c9aa 100644 --- a/tests/kms_chamelium.c +++ b/tests/kms_chamelium.c @@ -752,7 +752,7 @@ igt_main /* So fbcon doesn't try to reprobe things itself */ kmstest_set_vt_graphics_mode(); - igt_display_init(&data.display, data.drm_fd); + igt_display_require(&data.display, data.drm_fd); igt_require(data.display.is_atomic); } diff --git a/tests/kms_chv_cursor_fail.c b/tests/kms_chv_cursor_fail.c index 7138e549a..10c489743 100644 --- a/tests/kms_chv_cursor_fail.c +++ b/tests/kms_chv_cursor_fail.c @@ -329,7 +329,7 @@ int main(int argc, char **argv) igt_require_pipe_crc(data.drm_fd); - igt_display_init(&data.display, data.drm_fd); + igt_display_require(&data.display, data.drm_fd); } for_each_pipe_static(data.pipe) { diff --git a/tests/kms_color.c b/tests/kms_color.c index bb106dd00..913c70ca8 100644 --- a/tests/kms_color.c +++ b/tests/kms_color.c @@ -1163,7 +1163,7 @@ igt_main data.devid = intel_get_drm_devid(data.drm_fd); kmstest_set_vt_graphics_mode(); - igt_display_init(&data.display, data.drm_fd); + igt_display_require(&data.display, data.drm_fd); } for_each_pipe_static(pipe) diff --git a/tests/kms_concurrent.c b/tests/kms_concurrent.c index 283acf8c8..c17b1fe6f 100644 --- a/tests/kms_concurrent.c +++ b/tests/kms_concurrent.c @@ -407,8 +407,7 @@ int main(int argc, char *argv[]) igt_fixture { data.drm_fd = drm_open_driver_master(DRIVER_ANY); kmstest_set_vt_graphics_mode(); - igt_display_init(&data.display, data.drm_fd); - igt_require(data.display.n_pipes > 0); + igt_display_require(&data.display, data.drm_fd); igt_require(data.display.is_atomic); } diff --git a/tests/kms_crtc_background_color.c b/tests/kms_crtc_background_color.c index 6407e19ba..3df3401f2 100644 --- a/tests/kms_crtc_background_color.c +++ b/tests/kms_crtc_background_color.c @@ -180,7 +180,7 @@ igt_simple_main data.gfx_fd = drm_open_driver(DRIVER_INTEL); igt_require_pipe_crc(data.gfx_fd); - igt_display_init(&data.display, data.gfx_fd); + igt_display_require(&data.display, data.gfx_fd); test_crtc_background(&data); diff --git a/tests/kms_cursor_crc.c b/tests/kms_cursor_crc.c index 99946b1ae..1514e7f2e 100644 --- a/tests/kms_cursor_crc.c +++ b/tests/kms_cursor_crc.c @@ -675,7 +675,7 @@ igt_main igt_require_pipe_crc(data.drm_fd); - igt_display_init(&data.display, data.drm_fd); + igt_display_require(&data.display, data.drm_fd); } data.cursor_max_w = cursor_width; diff --git a/tests/kms_cursor_legacy.c b/tests/kms_cursor_legacy.c index 82ceebcb0..79df79a38 100644 --- a/tests/kms_cursor_legacy.c +++ b/tests/kms_cursor_legacy.c @@ -1365,8 +1365,7 @@ igt_main display.drm_fd = drm_open_driver_master(DRIVER_ANY); kmstest_set_vt_graphics_mode(); - igt_display_init(&display, display.drm_fd); - igt_require(display.n_pipes > 0); + igt_display_require(&display, display.drm_fd); } igt_subtest_group { diff --git a/tests/kms_fence_pin_leak.c b/tests/kms_fence_pin_leak.c index 8bbd5563d..62c52b627 100644 --- a/tests/kms_fence_pin_leak.c +++ b/tests/kms_fence_pin_leak.c @@ -210,7 +210,7 @@ igt_simple_main igt_assert(data.bufmgr); drm_intel_bufmgr_gem_enable_reuse(data.bufmgr); - igt_display_init(&data.display, data.drm_fd); + igt_display_require(&data.display, data.drm_fd); ctx = drm_intel_gem_context_create(data.bufmgr); igt_require(ctx); diff --git a/tests/kms_flip_event_leak.c b/tests/kms_flip_event_leak.c index f1a8abd81..50f880ad3 100644 --- a/tests/kms_flip_event_leak.c +++ b/tests/kms_flip_event_leak.c @@ -103,7 +103,7 @@ igt_simple_main data.drm_fd = drm_open_driver_master(DRIVER_ANY); kmstest_set_vt_graphics_mode(); - igt_display_init(&data.display, data.drm_fd); + igt_display_require(&data.display, data.drm_fd); for_each_pipe_with_valid_output(&data.display, pipe, output) { test(&data, pipe, output); diff --git a/tests/kms_flip_tiling.c b/tests/kms_flip_tiling.c index beeb111be..d1e6687f7 100644 --- a/tests/kms_flip_tiling.c +++ b/tests/kms_flip_tiling.c @@ -151,7 +151,7 @@ igt_main kmstest_set_vt_graphics_mode(); igt_require_pipe_crc(data.drm_fd); - igt_display_init(&data.display, data.drm_fd); + igt_display_require(&data.display, data.drm_fd); } /* diff --git a/tests/kms_frontbuffer_tracking.c b/tests/kms_frontbuffer_tracking.c index b33f3128a..b39da2546 100644 --- a/tests/kms_frontbuffer_tracking.c +++ b/tests/kms_frontbuffer_tracking.c @@ -1284,7 +1284,7 @@ static void setup_drm(void) drm.debugfs = igt_debugfs_dir(drm.fd); kmstest_set_vt_graphics_mode(); - igt_display_init(&drm.display, drm.fd); + igt_display_require(&drm.display, drm.fd); drm.bufmgr = drm_intel_bufmgr_gem_init(drm.fd, 4096); igt_assert(drm.bufmgr); diff --git a/tests/kms_invalid_dotclock.c b/tests/kms_invalid_dotclock.c index e6e72f528..e7a80d884 100644 --- a/tests/kms_invalid_dotclock.c +++ b/tests/kms_invalid_dotclock.c @@ -133,7 +133,7 @@ igt_simple_main igt_enable_connectors(); kmstest_set_vt_graphics_mode(); - igt_display_init(&data.display, data.drm_fd); + igt_display_require(&data.display, data.drm_fd); data.res = drmModeGetResources(data.drm_fd); kmstest_unset_all_crtcs(data.drm_fd, data.res); diff --git a/tests/kms_legacy_colorkey.c b/tests/kms_legacy_colorkey.c index 150520ce6..961aa0a31 100644 --- a/tests/kms_legacy_colorkey.c +++ b/tests/kms_legacy_colorkey.c @@ -51,7 +51,7 @@ igt_simple_main kmstest_set_vt_graphics_mode(); - igt_display_init(&display, drm_fd); + igt_display_require(&display, drm_fd); for_each_pipe(&display, p) { for_each_plane_on_pipe(&display, p, plane) { diff --git a/tests/kms_mmap_write_crc.c b/tests/kms_mmap_write_crc.c index 279d0f67d..93c96ef4d 100644 --- a/tests/kms_mmap_write_crc.c +++ b/tests/kms_mmap_write_crc.c @@ -281,7 +281,7 @@ int main(int argc, char **argv) igt_require_pipe_crc(data.drm_fd); - igt_display_init(&data.display, data.drm_fd); + igt_display_require(&data.display, data.drm_fd); fork_cpuhog_helper(); } diff --git a/tests/kms_panel_fitting.c b/tests/kms_panel_fitting.c index 7df8104ed..491e429f4 100644 --- a/tests/kms_panel_fitting.c +++ b/tests/kms_panel_fitting.c @@ -241,7 +241,7 @@ igt_main igt_skip_on_simulation(); data.drm_fd = drm_open_driver(DRIVER_ANY); - igt_display_init(&data.display, data.drm_fd); + igt_display_require(&data.display, data.drm_fd); igt_display_require_output(&data.display); } diff --git a/tests/kms_pipe_b_c_ivb.c b/tests/kms_pipe_b_c_ivb.c index 64086915e..fe2250cee 100644 --- a/tests/kms_pipe_b_c_ivb.c +++ b/tests/kms_pipe_b_c_ivb.c @@ -263,7 +263,7 @@ igt_main igt_skip_on(!IS_IVYBRIDGE(devid)); kmstest_set_vt_graphics_mode(); - igt_display_init(&data.display, data.drm_fd); + igt_display_require(&data.display, data.drm_fd); } igt_subtest("pipe-B-dpms-off-modeset-pipe-C") diff --git a/tests/kms_pipe_crc_basic.c b/tests/kms_pipe_crc_basic.c index 852f16972..9c9078e9b 100644 --- a/tests/kms_pipe_crc_basic.c +++ b/tests/kms_pipe_crc_basic.c @@ -187,7 +187,7 @@ igt_main igt_require_pipe_crc(data.drm_fd); - igt_display_init(&data.display, data.drm_fd); + igt_display_require(&data.display, data.drm_fd); data.debugfs = igt_debugfs_dir(data.drm_fd); } diff --git a/tests/kms_plane.c b/tests/kms_plane.c index 3999dde8f..5a0bc05b0 100644 --- a/tests/kms_plane.c +++ b/tests/kms_plane.c @@ -585,7 +585,7 @@ igt_main kmstest_set_vt_graphics_mode(); igt_require_pipe_crc(data.drm_fd); - igt_display_init(&data.display, data.drm_fd); + igt_display_require(&data.display, data.drm_fd); } for_each_pipe_static(pipe) diff --git a/tests/kms_plane_lowres.c b/tests/kms_plane_lowres.c index 5e83ef563..0824ef8fe 100644 --- a/tests/kms_plane_lowres.c +++ b/tests/kms_plane_lowres.c @@ -301,7 +301,7 @@ igt_main kmstest_set_vt_graphics_mode(); igt_require_pipe_crc(data.drm_fd); - igt_display_init(&data.display, data.drm_fd); + igt_display_require(&data.display, data.drm_fd); igt_require(data.display.is_atomic); } diff --git a/tests/kms_plane_multiple.c b/tests/kms_plane_multiple.c index a53be0014..721afe594 100644 --- a/tests/kms_plane_multiple.c +++ b/tests/kms_plane_multiple.c @@ -393,9 +393,8 @@ int main(int argc, char *argv[]) data.drm_fd = drm_open_driver_master(DRIVER_INTEL); kmstest_set_vt_graphics_mode(); igt_require_pipe_crc(data.drm_fd); - igt_display_init(&data.display, data.drm_fd); + igt_display_require(&data.display, data.drm_fd); igt_require(data.display.is_atomic); - igt_require(data.display.n_pipes > 0); } for_each_pipe_static(pipe) { diff --git a/tests/kms_plane_scaling.c b/tests/kms_plane_scaling.c index 7c64ed14b..773162ec7 100644 --- a/tests/kms_plane_scaling.c +++ b/tests/kms_plane_scaling.c @@ -544,7 +544,7 @@ igt_main igt_fixture { data.drm_fd = drm_open_driver_master(DRIVER_INTEL); igt_require_pipe_crc(data.drm_fd); - igt_display_init(&data.display, data.drm_fd); + igt_display_require(&data.display, data.drm_fd); data.devid = intel_get_drm_devid(data.drm_fd); igt_require(data.display.is_atomic); } diff --git a/tests/kms_properties.c b/tests/kms_properties.c index 68c0518fc..9548cf440 100644 --- a/tests/kms_properties.c +++ b/tests/kms_properties.c @@ -678,7 +678,7 @@ igt_main kmstest_set_vt_graphics_mode(); - igt_display_init(&display, display.drm_fd); + igt_display_require(&display, display.drm_fd); } igt_subtest("plane-properties-legacy") diff --git a/tests/kms_psr.c b/tests/kms_psr.c index fcc04770c..ea0c46261 100644 --- a/tests/kms_psr.c +++ b/tests/kms_psr.c @@ -111,7 +111,7 @@ static void setup_output(data_t *data) static void display_init(data_t *data) { - igt_display_init(&data->display, data->drm_fd); + igt_display_require(&data->display, data->drm_fd); setup_output(data); } diff --git a/tests/kms_pwrite_crc.c b/tests/kms_pwrite_crc.c index ee895db63..ffd72e4ab 100644 --- a/tests/kms_pwrite_crc.c +++ b/tests/kms_pwrite_crc.c @@ -185,7 +185,7 @@ igt_simple_main igt_require_pipe_crc(data.drm_fd); - igt_display_init(&data.display, data.drm_fd); + igt_display_require(&data.display, data.drm_fd); } run_test(&data); diff --git a/tests/kms_rmfb.c b/tests/kms_rmfb.c index f3461cc91..b1c81cb80 100644 --- a/tests/kms_rmfb.c +++ b/tests/kms_rmfb.c @@ -146,7 +146,7 @@ igt_main kmstest_set_vt_graphics_mode(); - igt_display_init(&data.display, data.drm_fd); + igt_display_require(&data.display, data.drm_fd); igt_display_require_output(&data.display); } diff --git a/tests/kms_rotation_crc.c b/tests/kms_rotation_crc.c index f73c6a399..c233ef651 100644 --- a/tests/kms_rotation_crc.c +++ b/tests/kms_rotation_crc.c @@ -532,7 +532,7 @@ igt_main igt_require_pipe_crc(data.gfx_fd); - igt_display_init(&data.display, data.gfx_fd); + igt_display_require(&data.display, data.gfx_fd); } for (subtest = subtests; subtest->rot; subtest++) { diff --git a/tests/kms_universal_plane.c b/tests/kms_universal_plane.c index 58f329e68..cb5070b1d 100644 --- a/tests/kms_universal_plane.c +++ b/tests/kms_universal_plane.c @@ -798,7 +798,7 @@ igt_main kmstest_set_vt_graphics_mode(); igt_require_pipe_crc(data.drm_fd); - igt_display_init(&data.display, data.drm_fd); + igt_display_require(&data.display, data.drm_fd); } for_each_pipe_static(pipe) { diff --git a/tests/kms_vblank.c b/tests/kms_vblank.c index 1c0771c6f..dafadb58f 100644 --- a/tests/kms_vblank.c +++ b/tests/kms_vblank.c @@ -507,7 +507,7 @@ igt_main igt_fixture { fd = drm_open_driver_master(DRIVER_ANY); kmstest_set_vt_graphics_mode(); - igt_display_init(&data.display, fd); + igt_display_require(&data.display, fd); igt_display_require_output(&data.display); } -- 2.19.0 _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply related [flat|nested] 12+ messages in thread
* [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/5] igt/kms_getfb: Check the iface exists before use 2018-09-14 20:13 [igt-dev] [PATCH i-g-t 1/5] igt/kms_getfb: Check the iface exists before use Chris Wilson ` (3 preceding siblings ...) 2018-09-14 20:13 ` [igt-dev] [PATCH i-g-t 5/5] igt: Require a display (KMS enabled) for KMS tests Chris Wilson @ 2018-09-14 20:48 ` Patchwork 2018-09-15 1:16 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork 5 siblings, 0 replies; 12+ messages in thread From: Patchwork @ 2018-09-14 20:48 UTC (permalink / raw) To: Chris Wilson; +Cc: igt-dev == Series Details == Series: series starting with [i-g-t,1/5] igt/kms_getfb: Check the iface exists before use URL : https://patchwork.freedesktop.org/series/49738/ State : success == Summary == = CI Bug Log - changes from CI_DRM_4827 -> IGTPW_1846 = == Summary - WARNING == Minor unknown changes coming with IGTPW_1846 need to be verified manually. If you think the reported changes have nothing to do with the changes introduced in IGTPW_1846, 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/49738/revisions/1/mbox/ == Possible new issues == Here are the unknown changes that may have been introduced in IGTPW_1846: === IGT changes === ==== Warnings ==== igt@kms_pipe_crc_basic@bad-source: fi-kbl-8809g: PASS -> SKIP == Known issues == Here are the changes found in IGTPW_1846 that come from known issues: === IGT changes === ==== Issues hit ==== igt@drv_module_reload@basic-reload: fi-glk-j4005: PASS -> DMESG-WARN (fdo#106725, fdo#106248) igt@gem_exec_suspend@basic-s3: fi-icl-u: PASS -> INCOMPLETE (fdo#107901) igt@kms_flip@basic-flip-vs-wf_vblank: fi-glk-j4005: PASS -> DMESG-WARN (fdo#106238) +1 igt@kms_pipe_crc_basic@nonblocking-crc-pipe-a: fi-byt-clapper: PASS -> FAIL (fdo#107362) igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a: fi-byt-clapper: PASS -> FAIL (fdo#107362, fdo#103191) igt@pm_rpm@module-reload: fi-glk-j4005: PASS -> DMESG-FAIL (fdo#104767) ==== Possible fixes ==== igt@gem_exec_suspend@basic-s3: fi-blb-e6850: INCOMPLETE (fdo#107718) -> PASS igt@kms_pipe_crc_basic@read-crc-pipe-a-frame-sequence: fi-byt-clapper: FAIL (fdo#107362, fdo#103191) -> PASS fdo#103191 https://bugs.freedesktop.org/show_bug.cgi?id=103191 fdo#104767 https://bugs.freedesktop.org/show_bug.cgi?id=104767 fdo#106238 https://bugs.freedesktop.org/show_bug.cgi?id=106238 fdo#106248 https://bugs.freedesktop.org/show_bug.cgi?id=106248 fdo#106725 https://bugs.freedesktop.org/show_bug.cgi?id=106725 fdo#107362 https://bugs.freedesktop.org/show_bug.cgi?id=107362 fdo#107718 https://bugs.freedesktop.org/show_bug.cgi?id=107718 fdo#107901 https://bugs.freedesktop.org/show_bug.cgi?id=107901 == Participating hosts (48 -> 44) == Missing (4): fi-ilk-m540 fi-byt-squawks fi-bsw-cyan fi-hsw-4200u == Build changes == * IGT: IGT_4642 -> IGTPW_1846 CI_DRM_4827: 8b1968f143e8bf65acf0ea6f7ce9120259043521 @ git://anongit.freedesktop.org/gfx-ci/linux IGTPW_1846: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1846/ IGT_4642: 7b3ea4efb9713cd67e17e33202fa9d0681a284d1 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1846/issues.html _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 12+ messages in thread
* [igt-dev] ✗ Fi.CI.IGT: failure for series starting with [i-g-t,1/5] igt/kms_getfb: Check the iface exists before use 2018-09-14 20:13 [igt-dev] [PATCH i-g-t 1/5] igt/kms_getfb: Check the iface exists before use Chris Wilson ` (4 preceding siblings ...) 2018-09-14 20:48 ` [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/5] igt/kms_getfb: Check the iface exists before use Patchwork @ 2018-09-15 1:16 ` Patchwork 5 siblings, 0 replies; 12+ messages in thread From: Patchwork @ 2018-09-15 1:16 UTC (permalink / raw) To: Chris Wilson; +Cc: igt-dev == Series Details == Series: series starting with [i-g-t,1/5] igt/kms_getfb: Check the iface exists before use URL : https://patchwork.freedesktop.org/series/49738/ State : failure == Summary == = CI Bug Log - changes from IGT_4642_full -> IGTPW_1846_full = == Summary - FAILURE == Serious unknown changes coming with IGTPW_1846_full absolutely need to be verified manually. If you think the reported changes have nothing to do with the changes introduced in IGTPW_1846_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/49738/revisions/1/mbox/ == Possible new issues == Here are the unknown changes that may have been introduced in IGTPW_1846_full: === IGT changes === ==== Possible regressions ==== igt@kms_busy@extended-modeset-hang-newfb-render-c: shard-glk: PASS -> DMESG-WARN +11 igt@kms_busy@extended-modeset-hang-newfb-with-reset-render-b: shard-kbl: PASS -> DMESG-WARN +7 shard-snb: NOTRUN -> DMESG-WARN igt@kms_busy@extended-modeset-hang-newfb-with-reset-render-c: shard-apl: PASS -> DMESG-WARN +11 igt@kms_busy@extended-pageflip-modeset-hang-oldfb-render-b: shard-hsw: PASS -> DMESG-WARN +8 shard-snb: PASS -> DMESG-WARN +4 ==== Warnings ==== igt@perf_pmu@rc6: shard-kbl: PASS -> SKIP == Known issues == Here are the changes found in IGTPW_1846_full that come from known issues: === IGT changes === ==== Issues hit ==== igt@drv_suspend@shrink: shard-glk: PASS -> INCOMPLETE (k.org#198133, fdo#103359, fdo#106886) igt@gem_exec_await@wide-contexts: shard-apl: PASS -> FAIL (fdo#106680) igt@kms_cursor_legacy@2x-nonblocking-modeset-vs-cursor-atomic: shard-glk: PASS -> FAIL (fdo#106509, fdo#105454) igt@kms_cursor_legacy@cursora-vs-flipb-atomic-transitions: shard-glk: PASS -> DMESG-WARN (fdo#105763, fdo#106538) igt@kms_draw_crc@draw-method-xrgb8888-render-ytiled: shard-glk: PASS -> FAIL (fdo#103232) igt@kms_plane@pixel-format-pipe-a-planes: shard-snb: PASS -> FAIL (fdo#107749, fdo#103166) igt@kms_vblank@pipe-c-ts-continuation-suspend: shard-kbl: PASS -> INCOMPLETE (fdo#103665) igt@perf@short-reads: shard-kbl: PASS -> FAIL (fdo#103183) ==== Possible fixes ==== igt@gem_ctx_isolation@rcs0-s3: shard-apl: INCOMPLETE (fdo#103927) -> PASS igt@gem_exec_schedule@preempt-hang-bsd1: shard-snb: INCOMPLETE (fdo#105411) -> SKIP igt@kms_available_modes_crc@available_mode_test_crc: shard-snb: FAIL (fdo#106641) -> PASS igt@kms_flip@2x-blocking-absolute-wf_vblank: shard-glk: INCOMPLETE (k.org#198133, fdo#103359) -> PASS igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-draw-mmap-cpu: shard-glk: FAIL (fdo#103167) -> PASS +2 igt@kms_plane_multiple@atomic-pipe-a-tiling-x: shard-snb: FAIL (fdo#103166) -> PASS igt@kms_vblank@pipe-b-wait-forked-busy-hang: shard-glk: DMESG-WARN (fdo#105763, fdo#106538) -> PASS +1 fdo#103166 https://bugs.freedesktop.org/show_bug.cgi?id=103166 fdo#103167 https://bugs.freedesktop.org/show_bug.cgi?id=103167 fdo#103183 https://bugs.freedesktop.org/show_bug.cgi?id=103183 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#103927 https://bugs.freedesktop.org/show_bug.cgi?id=103927 fdo#105411 https://bugs.freedesktop.org/show_bug.cgi?id=105411 fdo#105454 https://bugs.freedesktop.org/show_bug.cgi?id=105454 fdo#105763 https://bugs.freedesktop.org/show_bug.cgi?id=105763 fdo#106509 https://bugs.freedesktop.org/show_bug.cgi?id=106509 fdo#106538 https://bugs.freedesktop.org/show_bug.cgi?id=106538 fdo#106641 https://bugs.freedesktop.org/show_bug.cgi?id=106641 fdo#106680 https://bugs.freedesktop.org/show_bug.cgi?id=106680 fdo#106886 https://bugs.freedesktop.org/show_bug.cgi?id=106886 fdo#107749 https://bugs.freedesktop.org/show_bug.cgi?id=107749 k.org#198133 https://bugzilla.kernel.org/show_bug.cgi?id=198133 == Participating hosts (5 -> 5) == No changes in participating hosts == Build changes == * IGT: IGT_4642 -> IGTPW_1846 * Linux: CI_DRM_4825 -> CI_DRM_4827 CI_DRM_4825: b42528aaa961c0d469f381b4a5c3830fe46aedfa @ git://anongit.freedesktop.org/gfx-ci/linux CI_DRM_4827: 8b1968f143e8bf65acf0ea6f7ce9120259043521 @ git://anongit.freedesktop.org/gfx-ci/linux IGTPW_1846: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1846/ IGT_4642: 7b3ea4efb9713cd67e17e33202fa9d0681a284d1 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1846/shards.html _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 12+ messages in thread
* [igt-dev] [PATCH i-g-t 1/5] igt/kms_getfb: Check the iface exists before use @ 2018-09-28 10:19 Chris Wilson 2018-09-28 10:20 ` [igt-dev] [PATCH i-g-t 4/5] lib/kms: Skip no-op display updates Chris Wilson 0 siblings, 1 reply; 12+ messages in thread From: Chris Wilson @ 2018-09-28 10:19 UTC (permalink / raw) To: intel-gfx; +Cc: igt-dev If the driver doesn't support the getfb iface (e.g. because KMS has been disabled), the ioctls will fail with ENOTSUP. This is expected, so skip the test as nothing useful can be learnt. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> --- tests/kms_getfb.c | 40 ++++++++++++++++++++++++++++++++++++++-- 1 file changed, 38 insertions(+), 2 deletions(-) diff --git a/tests/kms_getfb.c b/tests/kms_getfb.c index 81d796a42..71d65488f 100644 --- a/tests/kms_getfb.c +++ b/tests/kms_getfb.c @@ -40,6 +40,40 @@ #include "drm.h" #include "drm_fourcc.h" +static bool has_getfb_iface(int fd) +{ + struct drm_mode_fb_cmd arg = { }; + int err; + + err = 0; + if (drmIoctl(fd, DRM_IOCTL_MODE_GETFB, &arg)) + err = -errno; + switch (err) { + case -ENOTTY: /* ioctl unrecognised (kernel too old) */ + case -ENOTSUP: /* driver doesn't support KMS */ + return false; + default: + return true; + } +} + +static bool has_addfb2_iface(int fd) +{ + struct drm_mode_fb_cmd2 arg = { }; + int err; + + err = 0; + if (drmIoctl(fd, DRM_IOCTL_MODE_ADDFB2, &arg) == 0) + err = -errno; + switch (err) { + case -ENOTTY: /* ioctl unrecognised (kernel too old) */ + case -ENOTSUP: /* driver doesn't support KMS */ + return false; + default: + return true; + } +} + static void get_ccs_fb(int fd, struct drm_mode_fb_cmd2 *ret) { struct drm_mode_fb_cmd2 add = { @@ -54,6 +88,7 @@ static void get_ccs_fb(int fd, struct drm_mode_fb_cmd2 *ret) }; int size; + igt_require(has_addfb2_iface(fd)); igt_require_intel(fd); /* An explanation of the magic numbers can be found in kms_ccs.c. */ @@ -191,15 +226,16 @@ static void test_duplicate_handles(int fd) do_ioctl(fd, DRM_IOCTL_MODE_RMFB, &add.fb_id); gem_close(fd, add.handles[0]); } - } igt_main { int fd; - igt_fixture + igt_fixture { fd = drm_open_driver_master(DRIVER_ANY); + igt_require(has_getfb_iface(fd)); + } igt_subtest_group test_handle_input(fd); -- 2.19.0 _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply related [flat|nested] 12+ messages in thread
* [igt-dev] [PATCH i-g-t 4/5] lib/kms: Skip no-op display updates 2018-09-28 10:19 [igt-dev] [PATCH i-g-t 1/5] " Chris Wilson @ 2018-09-28 10:20 ` Chris Wilson 0 siblings, 0 replies; 12+ messages in thread From: Chris Wilson @ 2018-09-28 10:20 UTC (permalink / raw) To: intel-gfx; +Cc: igt-dev If the display is disabled (e.g. the driver has disabled the KMS interface) there is nothing to do so avoid failing. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> --- lib/igt_kms.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/lib/igt_kms.c b/lib/igt_kms.c index 9710bcae1..dedc81344 100644 --- a/lib/igt_kms.c +++ b/lib/igt_kms.c @@ -3271,6 +3271,9 @@ static int do_display_commit(igt_display_t *display, enum pipe pipe; LOG_INDENT(display, "commit"); + if (!display->n_pipes || !display->n_outputs) + return 0; /* nothing to do */ + igt_display_refresh(display); if (s == COMMIT_ATOMIC) { @@ -3321,6 +3324,9 @@ int igt_display_try_commit_atomic(igt_display_t *display, uint32_t flags, void * { int ret; + if (!display->n_pipes || !display->n_outputs) + return 0; /* nothing to do */ + LOG_INDENT(display, "commit"); igt_display_refresh(display); -- 2.19.0 _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply related [flat|nested] 12+ messages in thread
end of thread, other threads:[~2018-10-01 9:57 UTC | newest] Thread overview: 12+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2018-09-14 20:13 [igt-dev] [PATCH i-g-t 1/5] igt/kms_getfb: Check the iface exists before use Chris Wilson 2018-09-14 20:13 ` [Intel-gfx] [PATCH i-g-t 2/5] igt/prime_vgem: Skip flip if no display Chris Wilson 2018-10-01 8:49 ` [igt-dev] " Daniel Vetter 2018-10-01 9:57 ` Chris Wilson 2018-09-14 20:13 ` [igt-dev] [PATCH i-g-t 3/5] lib: Report if kms is enabled on the display Chris Wilson 2018-10-01 8:46 ` [Intel-gfx] " Daniel Vetter 2018-09-14 20:13 ` [igt-dev] [PATCH i-g-t 4/5] lib/kms: Skip no-op display updates Chris Wilson 2018-10-01 8:47 ` Daniel Vetter 2018-09-14 20:13 ` [igt-dev] [PATCH i-g-t 5/5] igt: Require a display (KMS enabled) for KMS tests Chris Wilson 2018-09-14 20:48 ` [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/5] igt/kms_getfb: Check the iface exists before use Patchwork 2018-09-15 1:16 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork -- strict thread matches above, loose matches on Subject: below -- 2018-09-28 10:19 [igt-dev] [PATCH i-g-t 1/5] " Chris Wilson 2018-09-28 10:20 ` [igt-dev] [PATCH i-g-t 4/5] lib/kms: Skip no-op display updates Chris Wilson
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).