[igt-dev] [PATCH i-g-t v2 3/4] test/kms_frontbuffer_tracking: Fix multidraw test
Gwan-gyeong Mun
gwan-gyeong.mun at intel.com
Thu Sep 2 19:42:25 UTC 2021
Looks good to me.
Reviewed-by: Gwan-gyeong Mun <gwan-gyeong.mun at intel.com>
On 8/19/21 1:24 AM, José Roberto de Souza wrote:
> Multidraw tests was not notifying driver about the area it uses
> blitter to pain the primary background color between drawing methods.
> Without this notification driver will not update pipe and the CRC will
> not update causing the tests fail due a CRC mismatch.
>
> All the other callers of fill_fb_region() are safe, doing a page flip
> or a atomic commit afterwards.
>
> Cc: Gwan-gyeong Mun <gwan-gyeong.mun at intel.com>
> Signed-off-by: José Roberto de Souza <jose.souza at intel.com>
> ---
> tests/kms_frontbuffer_tracking.c | 12 ++++++++++++
> 1 file changed, 12 insertions(+)
>
> diff --git a/tests/kms_frontbuffer_tracking.c b/tests/kms_frontbuffer_tracking.c
> index 496718e2a..574048537 100644
> --- a/tests/kms_frontbuffer_tracking.c
> +++ b/tests/kms_frontbuffer_tracking.c
> @@ -1123,6 +1123,17 @@ static void fill_fb_region(struct fb_region *region, enum color ecolor)
> color);
> }
>
> +static void _fb_dirty_ioctl(struct fb_region *region)
> +{
> + struct rect rect;
> +
> + rect.x = region->x;
> + rect.y = region->y;
> + rect.w = region->w;
> + rect.h = region->h;
> + fb_dirty_ioctl(region, &rect);
> +}
> +
> static void unset_all_crtcs(void)
> {
> igt_display_reset(&drm.display);
> @@ -2122,6 +2133,7 @@ static void multidraw_subtest(const struct test_mode *t)
> }
>
> fill_fb_region(target, COLOR_PRIM_BG);
> + _fb_dirty_ioctl(target);
>
> update_wanted_crc(t, &blue_crcs[t->format].crc);
> do_assertions(ASSERT_NO_ACTION_CHANGE);
>
More information about the igt-dev
mailing list