[igt-dev] [PATCH i-g-t] tests/kms_concurrent: Allow the test to proceed with fewer planes
Daniel Vetter
daniel at ffwll.ch
Wed Apr 3 08:35:49 UTC 2019
On Tue, Apr 02, 2019 at 04:08:37PM +0300, Ville Syrjala wrote:
> From: Ville Syrjälä <ville.syrjala at linux.intel.com>
>
> We may not be able to enable all the planes simultaneously. In that
> case just keep going with fewer planes. The test already requires
> atomic so let's use TEST_ONLY unconditionally.
>
> Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
> ---
> tests/kms_concurrent.c | 12 ++++++++++++
> 1 file changed, 12 insertions(+)
>
> diff --git a/tests/kms_concurrent.c b/tests/kms_concurrent.c
> index 117016dc44e8..d82ca0404839 100644
> --- a/tests/kms_concurrent.c
> +++ b/tests/kms_concurrent.c
> @@ -184,6 +184,7 @@ prepare_planes(data_t *data, enum pipe pipe, int max_planes,
> y[primary->index] = 0;
> for (i = 0; i < max_planes; i++) {
> igt_plane_t *plane = igt_output_get_plane(output, i);
> + int ret;
>
> if (plane->type == DRM_PLANE_TYPE_PRIMARY)
> continue;
> @@ -206,7 +207,18 @@ prepare_planes(data_t *data, enum pipe pipe, int max_planes,
>
> igt_plane_set_position(data->plane[i], x[i], y[i]);
> igt_plane_set_fb(data->plane[i], &data->fb[i]);
> +
> + ret = igt_display_try_commit_atomic(&data->display, DRM_MODE_ATOMIC_TEST_ONLY, NULL);
> + if (ret) {
> + igt_plane_set_fb(data->plane[i], NULL);
> + igt_remove_fb(data->drm_fd, &data->fb[i]);
> + data->plane[i] = NULL;
> + break;
> + }
> }
> + max_planes = i;
Imo we need to shuffle planes, to make sure we don't just test the first
few all the times. Shouldn't be too hard to insert an igt_permute_array
to shuffle stuff around. Without that we leave a pretty big test hole
behind.
Same for the other testcases where we actually want to validate planes
working correctly.
-Daniel
> +
> + igt_assert_lt(0, max_planes);
>
> /* primary plane */
> data->plane[primary->index] = primary;
> --
> 2.19.2
>
> _______________________________________________
> igt-dev mailing list
> igt-dev at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/igt-dev
--
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
More information about the igt-dev
mailing list