[igt-dev] [PATCH v2 1/2] tests/kms_rmfb: Create dynamic subtests
Thasleem, Mohammed
mohammed.thasleem at intel.com
Tue Jun 28 08:20:32 UTC 2022
Hi Kamil,
Thanks for reviews.
Addressed comments at v4.
-----Original Message-----
From: Kamil Konieczny <kamil.konieczny at linux.intel.com>
Sent: Tuesday, June 28, 2022 12:16 PM
To: igt-dev at lists.freedesktop.org
Cc: Thasleem, Mohammed <mohammed.thasleem at intel.com>
Subject: Re: [igt-dev] [PATCH v2 1/2] tests/kms_rmfb: Create dynamic subtests
Hi Mohammed,
On 2022-06-27 at 23:30:43 +0530, Mohammed Thasleem wrote:
> Modified kms_rmfb to include dynamic test cases.
>
> v2: addressed indentation, test description moved into struct
> and added global description to test.
> v3: minor changes.
>
> Signed-off-by: Mohammed Thasleem <mohammed.thasleem at intel.com>
> ---
> tests/kms_rmfb.c | 37 +++++++++++++++++++++++++++----------
> 1 file changed, 27 insertions(+), 10 deletions(-)
>
> diff --git a/tests/kms_rmfb.c b/tests/kms_rmfb.c index
> fcd5cdad..89f7c80c 100644
> --- a/tests/kms_rmfb.c
> +++ b/tests/kms_rmfb.c
> @@ -36,6 +36,9 @@
> #define DRM_CAP_CURSOR_HEIGHT 0x9
> #endif
>
> +IGT_TEST_DESCRIPTION("This tests rmfb and close-fd behavior. In these cases"
> + "the framebuffers should be removed from the crtc.");
> +
> struct rmfb_data {
> int drm_fd;
> igt_display_t display;
> @@ -151,13 +154,28 @@ run_rmfb_test(struct rmfb_data *data, bool reopen)
> igt_output_t *output;
> enum pipe pipe;
>
> - for_each_pipe_with_single_output(&data->display, pipe, output)
> - test_rmfb(data, output, pipe, reopen);
> + for_each_pipe_with_single_output(&data->display, pipe, output) {
> + igt_dynamic_f("%s-pipe-%s", igt_output_name(output),
> + kmstest_pipe_name(pipe))
> + test_rmfb(data, output, pipe, reopen);
> + }
> }
>
> igt_main
> {
> + const struct {
> + bool flags;
> + const char *name;
> + const char *description;
> + } tests[] = {
> + { false, "rmfb-ioctl", "RMFB is supposed to free the framebuffers from any and all "
> + "planes so test this and make sure it works."},
> + { true, "close-fd", "RMFB is supposed to free the framebuffers from any and all "
> + "planes so test this and make sure it works with fd close "
> + "and reopen."},
> + };
> struct rmfb_data data = {};
> + int i;
>
> igt_fixture {
> data.drm_fd = drm_open_driver_master(DRIVER_ANY);
> @@ -168,15 +186,14 @@ igt_main
> igt_display_require_output(&data.display);
> }
>
> - igt_describe("RMFB is supposed to free the framebuffers from any and all "
> - "planes so test this and make sure it works.");
> - igt_subtest_f("rmfb-ioctl")
> - run_rmfb_test(&data, false);
> + for (i = 0; i < ARRAY_SIZE(tests); i++) {
> +
Remove this empy line. With that fixed you can add my r-b tag.
Please use Kamil Konieczny <kamil.konieczny at linux.intel.com> in r-b tag, also when sending please put mailing list in To and all other addresses in Cc field.
Regards,
Kamil
> + igt_describe(tests[i].description);
> + igt_subtest_with_dynamic(tests[i].name) {
> + run_rmfb_test(&data, tests[i].flags);
>
> - igt_describe("RMFB is supposed to free the framebuffers from any and all planes "
> - "so test this and make sure it works with fd close and reopen.");
> - igt_subtest_f("close-fd")
> - run_rmfb_test(&data, true);
> + }
> + }
>
> igt_fixture {
> igt_display_fini(&data.display);
> --
> 2.25.1
>
More information about the igt-dev
mailing list