* [igt-dev] [PATCH v2 0/2] tests/fbdev: Additional tests for resolution and panning
@ 2021-10-14 13:45 Thomas Zimmermann
2021-10-14 13:45 ` [igt-dev] [PATCH v2 1/2] tests/fbdev: Test for validity of video mode settings Thomas Zimmermann
` (4 more replies)
0 siblings, 5 replies; 8+ messages in thread
From: Thomas Zimmermann @ 2021-10-14 13:45 UTC (permalink / raw)
To: igt-dev, ville.syrjala; +Cc: Thomas Zimmermann
Add addtional tests for resolution and panning operations on fbdev
devices. Succeed on successful operations. Fail on invalid operations
or state.
DRM's simpledrm driver exposed a bug in DRM's fbdev overallocation code,
[1] which is required for fbdev page flipping. The new test cases intent
to test panning and page flipping, and detect such issues early.
Tested with the current simpledrm and a hacked version that supports fbdev
overallocation. This will also help to implement the panning functionality
for real in simpledrm and other drivers.
v2:
* test horizontal resolution against line length (Ville)
* respect FB_VMODE_YWRAP (Ville)
* respect {x,y}panstep (Ville)
[1] https://lore.kernel.org/dri-devel/20211005070355.7680-1-tzimmermann@suse.de/
Thomas Zimmermann (2):
tests/fbdev: Test for validity of video mode settings
tests/fbdev: Add tests for display panning
tests/fbdev.c | 184 +++++++++++++++++++++++++++++++++++++++++++++++---
1 file changed, 176 insertions(+), 8 deletions(-)
--
2.33.0
^ permalink raw reply [flat|nested] 8+ messages in thread* [igt-dev] [PATCH v2 1/2] tests/fbdev: Test for validity of video mode settings 2021-10-14 13:45 [igt-dev] [PATCH v2 0/2] tests/fbdev: Additional tests for resolution and panning Thomas Zimmermann @ 2021-10-14 13:45 ` Thomas Zimmermann 2021-10-14 13:45 ` [igt-dev] [PATCH v2 2/2] tests/fbdev: Add tests for display panning Thomas Zimmermann ` (3 subsequent siblings) 4 siblings, 0 replies; 8+ messages in thread From: Thomas Zimmermann @ 2021-10-14 13:45 UTC (permalink / raw) To: igt-dev, ville.syrjala; +Cc: Thomas Zimmermann Add basic tests for video mode resolution and color on fbdev devices. v2: * respect FB_VMODE_YWRAP (Ville) * test horizontal resolution against line length Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de> --- tests/fbdev.c | 49 +++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 41 insertions(+), 8 deletions(-) diff --git a/tests/fbdev.c b/tests/fbdev.c index 443a43dc..2cf137d2 100644 --- a/tests/fbdev.c +++ b/tests/fbdev.c @@ -27,6 +27,7 @@ #include <errno.h> #include <fcntl.h> +#include <limits.h> #include <string.h> #include <sys/ioctl.h> #include <sys/mman.h> @@ -50,14 +51,46 @@ static void mode_tests(int fd) igt_describe("Check if screeninfo is valid"); igt_subtest("info") { - unsigned long size; - - size = var_info.yres * fix_info.line_length; - igt_assert_f(size <= fix_info.smem_len, - "screen size (%d x %d) of pitch %d does not fit within mappable area of size %u\n", - var_info.xres, var_info.yres, - fix_info.line_length, - fix_info.smem_len); + unsigned long nbits, nlines; + + /* video memory configuration */ + igt_assert_f(fix_info.line_length, "line length not set\n"); + igt_assert_f(fix_info.smem_len, "size of video memory not set\n"); + igt_assert_f(fix_info.line_length <= fix_info.smem_len, + "line length (%u) exceeds available video memory (%u)\n", + fix_info.line_length, fix_info.smem_len); + + /* color format */ + igt_assert_f(var_info.bits_per_pixel, "bits-per-pixel not set\n"); + + /* horizontal resolution */ + igt_assert_f(var_info.xres, "horizontal resolution not set\n"); + igt_assert_f(var_info.xres_virtual, "horizontal virtual resolution not set\n"); + igt_assert_f(var_info.xres <= var_info.xres_virtual, + "horizontal virtual resolution (%u) less than horizontal resolution (%u)\n", + var_info.xres_virtual, var_info.xres); + igt_assert_f(var_info.xoffset <= (var_info.xres_virtual - var_info.xres), + "screen horizontal offset (%u) overflow\n", + var_info.xoffset); + nbits = fix_info.line_length * CHAR_BIT; + igt_assert_f((var_info.xres_virtual * var_info.bits_per_pixel) <= nbits, + "vertical virtual resolution (%u) with bpp %u exceeds line length %u\n", + var_info.yres_virtual, var_info.bits_per_pixel, fix_info.line_length); + + /* vertical resolution */ + igt_assert_f(var_info.yres, "vertical resolution not set\n"); + igt_assert_f(var_info.yres_virtual, "vertical virtual resolution not set\n"); + igt_assert_f(var_info.yres <= var_info.yres_virtual, + "vertical virtual resolution (%u) less than vertical resolution (%u)\n", + var_info.yres_virtual, var_info.yres); + igt_assert_f((var_info.vmode & FB_VMODE_YWRAP) || + (var_info.yoffset <= (var_info.yres_virtual - var_info.yres)), + "screen vertical offset (%u) overflow\n", + var_info.yoffset); + nlines = fix_info.smem_len / fix_info.line_length; + igt_assert_f(var_info.yres_virtual <= nlines, + "vertical virtual resolution (%u) with line length %u exceeds available video memory\n", + var_info.yres_virtual, fix_info.line_length); } } -- 2.33.0 ^ permalink raw reply related [flat|nested] 8+ messages in thread
* [igt-dev] [PATCH v2 2/2] tests/fbdev: Add tests for display panning 2021-10-14 13:45 [igt-dev] [PATCH v2 0/2] tests/fbdev: Additional tests for resolution and panning Thomas Zimmermann 2021-10-14 13:45 ` [igt-dev] [PATCH v2 1/2] tests/fbdev: Test for validity of video mode settings Thomas Zimmermann @ 2021-10-14 13:45 ` Thomas Zimmermann 2021-10-20 14:17 ` Ville Syrjälä 2021-10-14 18:21 ` [igt-dev] ✓ Fi.CI.BAT: success for tests/fbdev: Additional tests for resolution and panning (rev2) Patchwork ` (2 subsequent siblings) 4 siblings, 1 reply; 8+ messages in thread From: Thomas Zimmermann @ 2021-10-14 13:45 UTC (permalink / raw) To: igt-dev, ville.syrjala; +Cc: Thomas Zimmermann Add tests that perform panning / page flip operations on an fbdev device. Panning should work when the viewport wi within the virtual screen and fail otherwise. v2: * set offset to respect panning offsets (Ville) * respect FB_VMODE_YWRAP (Ville) Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de> --- tests/fbdev.c | 135 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 135 insertions(+) diff --git a/tests/fbdev.c b/tests/fbdev.c index 2cf137d2..e1f18718 100644 --- a/tests/fbdev.c +++ b/tests/fbdev.c @@ -39,6 +39,20 @@ #include "igt.h" +#define PANSTEP(panstep_) \ + ((panstep_) ? (panstep_) : 1) + +static unsigned int __panoffset(unsigned int offset, unsigned int panstep) +{ + return offset - (offset % PANSTEP(panstep)); +} + +#define XOFFSET(offset_) \ + __panoffset(offset_, fix_info.xpanstep) + +#define YOFFSET(offset_) \ + __panoffset(offset_, fix_info.ypanstep) + static void mode_tests(int fd) { struct fb_var_screeninfo var_info; @@ -92,6 +106,127 @@ static void mode_tests(int fd) "vertical virtual resolution (%u) with line length %u exceeds available video memory\n", var_info.yres_virtual, fix_info.line_length); } + + igt_describe("Check panning / page flipping"); + igt_subtest("pan") { + struct fb_var_screeninfo pan_var, new_var; + int ret; + + /* jump to opposite end of virtual screen */ + pan_var.xoffset = XOFFSET(var_info.xres_virtual - var_info.xres - var_info.xoffset); + pan_var.yoffset = YOFFSET(var_info.yres_virtual - var_info.yres - var_info.yoffset); + ret = ioctl(fd, FBIOPAN_DISPLAY, &pan_var); + igt_assert_f(ret == 0, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); + ret = ioctl(fd, FBIOGET_VSCREENINFO, &new_var); + igt_assert_f(ret == 0, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); + igt_assert_f(pan_var.xoffset == new_var.xoffset && pan_var.yoffset == new_var.yoffset, + "panning to (%u, %u) moved to (%u, %u)\n", + pan_var.xoffset, pan_var.yoffset, new_var.xoffset, new_var.yoffset); + + /* jump to (0, 0) */ + pan_var.xoffset = XOFFSET(0); + pan_var.yoffset = YOFFSET(0); + ret = ioctl(fd, FBIOPAN_DISPLAY, &pan_var); + igt_assert_f(ret == 0, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); + ret = ioctl(fd, FBIOGET_VSCREENINFO, &new_var); + igt_assert_f(ret == 0, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); + igt_assert_f(pan_var.xoffset == new_var.xoffset && pan_var.yoffset == new_var.yoffset, + "panning to (%u, %u) moved to (%u, %u)\n", + pan_var.xoffset, pan_var.yoffset, new_var.xoffset, new_var.yoffset); + + /* jump to maximum extend */ + pan_var.xoffset = XOFFSET(var_info.xres_virtual - var_info.xres); + pan_var.yoffset = YOFFSET(var_info.yres_virtual - var_info.yres); + ret = ioctl(fd, FBIOPAN_DISPLAY, &pan_var); + igt_assert_f(ret == 0, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); + ret = ioctl(fd, FBIOGET_VSCREENINFO, &new_var); + igt_assert_f(ret == 0, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); + igt_assert_f(pan_var.xoffset == new_var.xoffset && pan_var.yoffset == new_var.yoffset, + "panning to (%u, %u) moved to (%u, %u)\n", + pan_var.xoffset, pan_var.yoffset, new_var.xoffset, new_var.yoffset); + + /* return to original offsets for next tests */ + ret = ioctl(fd, FBIOPAN_DISPLAY, &var_info); + igt_assert_f(ret == 0, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); + + /* jump beyond maximum horizontal extend */ + pan_var.xoffset = XOFFSET(var_info.xres_virtual - var_info.xres + PANSTEP(fix_info.xpanstep)); + pan_var.yoffset = YOFFSET(0); + ret = ioctl(fd, FBIOPAN_DISPLAY, &pan_var); + igt_assert_f(ret == -1, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); + ret = ioctl(fd, FBIOGET_VSCREENINFO, &new_var); + igt_assert_f(ret == 0, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); + igt_assert_f(var_info.xoffset == new_var.xoffset && var_info.yoffset == new_var.yoffset, + "panning to (%u, %u) moved to (%u, %u)\n", + pan_var.xoffset, pan_var.yoffset, new_var.xoffset, new_var.yoffset); + + /* jump beyond horizontal virtual resolution */ + pan_var.xoffset = XOFFSET(var_info.xres_virtual); + pan_var.yoffset = YOFFSET(0); + ret = ioctl(fd, FBIOPAN_DISPLAY, &pan_var); + igt_assert_f(ret == -1, "ioctl(FBIOPAN_DISPLAY), ret=%d\n", ret); + ret = ioctl(fd, FBIOGET_VSCREENINFO, &new_var); + igt_assert_f(ret == 0, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); + igt_assert_f(var_info.xoffset == new_var.xoffset && var_info.yoffset == new_var.yoffset, + "panning to (%u, %u) moved to (%u, %u)\n", + pan_var.xoffset, pan_var.yoffset, new_var.xoffset, new_var.yoffset); + + /* + * With FB_MODE_YWRAP set, the display is expected to wrap around when reaching + * the limits of the vertical resolution. Otherwise, this should fail. + */ + + if (var_info.vmode & FB_VMODE_YWRAP) { + /* jump beyond maximum vertical extend */ + pan_var.xoffset = XOFFSET(0); + pan_var.yoffset = YOFFSET(var_info.yres_virtual - var_info.yres + PANSTEP(fix_info.ypanstep)); + ret = ioctl(fd, FBIOPAN_DISPLAY, &pan_var); + igt_assert_f(ret == 0, "ioctl(FBIOPAN_DISPLAY), ret=%d\n", ret); + ret = ioctl(fd, FBIOGET_VSCREENINFO, &new_var); + igt_assert_f(ret == 0, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); + igt_assert_f(pan_var.xoffset == new_var.xoffset && pan_var.yoffset == new_var.yoffset, + "panning to (%u, %u) moved to (%u, %u)\n", + pan_var.xoffset, pan_var.yoffset, new_var.xoffset, new_var.yoffset); + + /* jump beyond vertical virtual resolution */ + pan_var.xoffset = XOFFSET(0); + pan_var.yoffset = YOFFSET(var_info.yres_virtual); + ret = ioctl(fd, FBIOPAN_DISPLAY, &pan_var); + igt_assert_f(ret == 0, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); + ret = ioctl(fd, FBIOGET_VSCREENINFO, &new_var); + igt_assert_f(ret == 0, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); + igt_assert_f(pan_var.xoffset == new_var.xoffset && pan_var.yoffset == new_var.yoffset, + "panning to (%u, %u) moved to (%u, %u)\n", + pan_var.xoffset, pan_var.yoffset, new_var.xoffset, new_var.yoffset); + } else { + /* jump beyond maximum vertical extend */ + pan_var.xoffset = XOFFSET(0); + pan_var.yoffset = YOFFSET(var_info.yres_virtual - var_info.yres + PANSTEP(fix_info.ypanstep)); + ret = ioctl(fd, FBIOPAN_DISPLAY, &pan_var); + igt_assert_f(ret == -1, "ioctl(FBIOPAN_DISPLAY), ret=%d\n", ret); + ret = ioctl(fd, FBIOGET_VSCREENINFO, &new_var); + igt_assert_f(ret == 0, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); + igt_assert_f(var_info.xoffset == new_var.xoffset && var_info.yoffset == new_var.yoffset, + "panning to (%u, %u) moved to (%u, %u)\n", + pan_var.xoffset, pan_var.yoffset, new_var.xoffset, new_var.yoffset); + + /* jump beyond vertical virtual resolution */ + pan_var.xoffset = XOFFSET(0); + pan_var.yoffset = YOFFSET(var_info.yres_virtual); + ret = ioctl(fd, FBIOPAN_DISPLAY, &pan_var); + igt_assert_f(ret == -1, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); + ret = ioctl(fd, FBIOGET_VSCREENINFO, &new_var); + igt_assert_f(ret == 0, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); + igt_assert_f(var_info.xoffset == new_var.xoffset && var_info.yoffset == new_var.yoffset, + "panning to (%u, %u) moved to (%u, %u)\n", + pan_var.xoffset, pan_var.yoffset, new_var.xoffset, new_var.yoffset); + } + } + + igt_fixture { + /* restore original panning offsets */ + ioctl(fd, FBIOPAN_DISPLAY, &var_info); + } } static void framebuffer_tests(int fd) -- 2.33.0 ^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [igt-dev] [PATCH v2 2/2] tests/fbdev: Add tests for display panning 2021-10-14 13:45 ` [igt-dev] [PATCH v2 2/2] tests/fbdev: Add tests for display panning Thomas Zimmermann @ 2021-10-20 14:17 ` Ville Syrjälä 2021-10-22 7:55 ` Thomas Zimmermann 0 siblings, 1 reply; 8+ messages in thread From: Ville Syrjälä @ 2021-10-20 14:17 UTC (permalink / raw) To: Thomas Zimmermann; +Cc: igt-dev On Thu, Oct 14, 2021 at 03:45:17PM +0200, Thomas Zimmermann wrote: > Add tests that perform panning / page flip operations on an fbdev > device. Panning should work when the viewport wi within the virtual > screen and fail otherwise. > > v2: > * set offset to respect panning offsets (Ville) > * respect FB_VMODE_YWRAP (Ville) > > Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de> > --- > tests/fbdev.c | 135 ++++++++++++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 135 insertions(+) > > diff --git a/tests/fbdev.c b/tests/fbdev.c > index 2cf137d2..e1f18718 100644 > --- a/tests/fbdev.c > +++ b/tests/fbdev.c > @@ -39,6 +39,20 @@ > > #include "igt.h" > > +#define PANSTEP(panstep_) \ > + ((panstep_) ? (panstep_) : 1) > + > +static unsigned int __panoffset(unsigned int offset, unsigned int panstep) > +{ > + return offset - (offset % PANSTEP(panstep)); > +} > + > +#define XOFFSET(offset_) \ > + __panoffset(offset_, fix_info.xpanstep) > + > +#define YOFFSET(offset_) \ > + __panoffset(offset_, fix_info.ypanstep) > + > static void mode_tests(int fd) > { > struct fb_var_screeninfo var_info; > @@ -92,6 +106,127 @@ static void mode_tests(int fd) > "vertical virtual resolution (%u) with line length %u exceeds available video memory\n", > var_info.yres_virtual, fix_info.line_length); > } > + > + igt_describe("Check panning / page flipping"); > + igt_subtest("pan") { > + struct fb_var_screeninfo pan_var, new_var; > + int ret; > + > + /* jump to opposite end of virtual screen */ > + pan_var.xoffset = XOFFSET(var_info.xres_virtual - var_info.xres - var_info.xoffset); > + pan_var.yoffset = YOFFSET(var_info.yres_virtual - var_info.yres - var_info.yoffset); > + ret = ioctl(fd, FBIOPAN_DISPLAY, &pan_var); > + igt_assert_f(ret == 0, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); > + ret = ioctl(fd, FBIOGET_VSCREENINFO, &new_var); > + igt_assert_f(ret == 0, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); > + igt_assert_f(pan_var.xoffset == new_var.xoffset && pan_var.yoffset == new_var.yoffset, > + "panning to (%u, %u) moved to (%u, %u)\n", > + pan_var.xoffset, pan_var.yoffset, new_var.xoffset, new_var.yoffset); > + > + /* jump to (0, 0) */ > + pan_var.xoffset = XOFFSET(0); > + pan_var.yoffset = YOFFSET(0); > + ret = ioctl(fd, FBIOPAN_DISPLAY, &pan_var); > + igt_assert_f(ret == 0, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); > + ret = ioctl(fd, FBIOGET_VSCREENINFO, &new_var); > + igt_assert_f(ret == 0, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); > + igt_assert_f(pan_var.xoffset == new_var.xoffset && pan_var.yoffset == new_var.yoffset, > + "panning to (%u, %u) moved to (%u, %u)\n", > + pan_var.xoffset, pan_var.yoffset, new_var.xoffset, new_var.yoffset); A bit repetivive this stuff. Could put that block of code into a helper maybe? Otherwise looks sensible enough to me. For the series: Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com> > + > + /* jump to maximum extend */ > + pan_var.xoffset = XOFFSET(var_info.xres_virtual - var_info.xres); > + pan_var.yoffset = YOFFSET(var_info.yres_virtual - var_info.yres); > + ret = ioctl(fd, FBIOPAN_DISPLAY, &pan_var); > + igt_assert_f(ret == 0, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); > + ret = ioctl(fd, FBIOGET_VSCREENINFO, &new_var); > + igt_assert_f(ret == 0, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); > + igt_assert_f(pan_var.xoffset == new_var.xoffset && pan_var.yoffset == new_var.yoffset, > + "panning to (%u, %u) moved to (%u, %u)\n", > + pan_var.xoffset, pan_var.yoffset, new_var.xoffset, new_var.yoffset); > + > + /* return to original offsets for next tests */ > + ret = ioctl(fd, FBIOPAN_DISPLAY, &var_info); > + igt_assert_f(ret == 0, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); > + > + /* jump beyond maximum horizontal extend */ > + pan_var.xoffset = XOFFSET(var_info.xres_virtual - var_info.xres + PANSTEP(fix_info.xpanstep)); > + pan_var.yoffset = YOFFSET(0); > + ret = ioctl(fd, FBIOPAN_DISPLAY, &pan_var); > + igt_assert_f(ret == -1, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); > + ret = ioctl(fd, FBIOGET_VSCREENINFO, &new_var); > + igt_assert_f(ret == 0, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); > + igt_assert_f(var_info.xoffset == new_var.xoffset && var_info.yoffset == new_var.yoffset, > + "panning to (%u, %u) moved to (%u, %u)\n", > + pan_var.xoffset, pan_var.yoffset, new_var.xoffset, new_var.yoffset); > + > + /* jump beyond horizontal virtual resolution */ > + pan_var.xoffset = XOFFSET(var_info.xres_virtual); > + pan_var.yoffset = YOFFSET(0); > + ret = ioctl(fd, FBIOPAN_DISPLAY, &pan_var); > + igt_assert_f(ret == -1, "ioctl(FBIOPAN_DISPLAY), ret=%d\n", ret); > + ret = ioctl(fd, FBIOGET_VSCREENINFO, &new_var); > + igt_assert_f(ret == 0, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); > + igt_assert_f(var_info.xoffset == new_var.xoffset && var_info.yoffset == new_var.yoffset, > + "panning to (%u, %u) moved to (%u, %u)\n", > + pan_var.xoffset, pan_var.yoffset, new_var.xoffset, new_var.yoffset); > + > + /* > + * With FB_MODE_YWRAP set, the display is expected to wrap around when reaching > + * the limits of the vertical resolution. Otherwise, this should fail. > + */ > + > + if (var_info.vmode & FB_VMODE_YWRAP) { > + /* jump beyond maximum vertical extend */ > + pan_var.xoffset = XOFFSET(0); > + pan_var.yoffset = YOFFSET(var_info.yres_virtual - var_info.yres + PANSTEP(fix_info.ypanstep)); > + ret = ioctl(fd, FBIOPAN_DISPLAY, &pan_var); > + igt_assert_f(ret == 0, "ioctl(FBIOPAN_DISPLAY), ret=%d\n", ret); > + ret = ioctl(fd, FBIOGET_VSCREENINFO, &new_var); > + igt_assert_f(ret == 0, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); > + igt_assert_f(pan_var.xoffset == new_var.xoffset && pan_var.yoffset == new_var.yoffset, > + "panning to (%u, %u) moved to (%u, %u)\n", > + pan_var.xoffset, pan_var.yoffset, new_var.xoffset, new_var.yoffset); > + > + /* jump beyond vertical virtual resolution */ > + pan_var.xoffset = XOFFSET(0); > + pan_var.yoffset = YOFFSET(var_info.yres_virtual); > + ret = ioctl(fd, FBIOPAN_DISPLAY, &pan_var); > + igt_assert_f(ret == 0, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); > + ret = ioctl(fd, FBIOGET_VSCREENINFO, &new_var); > + igt_assert_f(ret == 0, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); > + igt_assert_f(pan_var.xoffset == new_var.xoffset && pan_var.yoffset == new_var.yoffset, > + "panning to (%u, %u) moved to (%u, %u)\n", > + pan_var.xoffset, pan_var.yoffset, new_var.xoffset, new_var.yoffset); > + } else { > + /* jump beyond maximum vertical extend */ > + pan_var.xoffset = XOFFSET(0); > + pan_var.yoffset = YOFFSET(var_info.yres_virtual - var_info.yres + PANSTEP(fix_info.ypanstep)); > + ret = ioctl(fd, FBIOPAN_DISPLAY, &pan_var); > + igt_assert_f(ret == -1, "ioctl(FBIOPAN_DISPLAY), ret=%d\n", ret); > + ret = ioctl(fd, FBIOGET_VSCREENINFO, &new_var); > + igt_assert_f(ret == 0, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); > + igt_assert_f(var_info.xoffset == new_var.xoffset && var_info.yoffset == new_var.yoffset, > + "panning to (%u, %u) moved to (%u, %u)\n", > + pan_var.xoffset, pan_var.yoffset, new_var.xoffset, new_var.yoffset); > + > + /* jump beyond vertical virtual resolution */ > + pan_var.xoffset = XOFFSET(0); > + pan_var.yoffset = YOFFSET(var_info.yres_virtual); > + ret = ioctl(fd, FBIOPAN_DISPLAY, &pan_var); > + igt_assert_f(ret == -1, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); > + ret = ioctl(fd, FBIOGET_VSCREENINFO, &new_var); > + igt_assert_f(ret == 0, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); > + igt_assert_f(var_info.xoffset == new_var.xoffset && var_info.yoffset == new_var.yoffset, > + "panning to (%u, %u) moved to (%u, %u)\n", > + pan_var.xoffset, pan_var.yoffset, new_var.xoffset, new_var.yoffset); > + } > + } > + > + igt_fixture { > + /* restore original panning offsets */ > + ioctl(fd, FBIOPAN_DISPLAY, &var_info); > + } > } > > static void framebuffer_tests(int fd) > -- > 2.33.0 -- Ville Syrjälä Intel ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [igt-dev] [PATCH v2 2/2] tests/fbdev: Add tests for display panning 2021-10-20 14:17 ` Ville Syrjälä @ 2021-10-22 7:55 ` Thomas Zimmermann 0 siblings, 0 replies; 8+ messages in thread From: Thomas Zimmermann @ 2021-10-22 7:55 UTC (permalink / raw) To: Ville Syrjälä; +Cc: igt-dev [-- Attachment #1.1: Type: text/plain, Size: 8951 bytes --] Hi Am 20.10.21 um 16:17 schrieb Ville Syrjälä: > On Thu, Oct 14, 2021 at 03:45:17PM +0200, Thomas Zimmermann wrote: >> Add tests that perform panning / page flip operations on an fbdev >> device. Panning should work when the viewport wi within the virtual >> screen and fail otherwise. >> >> v2: >> * set offset to respect panning offsets (Ville) >> * respect FB_VMODE_YWRAP (Ville) >> >> Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de> >> --- >> tests/fbdev.c | 135 ++++++++++++++++++++++++++++++++++++++++++++++++++ >> 1 file changed, 135 insertions(+) >> >> diff --git a/tests/fbdev.c b/tests/fbdev.c >> index 2cf137d2..e1f18718 100644 >> --- a/tests/fbdev.c >> +++ b/tests/fbdev.c >> @@ -39,6 +39,20 @@ >> >> #include "igt.h" >> >> +#define PANSTEP(panstep_) \ >> + ((panstep_) ? (panstep_) : 1) >> + >> +static unsigned int __panoffset(unsigned int offset, unsigned int panstep) >> +{ >> + return offset - (offset % PANSTEP(panstep)); >> +} >> + >> +#define XOFFSET(offset_) \ >> + __panoffset(offset_, fix_info.xpanstep) >> + >> +#define YOFFSET(offset_) \ >> + __panoffset(offset_, fix_info.ypanstep) >> + >> static void mode_tests(int fd) >> { >> struct fb_var_screeninfo var_info; >> @@ -92,6 +106,127 @@ static void mode_tests(int fd) >> "vertical virtual resolution (%u) with line length %u exceeds available video memory\n", >> var_info.yres_virtual, fix_info.line_length); >> } >> + >> + igt_describe("Check panning / page flipping"); >> + igt_subtest("pan") { >> + struct fb_var_screeninfo pan_var, new_var; >> + int ret; >> + >> + /* jump to opposite end of virtual screen */ >> + pan_var.xoffset = XOFFSET(var_info.xres_virtual - var_info.xres - var_info.xoffset); >> + pan_var.yoffset = YOFFSET(var_info.yres_virtual - var_info.yres - var_info.yoffset); >> + ret = ioctl(fd, FBIOPAN_DISPLAY, &pan_var); >> + igt_assert_f(ret == 0, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); >> + ret = ioctl(fd, FBIOGET_VSCREENINFO, &new_var); >> + igt_assert_f(ret == 0, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); >> + igt_assert_f(pan_var.xoffset == new_var.xoffset && pan_var.yoffset == new_var.yoffset, >> + "panning to (%u, %u) moved to (%u, %u)\n", >> + pan_var.xoffset, pan_var.yoffset, new_var.xoffset, new_var.yoffset); >> + >> + /* jump to (0, 0) */ >> + pan_var.xoffset = XOFFSET(0); >> + pan_var.yoffset = YOFFSET(0); >> + ret = ioctl(fd, FBIOPAN_DISPLAY, &pan_var); >> + igt_assert_f(ret == 0, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); >> + ret = ioctl(fd, FBIOGET_VSCREENINFO, &new_var); >> + igt_assert_f(ret == 0, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); >> + igt_assert_f(pan_var.xoffset == new_var.xoffset && pan_var.yoffset == new_var.yoffset, >> + "panning to (%u, %u) moved to (%u, %u)\n", >> + pan_var.xoffset, pan_var.yoffset, new_var.xoffset, new_var.yoffset); > > A bit repetivive this stuff. Could put that block of code > into a helper maybe? > > Otherwise looks sensible enough to me. For the series: > Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Thanks a lot. I sent out a v3 that removes the duplication, but I don't have the commit rights to merge the patches. Best regards Thomas > >> + >> + /* jump to maximum extend */ >> + pan_var.xoffset = XOFFSET(var_info.xres_virtual - var_info.xres); >> + pan_var.yoffset = YOFFSET(var_info.yres_virtual - var_info.yres); >> + ret = ioctl(fd, FBIOPAN_DISPLAY, &pan_var); >> + igt_assert_f(ret == 0, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); >> + ret = ioctl(fd, FBIOGET_VSCREENINFO, &new_var); >> + igt_assert_f(ret == 0, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); >> + igt_assert_f(pan_var.xoffset == new_var.xoffset && pan_var.yoffset == new_var.yoffset, >> + "panning to (%u, %u) moved to (%u, %u)\n", >> + pan_var.xoffset, pan_var.yoffset, new_var.xoffset, new_var.yoffset); >> + >> + /* return to original offsets for next tests */ >> + ret = ioctl(fd, FBIOPAN_DISPLAY, &var_info); >> + igt_assert_f(ret == 0, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); >> + >> + /* jump beyond maximum horizontal extend */ >> + pan_var.xoffset = XOFFSET(var_info.xres_virtual - var_info.xres + PANSTEP(fix_info.xpanstep)); >> + pan_var.yoffset = YOFFSET(0); >> + ret = ioctl(fd, FBIOPAN_DISPLAY, &pan_var); >> + igt_assert_f(ret == -1, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); >> + ret = ioctl(fd, FBIOGET_VSCREENINFO, &new_var); >> + igt_assert_f(ret == 0, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); >> + igt_assert_f(var_info.xoffset == new_var.xoffset && var_info.yoffset == new_var.yoffset, >> + "panning to (%u, %u) moved to (%u, %u)\n", >> + pan_var.xoffset, pan_var.yoffset, new_var.xoffset, new_var.yoffset); >> + >> + /* jump beyond horizontal virtual resolution */ >> + pan_var.xoffset = XOFFSET(var_info.xres_virtual); >> + pan_var.yoffset = YOFFSET(0); >> + ret = ioctl(fd, FBIOPAN_DISPLAY, &pan_var); >> + igt_assert_f(ret == -1, "ioctl(FBIOPAN_DISPLAY), ret=%d\n", ret); >> + ret = ioctl(fd, FBIOGET_VSCREENINFO, &new_var); >> + igt_assert_f(ret == 0, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); >> + igt_assert_f(var_info.xoffset == new_var.xoffset && var_info.yoffset == new_var.yoffset, >> + "panning to (%u, %u) moved to (%u, %u)\n", >> + pan_var.xoffset, pan_var.yoffset, new_var.xoffset, new_var.yoffset); >> + >> + /* >> + * With FB_MODE_YWRAP set, the display is expected to wrap around when reaching >> + * the limits of the vertical resolution. Otherwise, this should fail. >> + */ >> + >> + if (var_info.vmode & FB_VMODE_YWRAP) { >> + /* jump beyond maximum vertical extend */ >> + pan_var.xoffset = XOFFSET(0); >> + pan_var.yoffset = YOFFSET(var_info.yres_virtual - var_info.yres + PANSTEP(fix_info.ypanstep)); >> + ret = ioctl(fd, FBIOPAN_DISPLAY, &pan_var); >> + igt_assert_f(ret == 0, "ioctl(FBIOPAN_DISPLAY), ret=%d\n", ret); >> + ret = ioctl(fd, FBIOGET_VSCREENINFO, &new_var); >> + igt_assert_f(ret == 0, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); >> + igt_assert_f(pan_var.xoffset == new_var.xoffset && pan_var.yoffset == new_var.yoffset, >> + "panning to (%u, %u) moved to (%u, %u)\n", >> + pan_var.xoffset, pan_var.yoffset, new_var.xoffset, new_var.yoffset); >> + >> + /* jump beyond vertical virtual resolution */ >> + pan_var.xoffset = XOFFSET(0); >> + pan_var.yoffset = YOFFSET(var_info.yres_virtual); >> + ret = ioctl(fd, FBIOPAN_DISPLAY, &pan_var); >> + igt_assert_f(ret == 0, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); >> + ret = ioctl(fd, FBIOGET_VSCREENINFO, &new_var); >> + igt_assert_f(ret == 0, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); >> + igt_assert_f(pan_var.xoffset == new_var.xoffset && pan_var.yoffset == new_var.yoffset, >> + "panning to (%u, %u) moved to (%u, %u)\n", >> + pan_var.xoffset, pan_var.yoffset, new_var.xoffset, new_var.yoffset); >> + } else { >> + /* jump beyond maximum vertical extend */ >> + pan_var.xoffset = XOFFSET(0); >> + pan_var.yoffset = YOFFSET(var_info.yres_virtual - var_info.yres + PANSTEP(fix_info.ypanstep)); >> + ret = ioctl(fd, FBIOPAN_DISPLAY, &pan_var); >> + igt_assert_f(ret == -1, "ioctl(FBIOPAN_DISPLAY), ret=%d\n", ret); >> + ret = ioctl(fd, FBIOGET_VSCREENINFO, &new_var); >> + igt_assert_f(ret == 0, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); >> + igt_assert_f(var_info.xoffset == new_var.xoffset && var_info.yoffset == new_var.yoffset, >> + "panning to (%u, %u) moved to (%u, %u)\n", >> + pan_var.xoffset, pan_var.yoffset, new_var.xoffset, new_var.yoffset); >> + >> + /* jump beyond vertical virtual resolution */ >> + pan_var.xoffset = XOFFSET(0); >> + pan_var.yoffset = YOFFSET(var_info.yres_virtual); >> + ret = ioctl(fd, FBIOPAN_DISPLAY, &pan_var); >> + igt_assert_f(ret == -1, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); >> + ret = ioctl(fd, FBIOGET_VSCREENINFO, &new_var); >> + igt_assert_f(ret == 0, "ioctl(FBIOPAN_DISPLAY) failed, ret=%d\n", ret); >> + igt_assert_f(var_info.xoffset == new_var.xoffset && var_info.yoffset == new_var.yoffset, >> + "panning to (%u, %u) moved to (%u, %u)\n", >> + pan_var.xoffset, pan_var.yoffset, new_var.xoffset, new_var.yoffset); >> + } >> + } >> + >> + igt_fixture { >> + /* restore original panning offsets */ >> + ioctl(fd, FBIOPAN_DISPLAY, &var_info); >> + } >> } >> >> static void framebuffer_tests(int fd) >> -- >> 2.33.0 > -- Thomas Zimmermann Graphics Driver Developer SUSE Software Solutions Germany GmbH Maxfeldstr. 5, 90409 Nürnberg, Germany (HRB 36809, AG Nürnberg) Geschäftsführer: Felix Imendörffer [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 840 bytes --] ^ permalink raw reply [flat|nested] 8+ messages in thread
* [igt-dev] ✓ Fi.CI.BAT: success for tests/fbdev: Additional tests for resolution and panning (rev2) 2021-10-14 13:45 [igt-dev] [PATCH v2 0/2] tests/fbdev: Additional tests for resolution and panning Thomas Zimmermann 2021-10-14 13:45 ` [igt-dev] [PATCH v2 1/2] tests/fbdev: Test for validity of video mode settings Thomas Zimmermann 2021-10-14 13:45 ` [igt-dev] [PATCH v2 2/2] tests/fbdev: Add tests for display panning Thomas Zimmermann @ 2021-10-14 18:21 ` Patchwork 2021-10-14 22:02 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork 2021-10-20 14:08 ` [igt-dev] [PATCH v2 0/2] tests/fbdev: Additional tests for resolution and panning Thomas Zimmermann 4 siblings, 0 replies; 8+ messages in thread From: Patchwork @ 2021-10-14 18:21 UTC (permalink / raw) To: Thomas Zimmermann; +Cc: igt-dev [-- Attachment #1: Type: text/plain, Size: 6409 bytes --] == Series Details == Series: tests/fbdev: Additional tests for resolution and panning (rev2) URL : https://patchwork.freedesktop.org/series/95676/ State : success == Summary == CI Bug Log - changes from CI_DRM_10735 -> IGTPW_6322 ==================================================== Summary ------- **SUCCESS** No regressions found. External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/index.html Known issues ------------ Here are the changes found in IGTPW_6322 that come from known issues: ### IGT changes ### #### Issues hit #### * igt@amdgpu/amd_basic@query-info: - fi-tgl-1115g4: NOTRUN -> [SKIP][1] ([fdo#109315]) [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/fi-tgl-1115g4/igt@amdgpu/amd_basic@query-info.html * igt@amdgpu/amd_cs_nop@nop-gfx0: - fi-tgl-1115g4: NOTRUN -> [SKIP][2] ([fdo#109315] / [i915#2575]) +16 similar issues [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/fi-tgl-1115g4/igt@amdgpu/amd_cs_nop@nop-gfx0.html * igt@amdgpu/amd_cs_nop@sync-fork-gfx0: - fi-skl-6600u: NOTRUN -> [SKIP][3] ([fdo#109271]) +18 similar issues [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/fi-skl-6600u/igt@amdgpu/amd_cs_nop@sync-fork-gfx0.html * igt@gem_huc_copy@huc-copy: - fi-tgl-1115g4: NOTRUN -> [SKIP][4] ([i915#2190]) [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/fi-tgl-1115g4/igt@gem_huc_copy@huc-copy.html * igt@i915_pm_backlight@basic-brightness: - fi-tgl-1115g4: NOTRUN -> [SKIP][5] ([i915#1155]) [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/fi-tgl-1115g4/igt@i915_pm_backlight@basic-brightness.html * igt@kms_chamelium@common-hpd-after-suspend: - fi-tgl-1115g4: NOTRUN -> [SKIP][6] ([fdo#111827]) +8 similar issues [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/fi-tgl-1115g4/igt@kms_chamelium@common-hpd-after-suspend.html * igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic: - fi-tgl-1115g4: NOTRUN -> [SKIP][7] ([i915#4103]) +1 similar issue [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/fi-tgl-1115g4/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic.html * igt@kms_force_connector_basic@force-load-detect: - fi-tgl-1115g4: NOTRUN -> [SKIP][8] ([fdo#109285]) [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/fi-tgl-1115g4/igt@kms_force_connector_basic@force-load-detect.html * igt@kms_psr@primary_mmap_gtt: - fi-tgl-1115g4: NOTRUN -> [SKIP][9] ([i915#1072]) +3 similar issues [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/fi-tgl-1115g4/igt@kms_psr@primary_mmap_gtt.html * igt@prime_vgem@basic-userptr: - fi-tgl-1115g4: NOTRUN -> [SKIP][10] ([i915#3301]) [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/fi-tgl-1115g4/igt@prime_vgem@basic-userptr.html #### Possible fixes #### * igt@debugfs_test@read_all_entries: - fi-kbl-soraka: [DMESG-WARN][11] ([i915#1982] / [i915#262]) -> [PASS][12] [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10735/fi-kbl-soraka/igt@debugfs_test@read_all_entries.html [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/fi-kbl-soraka/igt@debugfs_test@read_all_entries.html * igt@kms_flip@basic-flip-vs-dpms@c-dp2: - fi-cfl-8109u: [DMESG-WARN][13] ([i915#165]) -> [PASS][14] [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10735/fi-cfl-8109u/igt@kms_flip@basic-flip-vs-dpms@c-dp2.html [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/fi-cfl-8109u/igt@kms_flip@basic-flip-vs-dpms@c-dp2.html * igt@kms_pipe_crc_basic@compare-crc-sanitycheck-pipe-b: - fi-cfl-8109u: [DMESG-WARN][15] ([i915#165] / [i915#295]) -> [PASS][16] +26 similar issues [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10735/fi-cfl-8109u/igt@kms_pipe_crc_basic@compare-crc-sanitycheck-pipe-b.html [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/fi-cfl-8109u/igt@kms_pipe_crc_basic@compare-crc-sanitycheck-pipe-b.html * igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a: - fi-skl-6600u: [INCOMPLETE][17] ([i915#198]) -> [PASS][18] [17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10735/fi-skl-6600u/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a.html [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/fi-skl-6600u/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a.html {name}: This element is suppressed. This means it is ignored when computing the status of the difference (SUCCESS, WARNING, or FAILURE). [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271 [fdo#109285]: https://bugs.freedesktop.org/show_bug.cgi?id=109285 [fdo#109315]: https://bugs.freedesktop.org/show_bug.cgi?id=109315 [fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827 [fdo#112080]: https://bugs.freedesktop.org/show_bug.cgi?id=112080 [i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072 [i915#1155]: https://gitlab.freedesktop.org/drm/intel/issues/1155 [i915#165]: https://gitlab.freedesktop.org/drm/intel/issues/165 [i915#198]: https://gitlab.freedesktop.org/drm/intel/issues/198 [i915#1982]: https://gitlab.freedesktop.org/drm/intel/issues/1982 [i915#2190]: https://gitlab.freedesktop.org/drm/intel/issues/2190 [i915#2575]: https://gitlab.freedesktop.org/drm/intel/issues/2575 [i915#262]: https://gitlab.freedesktop.org/drm/intel/issues/262 [i915#295]: https://gitlab.freedesktop.org/drm/intel/issues/295 [i915#3301]: https://gitlab.freedesktop.org/drm/intel/issues/3301 [i915#4103]: https://gitlab.freedesktop.org/drm/intel/issues/4103 [i915#533]: https://gitlab.freedesktop.org/drm/intel/issues/533 Participating hosts (37 -> 37) ------------------------------ Additional (2): fi-jsl-1 fi-tgl-1115g4 Missing (2): fi-bsw-cyan fi-hsw-4200u Build changes ------------- * CI: CI-20190529 -> None * IGT: IGT_6249 -> IGTPW_6322 CI-20190529: 20190529 CI_DRM_10735: ba9c26aebabe060d3eb5211fa6c0b4a1047d0390 @ git://anongit.freedesktop.org/gfx-ci/linux IGTPW_6322: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/index.html IGT_6249: 04b156109f1c5128d5ace67420ee2e35e8a24e1d @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git == Testlist changes == +igt@fbdev@pan == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/index.html [-- Attachment #2: Type: text/html, Size: 7374 bytes --] ^ permalink raw reply [flat|nested] 8+ messages in thread
* [igt-dev] ✓ Fi.CI.IGT: success for tests/fbdev: Additional tests for resolution and panning (rev2) 2021-10-14 13:45 [igt-dev] [PATCH v2 0/2] tests/fbdev: Additional tests for resolution and panning Thomas Zimmermann ` (2 preceding siblings ...) 2021-10-14 18:21 ` [igt-dev] ✓ Fi.CI.BAT: success for tests/fbdev: Additional tests for resolution and panning (rev2) Patchwork @ 2021-10-14 22:02 ` Patchwork 2021-10-20 14:08 ` [igt-dev] [PATCH v2 0/2] tests/fbdev: Additional tests for resolution and panning Thomas Zimmermann 4 siblings, 0 replies; 8+ messages in thread From: Patchwork @ 2021-10-14 22:02 UTC (permalink / raw) To: Thomas Zimmermann; +Cc: igt-dev [-- Attachment #1: Type: text/plain, Size: 30281 bytes --] == Series Details == Series: tests/fbdev: Additional tests for resolution and panning (rev2) URL : https://patchwork.freedesktop.org/series/95676/ State : success == Summary == CI Bug Log - changes from CI_DRM_10735_full -> IGTPW_6322_full ==================================================== Summary ------- **SUCCESS** No regressions found. External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/index.html Possible new issues ------------------- Here are the unknown changes that may have been introduced in IGTPW_6322_full: ### IGT changes ### #### Suppressed #### The following results come from untrusted machines, tests, or statuses. They do not affect the overall result. * {igt@kms_bw@linear-tiling-1-displays-2560x1440p}: - shard-snb: NOTRUN -> [FAIL][1] [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-snb6/igt@kms_bw@linear-tiling-1-displays-2560x1440p.html * {igt@kms_bw@linear-tiling-2-displays-3840x2160p}: - shard-kbl: NOTRUN -> [DMESG-FAIL][2] [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-kbl7/igt@kms_bw@linear-tiling-2-displays-3840x2160p.html * {igt@kms_bw@linear-tiling-3-displays-2560x1440p}: - shard-kbl: NOTRUN -> [FAIL][3] +1 similar issue [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-kbl1/igt@kms_bw@linear-tiling-3-displays-2560x1440p.html * {igt@kms_bw@linear-tiling-4-displays-1920x1080p}: - shard-apl: NOTRUN -> [DMESG-FAIL][4] +1 similar issue [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-apl6/igt@kms_bw@linear-tiling-4-displays-1920x1080p.html * {igt@kms_bw@linear-tiling-6-displays-3840x2160p}: - shard-iclb: NOTRUN -> [SKIP][5] [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-iclb3/igt@kms_bw@linear-tiling-6-displays-3840x2160p.html New tests --------- New tests have been introduced between CI_DRM_10735_full and IGTPW_6322_full: ### New IGT tests (1) ### * igt@fbdev@pan: - Statuses : 5 pass(s) - Exec time: [0.04, 0.07] s Known issues ------------ Here are the changes found in IGTPW_6322_full that come from known issues: ### IGT changes ### #### Issues hit #### * igt@feature_discovery@display-4x: - shard-tglb: NOTRUN -> [SKIP][6] ([i915#1839]) [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-tglb7/igt@feature_discovery@display-4x.html - shard-iclb: NOTRUN -> [SKIP][7] ([i915#1839]) [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-iclb1/igt@feature_discovery@display-4x.html * igt@gem_create@create-massive: - shard-kbl: NOTRUN -> [DMESG-WARN][8] ([i915#3002]) [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-kbl4/igt@gem_create@create-massive.html * igt@gem_ctx_isolation@preservation-s3@vcs0: - shard-kbl: NOTRUN -> [DMESG-WARN][9] ([i915#180]) +6 similar issues [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-kbl7/igt@gem_ctx_isolation@preservation-s3@vcs0.html * igt@gem_ctx_persistence@legacy-engines-mixed: - shard-snb: NOTRUN -> [SKIP][10] ([fdo#109271] / [i915#1099]) +4 similar issues [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-snb2/igt@gem_ctx_persistence@legacy-engines-mixed.html * igt@gem_ctx_sseu@engines: - shard-tglb: NOTRUN -> [SKIP][11] ([i915#280]) [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-tglb2/igt@gem_ctx_sseu@engines.html * igt@gem_exec_fair@basic-deadline: - shard-apl: NOTRUN -> [FAIL][12] ([i915#2846]) [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-apl8/igt@gem_exec_fair@basic-deadline.html * igt@gem_exec_fair@basic-flow@rcs0: - shard-tglb: [PASS][13] -> [FAIL][14] ([i915#2842]) [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10735/shard-tglb5/igt@gem_exec_fair@basic-flow@rcs0.html [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-tglb3/igt@gem_exec_fair@basic-flow@rcs0.html * igt@gem_exec_fair@basic-none-solo@rcs0: - shard-tglb: NOTRUN -> [FAIL][15] ([i915#2842]) [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-tglb3/igt@gem_exec_fair@basic-none-solo@rcs0.html * igt@gem_exec_fair@basic-none-vip@rcs0: - shard-kbl: NOTRUN -> [FAIL][16] ([i915#2842]) +1 similar issue [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-kbl7/igt@gem_exec_fair@basic-none-vip@rcs0.html * igt@gem_exec_fair@basic-none@vcs1: - shard-kbl: [PASS][17] -> [FAIL][18] ([i915#2842]) [17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10735/shard-kbl1/igt@gem_exec_fair@basic-none@vcs1.html [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-kbl7/igt@gem_exec_fair@basic-none@vcs1.html * igt@gem_exec_fair@basic-pace@rcs0: - shard-iclb: NOTRUN -> [FAIL][19] ([i915#2842]) [19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-iclb7/igt@gem_exec_fair@basic-pace@rcs0.html * igt@gem_exec_fair@basic-pace@vcs0: - shard-glk: [PASS][20] -> [FAIL][21] ([i915#2842]) +1 similar issue [20]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10735/shard-glk7/igt@gem_exec_fair@basic-pace@vcs0.html [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-glk8/igt@gem_exec_fair@basic-pace@vcs0.html * igt@gem_exec_fair@basic-throttle@rcs0: - shard-iclb: [PASS][22] -> [FAIL][23] ([i915#2849]) [22]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10735/shard-iclb6/igt@gem_exec_fair@basic-throttle@rcs0.html [23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-iclb5/igt@gem_exec_fair@basic-throttle@rcs0.html * igt@gem_exec_params@no-vebox: - shard-iclb: NOTRUN -> [SKIP][24] ([fdo#109283]) [24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-iclb7/igt@gem_exec_params@no-vebox.html - shard-tglb: NOTRUN -> [SKIP][25] ([fdo#109283]) [25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-tglb2/igt@gem_exec_params@no-vebox.html * igt@gem_exec_suspend@basic-s3: - shard-kbl: [PASS][26] -> [DMESG-WARN][27] ([i915#180]) +2 similar issues [26]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10735/shard-kbl2/igt@gem_exec_suspend@basic-s3.html [27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-kbl1/igt@gem_exec_suspend@basic-s3.html * igt@gem_pwrite@basic-exhaustion: - shard-snb: NOTRUN -> [WARN][28] ([i915#2658]) [28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-snb2/igt@gem_pwrite@basic-exhaustion.html * igt@gem_pxp@reject-modify-context-protection-off-1: - shard-iclb: NOTRUN -> [SKIP][29] ([i915#4270]) +1 similar issue [29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-iclb5/igt@gem_pxp@reject-modify-context-protection-off-1.html * igt@gem_pxp@reject-modify-context-protection-on: - shard-tglb: NOTRUN -> [SKIP][30] ([i915#4270]) +2 similar issues [30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-tglb7/igt@gem_pxp@reject-modify-context-protection-on.html * igt@gem_render_copy@yf-tiled-to-vebox-linear: - shard-iclb: NOTRUN -> [SKIP][31] ([i915#768]) +1 similar issue [31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-iclb8/igt@gem_render_copy@yf-tiled-to-vebox-linear.html * igt@gem_userptr_blits@create-destroy-unsync: - shard-iclb: NOTRUN -> [SKIP][32] ([i915#3297]) [32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-iclb6/igt@gem_userptr_blits@create-destroy-unsync.html * igt@gen9_exec_parse@batch-invalid-length: - shard-snb: NOTRUN -> [SKIP][33] ([fdo#109271]) +410 similar issues [33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-snb6/igt@gen9_exec_parse@batch-invalid-length.html * igt@gen9_exec_parse@bb-start-far: - shard-tglb: NOTRUN -> [SKIP][34] ([i915#2856]) [34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-tglb2/igt@gen9_exec_parse@bb-start-far.html * igt@gen9_exec_parse@bb-start-out: - shard-iclb: NOTRUN -> [SKIP][35] ([i915#2856]) [35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-iclb7/igt@gen9_exec_parse@bb-start-out.html * igt@i915_pm_rpm@modeset-non-lpsp-stress: - shard-iclb: NOTRUN -> [SKIP][36] ([fdo#110892]) [36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-iclb3/igt@i915_pm_rpm@modeset-non-lpsp-stress.html * igt@kms_atomic_transition@plane-all-modeset-transition: - shard-iclb: NOTRUN -> [SKIP][37] ([i915#1769]) [37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-iclb1/igt@kms_atomic_transition@plane-all-modeset-transition.html * igt@kms_atomic_transition@plane-all-modeset-transition-fencing: - shard-tglb: NOTRUN -> [SKIP][38] ([i915#1769]) [38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-tglb5/igt@kms_atomic_transition@plane-all-modeset-transition-fencing.html * igt@kms_big_fb@linear-64bpp-rotate-270: - shard-tglb: NOTRUN -> [SKIP][39] ([fdo#111614]) [39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-tglb6/igt@kms_big_fb@linear-64bpp-rotate-270.html * igt@kms_big_fb@y-tiled-64bpp-rotate-90: - shard-iclb: NOTRUN -> [SKIP][40] ([fdo#110725] / [fdo#111614]) [40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-iclb5/igt@kms_big_fb@y-tiled-64bpp-rotate-90.html * igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-180-hflip: - shard-glk: NOTRUN -> [SKIP][41] ([fdo#109271] / [i915#3777]) [41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-glk6/igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-180-hflip.html - shard-apl: NOTRUN -> [SKIP][42] ([fdo#109271] / [i915#3777]) +2 similar issues [42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-apl7/igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-180-hflip.html - shard-kbl: NOTRUN -> [SKIP][43] ([fdo#109271] / [i915#3777]) [43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-kbl2/igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-180-hflip.html * igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-180-async-flip: - shard-iclb: NOTRUN -> [SKIP][44] ([fdo#110723]) +1 similar issue [44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-iclb3/igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-180-async-flip.html * igt@kms_ccs@pipe-a-ccs-on-another-bo-y_tiled_gen12_mc_ccs: - shard-apl: NOTRUN -> [SKIP][45] ([fdo#109271] / [i915#3886]) +18 similar issues [45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-apl1/igt@kms_ccs@pipe-a-ccs-on-another-bo-y_tiled_gen12_mc_ccs.html - shard-kbl: NOTRUN -> [SKIP][46] ([fdo#109271] / [i915#3886]) +9 similar issues [46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-kbl2/igt@kms_ccs@pipe-a-ccs-on-another-bo-y_tiled_gen12_mc_ccs.html * igt@kms_ccs@pipe-b-crc-primary-rotation-180-y_tiled_gen12_rc_ccs_cc: - shard-glk: NOTRUN -> [SKIP][47] ([fdo#109271] / [i915#3886]) +3 similar issues [47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-glk9/igt@kms_ccs@pipe-b-crc-primary-rotation-180-y_tiled_gen12_rc_ccs_cc.html * igt@kms_ccs@pipe-b-missing-ccs-buffer-y_tiled_gen12_mc_ccs: - shard-tglb: NOTRUN -> [SKIP][48] ([i915#3689] / [i915#3886]) +5 similar issues [48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-tglb5/igt@kms_ccs@pipe-b-missing-ccs-buffer-y_tiled_gen12_mc_ccs.html * igt@kms_ccs@pipe-c-crc-primary-rotation-180-y_tiled_gen12_mc_ccs: - shard-iclb: NOTRUN -> [SKIP][49] ([fdo#109278] / [i915#3886]) +9 similar issues [49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-iclb4/igt@kms_ccs@pipe-c-crc-primary-rotation-180-y_tiled_gen12_mc_ccs.html * igt@kms_ccs@pipe-d-crc-primary-rotation-180-y_tiled_gen12_mc_ccs: - shard-glk: NOTRUN -> [SKIP][50] ([fdo#109271]) +49 similar issues [50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-glk6/igt@kms_ccs@pipe-d-crc-primary-rotation-180-y_tiled_gen12_mc_ccs.html * igt@kms_ccs@pipe-d-crc-sprite-planes-basic-y_tiled_ccs: - shard-tglb: NOTRUN -> [SKIP][51] ([i915#3689]) +5 similar issues [51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-tglb6/igt@kms_ccs@pipe-d-crc-sprite-planes-basic-y_tiled_ccs.html * igt@kms_ccs@pipe-d-random-ccs-data-yf_tiled_ccs: - shard-iclb: NOTRUN -> [SKIP][52] ([fdo#109278]) +16 similar issues [52]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-iclb1/igt@kms_ccs@pipe-d-random-ccs-data-yf_tiled_ccs.html * igt@kms_chamelium@dp-hpd-for-each-pipe: - shard-kbl: NOTRUN -> [SKIP][53] ([fdo#109271] / [fdo#111827]) +12 similar issues [53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-kbl3/igt@kms_chamelium@dp-hpd-for-each-pipe.html * igt@kms_chamelium@vga-frame-dump: - shard-tglb: NOTRUN -> [SKIP][54] ([fdo#109284] / [fdo#111827]) +2 similar issues [54]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-tglb6/igt@kms_chamelium@vga-frame-dump.html * igt@kms_chamelium@vga-hpd-after-suspend: - shard-glk: NOTRUN -> [SKIP][55] ([fdo#109271] / [fdo#111827]) +4 similar issues [55]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-glk1/igt@kms_chamelium@vga-hpd-after-suspend.html * igt@kms_color_chamelium@pipe-a-ctm-0-25: - shard-snb: NOTRUN -> [SKIP][56] ([fdo#109271] / [fdo#111827]) +23 similar issues [56]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-snb2/igt@kms_color_chamelium@pipe-a-ctm-0-25.html * igt@kms_color_chamelium@pipe-a-ctm-limited-range: - shard-apl: NOTRUN -> [SKIP][57] ([fdo#109271] / [fdo#111827]) +23 similar issues [57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-apl3/igt@kms_color_chamelium@pipe-a-ctm-limited-range.html * igt@kms_color_chamelium@pipe-b-ctm-red-to-blue: - shard-iclb: NOTRUN -> [SKIP][58] ([fdo#109284] / [fdo#111827]) +5 similar issues [58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-iclb5/igt@kms_color_chamelium@pipe-b-ctm-red-to-blue.html * igt@kms_color_chamelium@pipe-d-ctm-negative: - shard-iclb: NOTRUN -> [SKIP][59] ([fdo#109278] / [fdo#109284] / [fdo#111827]) +2 similar issues [59]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-iclb5/igt@kms_color_chamelium@pipe-d-ctm-negative.html * igt@kms_content_protection@lic: - shard-apl: NOTRUN -> [TIMEOUT][60] ([i915#1319]) +1 similar issue [60]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-apl6/igt@kms_content_protection@lic.html * igt@kms_cursor_crc@pipe-b-cursor-512x170-random: - shard-tglb: NOTRUN -> [SKIP][61] ([fdo#109279] / [i915#3359]) +2 similar issues [61]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-tglb2/igt@kms_cursor_crc@pipe-b-cursor-512x170-random.html * igt@kms_cursor_crc@pipe-b-cursor-512x512-rapid-movement: - shard-iclb: NOTRUN -> [SKIP][62] ([fdo#109278] / [fdo#109279]) +2 similar issues [62]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-iclb3/igt@kms_cursor_crc@pipe-b-cursor-512x512-rapid-movement.html * igt@kms_cursor_crc@pipe-b-cursor-suspend: - shard-apl: NOTRUN -> [DMESG-WARN][63] ([i915#180]) +1 similar issue [63]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-apl2/igt@kms_cursor_crc@pipe-b-cursor-suspend.html * igt@kms_cursor_crc@pipe-c-cursor-32x10-offscreen: - shard-tglb: NOTRUN -> [SKIP][64] ([i915#3359]) +1 similar issue [64]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-tglb6/igt@kms_cursor_crc@pipe-c-cursor-32x10-offscreen.html * igt@kms_cursor_legacy@cursora-vs-flipb-atomic: - shard-tglb: NOTRUN -> [SKIP][65] ([fdo#111825]) +11 similar issues [65]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-tglb7/igt@kms_cursor_legacy@cursora-vs-flipb-atomic.html - shard-iclb: NOTRUN -> [SKIP][66] ([fdo#109274] / [fdo#109278]) +2 similar issues [66]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-iclb4/igt@kms_cursor_legacy@cursora-vs-flipb-atomic.html * igt@kms_cursor_legacy@pipe-d-torture-bo: - shard-apl: NOTRUN -> [SKIP][67] ([fdo#109271] / [i915#533]) [67]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-apl3/igt@kms_cursor_legacy@pipe-d-torture-bo.html * igt@kms_flip@2x-flip-vs-blocking-wf-vblank@ac-hdmi-a1-hdmi-a2: - shard-glk: [PASS][68] -> [FAIL][69] ([i915#2122]) [68]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10735/shard-glk2/igt@kms_flip@2x-flip-vs-blocking-wf-vblank@ac-hdmi-a1-hdmi-a2.html [69]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-glk6/igt@kms_flip@2x-flip-vs-blocking-wf-vblank@ac-hdmi-a1-hdmi-a2.html * igt@kms_flip@2x-flip-vs-expired-vblank: - shard-iclb: NOTRUN -> [SKIP][70] ([fdo#109274]) +2 similar issues [70]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-iclb7/igt@kms_flip@2x-flip-vs-expired-vblank.html * igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-mmap-cpu: - shard-iclb: NOTRUN -> [SKIP][71] ([fdo#109280]) +20 similar issues [71]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-iclb7/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-mmap-cpu.html * igt@kms_frontbuffer_tracking@psr-suspend: - shard-tglb: [PASS][72] -> [INCOMPLETE][73] ([i915#2411] / [i915#456]) [72]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10735/shard-tglb5/igt@kms_frontbuffer_tracking@psr-suspend.html [73]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-tglb7/igt@kms_frontbuffer_tracking@psr-suspend.html * igt@kms_hdr@static-toggle-dpms: - shard-iclb: NOTRUN -> [SKIP][74] ([i915#1187]) [74]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-iclb5/igt@kms_hdr@static-toggle-dpms.html * igt@kms_pipe_b_c_ivb@from-pipe-c-to-b-with-3-lanes: - shard-iclb: NOTRUN -> [SKIP][75] ([fdo#109289]) +3 similar issues [75]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-iclb8/igt@kms_pipe_b_c_ivb@from-pipe-c-to-b-with-3-lanes.html * igt@kms_pipe_crc_basic@read-crc-pipe-d-frame-sequence: - shard-glk: NOTRUN -> [SKIP][76] ([fdo#109271] / [i915#533]) [76]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-glk2/igt@kms_pipe_crc_basic@read-crc-pipe-d-frame-sequence.html * igt@kms_plane_alpha_blend@pipe-a-alpha-opaque-fb: - shard-apl: NOTRUN -> [FAIL][77] ([fdo#108145] / [i915#265]) +7 similar issues [77]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-apl7/igt@kms_plane_alpha_blend@pipe-a-alpha-opaque-fb.html * igt@kms_plane_alpha_blend@pipe-a-alpha-transparent-fb: - shard-apl: NOTRUN -> [FAIL][78] ([i915#265]) [78]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-apl8/igt@kms_plane_alpha_blend@pipe-a-alpha-transparent-fb.html * igt@kms_plane_alpha_blend@pipe-c-alpha-basic: - shard-kbl: NOTRUN -> [FAIL][79] ([fdo#108145] / [i915#265]) +2 similar issues [79]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-kbl3/igt@kms_plane_alpha_blend@pipe-c-alpha-basic.html * igt@kms_plane_lowres@pipe-a-tiling-none: - shard-iclb: NOTRUN -> [SKIP][80] ([i915#3536]) [80]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-iclb6/igt@kms_plane_lowres@pipe-a-tiling-none.html * igt@kms_plane_scaling@scaler-with-clipping-clamping@pipe-c-scaler-with-clipping-clamping: - shard-apl: NOTRUN -> [SKIP][81] ([fdo#109271] / [i915#2733]) [81]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-apl2/igt@kms_plane_scaling@scaler-with-clipping-clamping@pipe-c-scaler-with-clipping-clamping.html - shard-kbl: NOTRUN -> [SKIP][82] ([fdo#109271] / [i915#2733]) [82]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-kbl2/igt@kms_plane_scaling@scaler-with-clipping-clamping@pipe-c-scaler-with-clipping-clamping.html * igt@kms_psr2_sf@overlay-plane-update-sf-dmg-area-2: - shard-kbl: NOTRUN -> [SKIP][83] ([fdo#109271] / [i915#658]) +1 similar issue [83]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-kbl1/igt@kms_psr2_sf@overlay-plane-update-sf-dmg-area-2.html * igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-2: - shard-iclb: NOTRUN -> [SKIP][84] ([i915#2920]) [84]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-iclb2/igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-2.html - shard-glk: NOTRUN -> [SKIP][85] ([fdo#109271] / [i915#658]) [85]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-glk7/igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-2.html - shard-tglb: NOTRUN -> [SKIP][86] ([i915#2920]) [86]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-tglb2/igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-2.html * igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-5: - shard-apl: NOTRUN -> [SKIP][87] ([fdo#109271] / [i915#658]) +4 similar issues [87]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-apl6/igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-5.html * igt@kms_psr2_su@page_flip: - shard-tglb: NOTRUN -> [SKIP][88] ([i915#1911]) [88]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-tglb5/igt@kms_psr2_su@page_flip.html * igt@kms_psr@psr2_cursor_mmap_cpu: - shard-iclb: NOTRUN -> [SKIP][89] ([fdo#109441]) +2 similar issues [89]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-iclb7/igt@kms_psr@psr2_cursor_mmap_cpu.html * igt@kms_psr@psr2_sprite_mmap_cpu: - shard-tglb: NOTRUN -> [FAIL][90] ([i915#132] / [i915#3467]) [90]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-tglb3/igt@kms_psr@psr2_sprite_mmap_cpu.html * igt@kms_psr@psr2_sprite_render: - shard-iclb: [PASS][91] -> [SKIP][92] ([fdo#109441]) [91]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10735/shard-iclb2/igt@kms_psr@psr2_sprite_render.html [92]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-iclb3/igt@kms_psr@psr2_sprite_render.html * igt@kms_psr@suspend: - shard-tglb: [PASS][93] -> [INCOMPLETE][94] ([i915#456]) +1 similar issue [93]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10735/shard-tglb2/igt@kms_psr@suspend.html [94]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-tglb7/igt@kms_psr@suspend.html * igt@kms_rotation_crc@primary-yf-tiled-reflect-x-90: - shard-tglb: NOTRUN -> [SKIP][95] ([fdo#111615]) +2 similar issues [95]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-tglb8/igt@kms_rotation_crc@primary-yf-tiled-reflect-x-90.html * igt@kms_vblank@pipe-d-ts-continuation-idle: - shard-apl: NOTRUN -> [SKIP][96] ([fdo#109271]) +338 similar issues [96]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-apl1/igt@kms_vblank@pipe-d-ts-continuation-idle.html * igt@kms_writeback@writeback-fb-id: - shard-apl: NOTRUN -> [SKIP][97] ([fdo#109271] / [i915#2437]) +1 similar issue [97]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-apl1/igt@kms_writeback@writeback-fb-id.html * igt@kms_writeback@writeback-invalid-parameters: - shard-tglb: NOTRUN -> [SKIP][98] ([i915#2437]) [98]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-tglb3/igt@kms_writeback@writeback-invalid-parameters.html - shard-kbl: NOTRUN -> [SKIP][99] ([fdo#109271] / [i915#2437]) [99]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-kbl2/igt@kms_writeback@writeback-invalid-parameters.html - shard-glk: NOTRUN -> [SKIP][100] ([fdo#109271] / [i915#2437]) [100]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-glk6/igt@kms_writeback@writeback-invalid-parameters.html - shard-iclb: NOTRUN -> [SKIP][101] ([i915#2437]) [101]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-iclb3/igt@kms_writeback@writeback-invalid-parameters.html * igt@nouveau_crc@pipe-b-source-rg: - shard-iclb: NOTRUN -> [SKIP][102] ([i915#2530]) +1 similar issue [102]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-iclb4/igt@nouveau_crc@pipe-b-source-rg.html - shard-tglb: NOTRUN -> [SKIP][103] ([i915#2530]) +1 similar issue [103]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-tglb7/igt@nouveau_crc@pipe-b-source-rg.html * igt@perf_pmu@event-wait@rcs0: - shard-iclb: NOTRUN -> [SKIP][104] ([fdo#112283]) [104]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-iclb1/igt@perf_pmu@event-wait@rcs0.html * igt@prime_nv_api@nv_i915_reimport_twice_check_flink_name: - shard-iclb: NOTRUN -> [SKIP][105] ([fdo#109291]) +2 similar issues [105]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-iclb7/igt@prime_nv_api@nv_i915_reimport_twice_check_flink_name.html * igt@prime_nv_pcopy@test2: - shard-kbl: NOTRUN -> [SKIP][106] ([fdo#109271]) +165 similar issues [106]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-kbl6/igt@prime_nv_pcopy@test2.html * igt@prime_nv_test@i915_import_gtt_mmap: - shard-tglb: NOTRUN -> [SKIP][107] ([fdo#109291]) +2 similar issues [107]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-tglb7/igt@prime_nv_test@i915_import_gtt_mmap.html * igt@prime_vgem@coherency-gtt: - shard-tglb: NOTRUN -> [SKIP][108] ([fdo#111656]) [108]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-tglb3/igt@prime_vgem@coherency-gtt.html * igt@sysfs_clients@busy: - shard-tglb: NOTRUN -> [SKIP][109] ([i915#2994]) [109]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-tglb7/igt@sysfs_clients@busy.html - shard-iclb: NOTRUN -> [SKIP][110] ([i915#2994]) +1 similar issue [110]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-iclb1/igt@sysfs_clients@busy.html - shard-glk: NOTRUN -> [SKIP][111] ([fdo#109271] / [i915#2994]) [111]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-glk8/igt@sysfs_clients@busy.html * igt@sysfs_clients@create: - shard-kbl: NOTRUN -> [SKIP][112] ([fdo#109271] / [i915#2994]) +2 similar issues [112]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-kbl7/igt@sysfs_clients@create.html * igt@sysfs_clients@fair-7: - shard-apl: NOTRUN -> [SKIP][113] ([fdo#109271] / [i915#2994]) +6 similar issues [113]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-apl3/igt@sysfs_clients@fair-7.html #### Possible fixes #### * igt@gem_exec_fair@basic-deadline: - shard-glk: [FAIL][114] ([i915#2846]) -> [PASS][115] [114]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10735/shard-glk4/igt@gem_exec_fair@basic-deadline.html [115]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-glk9/igt@gem_exec_fair@basic-deadline.html * igt@gem_exec_fair@basic-none-share@rcs0: - shard-tglb: [FAIL][116] ([i915#2842]) -> [PASS][117] [116]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10735/shard-tglb6/igt@gem_exec_fair@basic-none-share@rcs0.html [117]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-tglb5/igt@gem_exec_fair@basic-none-share@rcs0.html * igt@gem_exec_fair@basic-none@rcs0: - shard-kbl: [FAIL][118] ([i915#2842]) -> [PASS][119] [118]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10735/shard-kbl1/igt@gem_exec_fair@basic-none@rcs0.html [119]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-kbl7/igt@gem_exec_fair@basic-none@rcs0.html * igt@gem_exec_fair@basic-throttle@rcs0: - shard-glk: [FAIL][120] ([i915#2842]) -> [PASS][121] [120]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10735/shard-glk6/igt@gem_exec_fair@basic-throttle@rcs0.html [121]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-glk7/igt@gem_exec_fair@basic-throttle@rcs0.html * igt@kms_big_fb@linear-32bpp-rotate-0: - shard-glk: [DMESG-WARN][122] ([i915#118]) -> [PASS][123] [122]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10735/shard-glk6/igt@kms_big_fb@linear-32bpp-rotate-0.html [123]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-glk2/igt@kms_big_fb@linear-32bpp-rotate-0.html * igt@kms_cursor_crc@pipe-a-cursor-suspend: - shard-kbl: [DMESG-WARN][124] ([i915#180]) -> [PASS][125] +3 similar issues [124]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10735/shard-kbl4/igt@kms_cursor_crc@pipe-a-cursor-suspend.html [125]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-kbl1/igt@kms_cursor_crc@pipe-a-cursor-suspend.html * igt@kms_flip@flip-vs-absolute-wf_vblank@a-hdmi-a1: - shard-glk: [FAIL][126] ([i915#2122]) -> [PASS][127] [126]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10735/shard-glk1/igt@kms_flip@flip-vs-absolute-wf_vblank@a-hdmi-a1.html [127]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-glk2/igt@kms_flip@flip-vs-absolute-wf_vblank@a-hdmi-a1.html * igt@kms_flip@flip-vs-suspend-interruptible@a-edp1: - shard-tglb: [INCOMPLETE][128] ([i915#2411] / [i915#456]) -> [PASS][129] [128]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10735/shard-tglb7/igt@kms_flip@flip-vs-suspend-interruptible@a-edp1.html [129]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/shard-tglb5/igt@kms_flip@flip-vs-suspend-interruptible@a-edp1.html * igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytile: - shard-iclb: [SKIP][130] ([i915#3701]) -> [PASS][131] [130]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10735/shard-iclb2/igt@kms_flip_scaled_crc@ == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6322/index.html [-- Attachment #2: Type: text/html, Size: 33950 bytes --] ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [igt-dev] [PATCH v2 0/2] tests/fbdev: Additional tests for resolution and panning 2021-10-14 13:45 [igt-dev] [PATCH v2 0/2] tests/fbdev: Additional tests for resolution and panning Thomas Zimmermann ` (3 preceding siblings ...) 2021-10-14 22:02 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork @ 2021-10-20 14:08 ` Thomas Zimmermann 4 siblings, 0 replies; 8+ messages in thread From: Thomas Zimmermann @ 2021-10-20 14:08 UTC (permalink / raw) To: igt-dev, ville.syrjala [-- Attachment #1.1: Type: text/plain, Size: 1484 bytes --] Ping! If there are no further comments, could this patchset please be added to the igt tests? Best regards Thomas Am 14.10.21 um 15:45 schrieb Thomas Zimmermann: > Add addtional tests for resolution and panning operations on fbdev > devices. Succeed on successful operations. Fail on invalid operations > or state. > > DRM's simpledrm driver exposed a bug in DRM's fbdev overallocation code, > [1] which is required for fbdev page flipping. The new test cases intent > to test panning and page flipping, and detect such issues early. > > Tested with the current simpledrm and a hacked version that supports fbdev > overallocation. This will also help to implement the panning functionality > for real in simpledrm and other drivers. > > v2: > * test horizontal resolution against line length (Ville) > * respect FB_VMODE_YWRAP (Ville) > * respect {x,y}panstep (Ville) > > [1] https://lore.kernel.org/dri-devel/20211005070355.7680-1-tzimmermann@suse.de/ > > Thomas Zimmermann (2): > tests/fbdev: Test for validity of video mode settings > tests/fbdev: Add tests for display panning > > tests/fbdev.c | 184 +++++++++++++++++++++++++++++++++++++++++++++++--- > 1 file changed, 176 insertions(+), 8 deletions(-) > > -- > 2.33.0 > -- Thomas Zimmermann Graphics Driver Developer SUSE Software Solutions Germany GmbH Maxfeldstr. 5, 90409 Nürnberg, Germany (HRB 36809, AG Nürnberg) Geschäftsführer: Felix Imendörffer [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 840 bytes --] ^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2021-10-22 7:55 UTC | newest] Thread overview: 8+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2021-10-14 13:45 [igt-dev] [PATCH v2 0/2] tests/fbdev: Additional tests for resolution and panning Thomas Zimmermann 2021-10-14 13:45 ` [igt-dev] [PATCH v2 1/2] tests/fbdev: Test for validity of video mode settings Thomas Zimmermann 2021-10-14 13:45 ` [igt-dev] [PATCH v2 2/2] tests/fbdev: Add tests for display panning Thomas Zimmermann 2021-10-20 14:17 ` Ville Syrjälä 2021-10-22 7:55 ` Thomas Zimmermann 2021-10-14 18:21 ` [igt-dev] ✓ Fi.CI.BAT: success for tests/fbdev: Additional tests for resolution and panning (rev2) Patchwork 2021-10-14 22:02 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork 2021-10-20 14:08 ` [igt-dev] [PATCH v2 0/2] tests/fbdev: Additional tests for resolution and panning Thomas Zimmermann
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox